Android之使用微信开放api (二)---分享歌曲到微信

分享音乐到微信:

WXMusicObject music = new WXMusicObject();

music.musicUrl="http://staff2.ustc.edu.cn/~wdw/softdown/index.asp/0042515_05.ANDY.mp3"; 

WXMediaMessage msg = new WXMediaMessage();

msg.mediaObject = music;

msg.title = "Music Title";

msg.description = "Music Album";



Bitmap thumb = BitmapFactory.decodeResource(getResources(), R.drawable.send_music_thumb);

msg.thumbData = Util.bmpToByteArray(thumb, true);



SendMessageToWX.Req req = new SendMessageToWX.Req();

req.transaction = buildTransaction("music");

req.message = msg;

req.scene = isTimelineCb.isChecked() ? SendMessageToWX.Req.WXSceneTimeline : SendMessageToWX.Req.WXSceneSession;

api.sendReq(req);

finish();


低宽带分享音乐到微信

WXMusicObject music = new WXMusicObject();

                            music.musicLowBandUrl = "http://www.qq.com";



                            WXMediaMessage msg = new WXMediaMessage();

                            msg.mediaObject = music;

                            msg.title = "Music Title";

                            msg.description = "Music Album";



                            Bitmap thumb = BitmapFactory.decodeResource(getResources(), R.drawable.send_music_thumb);

                            msg.thumbData = Util.bmpToByteArray(thumb, true);



                            SendMessageToWX.Req req = new SendMessageToWX.Req();

                            req.transaction = buildTransaction("music");

                            req.message = msg;

                            req.scene = isTimelineCb.isChecked() ? SendMessageToWX.Req.WXSceneTimeline : SendMessageToWX.Req.WXSceneSession;

                            api.sendReq(req);

                            

                            finish();


返回程序的时候,需要捕捉微信返回信息。

接收微信的请求及返回值



如果你的程序需要接收微信发送的请求,或者接收发送到微信请求的响应结果,需要下面3步操作:



a. 在你的包名相应目录下新建一个wxapi目录,并在该wxapi目录下新增一个WXEntryActivity类,该类继承自Activity



(例如应用程序的包名为net.sourceforge.simcpux,则新添加的类如下图所示)



并在manifest文件里面加上exported属性,设置为true,例如:图在下面



b. 实现IWXAPIEventHandler接口,微信发送的请求将回调到onReq方法,发送到微信请求的响应结果将回调到onResp方法



c. 在WXEntryActivity中将接收到的intent及实现了IWXAPIEventHandler接口的对象传递给IWXAPI接口的handleIntent方法,示例如下图:







当微信发送请求到你的应用,将通过IWXAPIEventHandler接口的onReq方法进行回调,类似的,应用请求微信的响应结果将通过onResp回调。

 

你可能感兴趣的:(android)