作者微信 bishe2022

代码功能演示视频在页面下方,请先观看;如需定制开发,联系页面右侧客服
android app微信分享
包含内容: 源码,全套工具
作者QQ549710689
详情描述

如遇视频不清晰,请最大化观看演示

官网:http://www.ckplayer.com,版本号:X

以下仅列出部分功能,全部功能请至官网 《手册》查看

单独监听功能:


播放状态:
跳转状态:无
缓冲:100
当前音量:0.8
是否全屏:否
控制栏:显示
还未结束
当前播放时间(秒):0
前置广告状态:
鼠标位置
切换清晰度:
点击监听:
监听截图功能

Custom Tab

本实例项目运行条件:

开发环境: 【Android Studio】

1. 到微信开放平台注册帐号并且创建移动应用

   https://open.weixin.qq.com/cgi-bin/frame?t=home/app_tmpl&lang=zh_CN

blob.png


2. 获得移动应用的权限【分享到朋友圈】【发送给朋友】

   这二个权限只要移动应用审核通过,默认有这二个权限(注意: 如果需要开通支付权限,需要付费)

blob.png


3. 配置应用签名, 这个签名通过 android打包文件jks生成或者keystore生成

   签名文件生成方法: 3.1  keytool -list -v -keystore jks文件(或者keystore文件)

   3.2 获取指纹证书md5值, 将md5中的冒号去掉, 大写换成小写   (详情)

   总结: 微信开放平台Android应用签名的本质便是我们签名文件jks(或者keystore)的MD5值

blob.png


4. 应用程序开发完成后,debug模式是无法分享的,应用程序必须由相应的jks签名之后生成的apk包才能进行分享(微信会校验应用签名)


2 流程讲解

2.1 应用程序启动后,界面如下(图A), 点击底部【点击分享】后,弹出图B

blob.png          blob.png

             图A                                        图B


2.2 点击弹出框的第一图标,可以将内容分享给朋友(图C)

    点击弹出框的第二图新, 可以将内容分享到朋友圈(图D)

blob.png          blob.png

              图C                                      图D


3. 代码讲解

3.1 主应用程序点击【分享按钮】

@OnClick(R.id.pay)
public void pay(){
    SharePopWin pop = new SharePopWin(MainActivity.this);
    pop.showAtLocation(getWindow().getDecorView().getRootView() ,
            Gravity.BOTTOM| Gravity.CENTER_HORIZONTAL, 0, 0);
}


3.2 SharePopWin分享代码

    SendMessageToWX.Req.WXSceneSession:   分享给朋友

    SendMessageToWX.Req.WXSceneTimeline : 分享到朋友圈

private void wechatShare(int flag){
    WXWebpageObject webpage = new WXWebpageObject();
    webpage.webpageUrl = "http://www.baidu.com";
    WXMediaMessage msg = new WXMediaMessage(webpage);
    msg.title = "优惠无限:";
    msg.description = "注册优鲜派会员即送30元无门槛红包,下单后,您的好友【葛盼江】再得20元红包";
    //这里替换一张自己工程里的图片资源
    Bitmap thumb = BitmapFactory.decodeResource(mContext.getResources(), R.drawable.share_logo);
    msg.setThumbImage(thumb);

    SendMessageToWX.Req req = new SendMessageToWX.Req();
    req.transaction = String.valueOf(System.currentTimeMillis());
    req.message = msg;
    req.scene = flag == 0 ? SendMessageToWX.Req.WXSceneSession: SendMessageToWX.Req.WXSceneTimeline;
    Constant.wxApi.sendReq(req);

}


3.3 在应用程序包名下新建包及相应java类, 名称必须如图中所示

    blob.png


   分享结果回调

@Override
public void onResp(BaseResp resp) {
    switch (resp.errCode) {
        case BaseResp.ErrCode.ERR_AUTH_DENIED:
        case BaseResp.ErrCode.ERR_USER_CANCEL:
            if (RETURN_MSG_TYPE_SHARE == resp.getType()) {
                showToast("分享失败");
            } else if(RETURN_MSG_TYPE_LOGIN == resp.getType()) {
                showToast("微信自动登录失败");
            }
            finish();
            break;
        case BaseResp.ErrCode.ERR_OK:
            switch (resp.getType()) {
                case RETURN_MSG_TYPE_LOGIN:
                    break;
                case RETURN_MSG_TYPE_SHARE:
                    showToast("微信分享成功");
                    finish();
                    break;
            }
            break;
    }
}

 

3.4 添加.wxapi.WXEntryActivity描述信息

<application
    android:allowBackup="true"
    android:icon="@drawable/desk"
    android:label="@string/app_name"
    android:theme="@style/AppTheme">
    <activity
        android:name=".activity.MainActivity"
        android:screenOrientation="portrait"
        android:label="@string/app_name">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
         </intent-filter>
    </activity>
    <activity
        android:name=".wxapi.WXEntryActivity"
        android:screenOrientation="portrait"
        android:exported="true"/>

</application>


3.5 微信jar包

blob.png

Home