当前位置:主页 > 移动开发 > Android代码 >

关于Android实现简单的微信朋友圈分享功能

时间:2020-12-18 01:15:35 | 栏目:Android代码 | 点击:

1.先下载微信分享的jar包放在lib目录下,并且添加依赖,

清单文件添加

<activity 
      android:name=".wxapi.WXEntryActivity" 
      android:exported="true">//产生回调 
    </activity> 

2.在工程下新建如图所示的包和Activity

Activity里面的内容主要是创建微信api并且注册返回回调值

private final String APP_ID= "wx108514397eea5f77"; 
  private IWXAPI api; 
  @Override 
  protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_wxentry); 
    api = WXAPIFactory.createWXAPI(this, APP_ID, false); 
    api.registerApp(APP_ID); 
    api.handleIntent(getIntent(), this); 
  } 
  @Override 
  public void onReq(BaseReq baseReq) { 
  } 
  @Override 
  public void onResp(BaseResp baseResp) { 
    switch (baseResp.errCode) { 
      case BaseResp.ErrCode.ERR_OK: 
        Toast.makeText(this, "分享成功", Toast.LENGTH_LONG).show(); 
        break; 
      case BaseResp.ErrCode.ERR_USER_CANCEL: 
        Toast.makeText(this, "分享取消", Toast.LENGTH_LONG).show(); 
        break; 
      case BaseResp.ErrCode.ERR_AUTH_DENIED: 
        Toast.makeText(this, "被拒绝", Toast.LENGTH_LONG).show(); 
        break; 
      default: 
        Toast.makeText(this, "未知错误", Toast.LENGTH_LONG).show(); 
        break; 
    } 
    finish(); 
  }

3.接着就是在要使用的地方调用

private void weiChat(int flag) { 
    if (!api.isWXAppInstalled()) { 
      return; 
    } 
    //创建一个WXWebPageObject对象,用于封装要发送的Url 
    WXWebpageObject webpage = new WXWebpageObject(); 
    webpage.webpageUrl = "http://www.baidu.com/"; 
    //创建一个WXMediaMessage对象 
    WXMediaMessage msg = new WXMediaMessage(webpage); 
    msg.title = "测试"; 
    msg.description = "ceshi "; 
    SendMessageToWX.Req req = new SendMessageToWX.Req(); 
    req.transaction = String.valueOf(System.currentTimeMillis());//transaction字段用于唯一标识一个请求,这个必须有,否则会出错 
    req.message = msg; 
    //表示发送给朋友圈 WXSceneTimeline 表示发送给朋友 WXSceneSession 
    req.scene = flag == 0 ? SendMessageToWX.Req.WXSceneSession : SendMessageToWX.Req.WXSceneTimeline; 
    api.sendReq(req); 
  } 

您可能感兴趣的文章:

相关文章