分享到微信

来源:互联网 发布:网络小额贷款牌照 编辑:程序博客网 时间:2024/05/16 01:55

相信现在项目中,有很多分享的功能,那么 今天 就说一下分享到微信,

首先要注册微信开发者账号,

创建应用,获得AppId,和AppSecret,  一般 2天 左右,微信就会审查通过,

然后 下载 微信的sdk即可,



如果要其他的功能,如微信登录以及微信支付的话,一般公司才可以,个人是不可以的。但是 如果个人 真要的话,也是 可以的。有第三方的api可以使用,

下面是我写的分享到微信的小例子:

public class MainActivity extends AppCompatActivity {    private  static final String APP_ID="wxfcbf89848f4cc373";    private IWXAPI api;    private String text;    private Bundle bundle;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        text="分享";        regToWx();    }    private String buildTransaction(final String type) {        return (type == null) ? String.valueOf(System.currentTimeMillis()) : type + System.currentTimeMillis();    }    public void myShare(View v){        // 初始化一个WXTextObject对象        WXTextObject textObj = new WXTextObject();        textObj.text = text;        // WXTextObject对象初始化一个WXMediaMessage对象        WXMediaMessage msg = new WXMediaMessage();        msg.mediaObject = textObj;        // 发送文本类型的消息时,title字段不起作用        // msg.title = "Will be ignored";        msg.description = text;        // 构造一个Req        SendMessageToWX.Req req = new SendMessageToWX.Req();        req.transaction = buildTransaction("text"); // transaction字段用于唯一标识一个请求        req.message = msg;        //req.scene=isTimelineCb.isChecked()?SendMessageToWX.Req.WXSceneTimeline:SendMessageToWX.Req.WXSceneSession;        req.scene = SendMessageToWX.Req.WXSceneTimeline;        // 调用api接口发送数据到微信        api.sendReq(req);    }    private  void regToWx(){        api= WXAPIFactory.createWXAPI(this,APP_ID,true);        api.registerApp(APP_ID);    }}

清单文件要加入以下权限:

<uses-permission android:name="android.permission.INTERNET"/><uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/><uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/><uses-permission android:name="android.permission.READ_PHONE_STATE"/><uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
效果如下,

1 0