Android 分享微信好友 朋友圈

简介: 第三方应用,可以调用微信分享,把链接,文字,各种media,分享到微信好友或者微信朋友圈,步骤:   package com.edaixi.utils; import android.content.

第三方应用,可以调用微信分享,把链接,文字,各种media,分享到微信好友或者微信朋友圈,步骤:

 

package com.edaixi.utils;

import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.widget.Toast;
import com.edaixi.activity.R;
import com.tencent.mm.sdk.constants.ConstantsAPI;
import com.tencent.mm.sdk.modelbase.BaseReq;
import com.tencent.mm.sdk.modelbase.BaseResp;
import com.tencent.mm.sdk.modelmsg.SendAuth;
import com.tencent.mm.sdk.modelmsg.SendMessageToWX;
import com.tencent.mm.sdk.modelmsg.WXMediaMessage;
import com.tencent.mm.sdk.modelmsg.WXWebpageObject;
import com.tencent.mm.sdk.openapi.IWXAPI;
import com.tencent.mm.sdk.openapi.IWXAPIEventHandler;
import com.tencent.mm.sdk.openapi.WXAPIFactory;

public class WX_Share implements IWXAPIEventHandler{
    private IWXAPI api;
    private Context context;
    private int flag;//0 表示分享给微信好友哦,1表示分享到朋友圈

    public WX_Share(Context context,int flag) {
        super();
        this.context = context;
        this.flag = flag;
        registWX();
    }

    public void registWX() {
        api = WXAPIFactory.createWXAPI(context, Constants.APP_ID, true);
        api.registerApp(Constants.APP_ID);
    }

    public void share2WX() {  
        if (!api.isWXAppInstalled()) {  
            Toast.makeText(context, "您还未安装微信客户端", Toast.LENGTH_SHORT).show();  
            return;  
        }  
        WXWebpageObject webpage = new WXWebpageObject();  
        webpage.webpageUrl = "http://www.edaixi.com";  
        WXMediaMessage msg = new WXMediaMessage(webpage);  
      
        msg.title = "my test title...";  
        msg.description = context.getResources().getString(R.string.wx_share_content);  
        Bitmap thumb = BitmapFactory.decodeResource(context.getResources(), R.drawable.ic_launcher);  
        msg.setThumbImage(thumb);  
        
        SendMessageToWX.Req req = new SendMessageToWX.Req();  
        req.transaction = String.valueOf(System.currentTimeMillis());  
        req.message = msg;  
        req.scene = flag;  
        api.sendReq(req);  
    }

    @Override
    public void onReq(BaseReq arg0) {
        
    }

    @Override
    public void onResp(BaseResp resp) {
        Toast.makeText(context, "openid = " + resp.openId, Toast.LENGTH_SHORT).show();
        
        if (resp.getType() == ConstantsAPI.COMMAND_SENDAUTH) {
            Toast.makeText(context, "code = " + ((SendAuth.Resp) resp).code, Toast.LENGTH_SHORT).show();
        }
        
        String result = "";
        
        switch (resp.errCode) {
        case BaseResp.ErrCode.ERR_OK:
            result = "-sucessful-";
            break;
        case BaseResp.ErrCode.ERR_USER_CANCEL:
            result = "-cancle-";
            break;
        case BaseResp.ErrCode.ERR_AUTH_DENIED:
            result = "-error code-";
            break;
        default:
            result = "-unknow  error-";
            break;
        }
        
        Toast.makeText(context, result, Toast.LENGTH_LONG).show();
    
    }  
}

 

目录
相关文章
|
1月前
|
JavaScript 小程序 开发者
uni-app开发实战:利用Vue混入(mixin)实现微信小程序全局分享功能,一键发送给朋友、分享到朋友圈、复制链接
uni-app开发实战:利用Vue混入(mixin)实现微信小程序全局分享功能,一键发送给朋友、分享到朋友圈、复制链接
352 0
|
3月前
|
小程序 前端开发 开发者
|
3月前
|
开发工具 Android开发
|
4月前
|
小程序 JavaScript 安全
【微信小程序-原生开发】转发给好友/群,分享到朋友圈(含单页模式访问云开发数据库的方法)
【微信小程序-原生开发】转发给好友/群,分享到朋友圈(含单页模式访问云开发数据库的方法)
185 0
|
4月前
|
小程序 数据库 C++
【微信小程序-原生开发】实用教程17 - 详情页触发列表页刷新,点击图片放大预览,转发给好友/群,分享到朋友圈
【微信小程序-原生开发】实用教程17 - 详情页触发列表页刷新,点击图片放大预览,转发给好友/群,分享到朋友圈
44 0
|
5月前
|
API 开发工具
企业微信SDK接口API调用-触发推送企业微信微信好友
企业微信SDK接口API调用-触发推送企业微信微信好友
|
5月前
微信小游戏全局开启好友和朋友圈分享功能
微信小游戏全局开启好友和朋友圈分享功能
56 0
|
5月前
|
Java Linux API
微信API:探究Android平台下Hook技术的比较与应用场景分析
微信API:探究Android平台下Hook技术的比较与应用场景分析
|
5月前
|
API 开发工具
企业微信api接口调用-通过手机号或微信好友添加客户
企业微信api接口调用-通过手机号或微信好友添加客户
|
5月前
|
API 开发工具
企业微信api接口调用-触发推送企业微信微信好友
企业微信api接口调用-触发推送企业微信微信好友