第10部分App微信分享的实现.ppt
《第10部分App微信分享的实现.ppt》由会员分享,可在线阅读,更多相关《第10部分App微信分享的实现.ppt(28页珍藏版)》请在三一文库上搜索。
1、第10章 App微信分享的实现,倚动实验室,CONTENTS,10.1,App微信分享的操作流程,目录,10.2,Android平台分享到微信开发流程,10.3,IOS平台分享到微信开发流程,10.1App微信分享的操作流程,10.1.1微信开放平台,分享到微信时需要用到微信开放平台,微信开放平台实际上是第三方移动程序提供接口。用户在APP上可以把看到的内容通过微信开放平台提供的接口发送给微信好友或分享至朋友圈,这样App上的内容就可以在微信平台获得更广泛的传播。,10.1.2将App内容分享给微信好友,在App中想把一些截图、链接等分享给自己的微信好友的时候,需要点击“分享”、“通发送给好友
2、”按钮,就能把信息发送给微信好友。好友收到信息后,轻轻一点,就可以查看详情。还可以使用你的微信App来查看内容(没有安装微信的用户将会被提示去下载安装)。,将App内容分享给微信好友,10.1.2将App内容分享给微信好友,如果我们想APP软件中想把一些截图、链接等精彩内容分享到微信朋友圈,需要点击“分享”、“分享到朋友圈”按钮,完成授权后,内容就可以发送到微信的服务器。自己好友在朋友圈中就能马上看到分享的内容。还可以使用你的微信来查看分享内容(没有安装微信的用户将会被提示去下载安装),,将App内容分享到微信朋友圈,10.2Android 平台分享到微信开发流程,10.2.1申请AppID,
3、开发者开发微信分享功能需要到微信开放平台官网的移动应用开发界面,通过填写应用名称、应用简介、应用图标,各平台的下载地址等信息创建应用。将开发应用的信息进行提交审核,只有审核通过的应用才能获取AppID,才能进行进一步的开发。,10.2.2下载微信终端开发工具包,到微信开发平台资源中心下载开发工具包,主要包含3部分内容:libammsdk.jar(每个第三方应用必须要导入该sdk库,用于实现与微信的通信)、API文档(供开发者查阅使用)、 界面小工具源码(封装了界面表现的工具类,以及一些界面风格)。,10.2.3搭建开发环境,(1)在“豹考通”工程中找到libs目录,将开发工具包中libs目录下
4、的libammsdk.jar复制到该目录中,将libammsdk.jar包复制到libs目录下,(2) 右击“豹考通”工程,找到Build Path中的Configure Build Path,在Libraries通过Add Jars导入工程libs目录下的libammsdk.jar文件,,将libammsdk.jar导入Libraries目录下,(3) 在AndroidManifest.xml文件中进行设置,添加必要的权限支持。,程序清单:SourceCodeChapter10AndroidNewScoreAndroidManifest.xml ,(4)在代码中使用开发工具包,I .注册到微
5、信 要使程序启动后微信终端能响应程序,必须在代码中向微信终端注册“豹考通”的id,可以在程序入口Activity的onCreate回调函数处或其他合适的地方将应用id注册到微信。,程序清单:SourceCodeChapter10AndroidNewScore wxapi WXEntryActivity.java private static final int TIMELINE_SUPPORTED_VERSION = 0x*;/从官网上申请到的合法AppID private IWXAPI api;/ IWXAPI 是第三方app和微信通信的openapi接口 Override public v
6、oid onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); / 通过WXAPIFactory工厂,获取IWXAPI的实例 api = WXAPIFactory.createWXAPI(this, Constants.WeiXin_App_Id, false); /将“豹考通”的AppID注册到微信 api.handleIntent(getIntent(), this); ,II. .发送请求或响应到微信,“豹考通”的程序要发送请求或发送响应到微信终端,可以通过IWXAPI的 sendReq 和 send
7、Resp 两个方法来实现。sendReq是“豹考通”主动发送消息给微信,发送完成之后会切回到“豹考通”界面。sendResp是微信向“豹考通”请求数据,“豹考通”回应数据之后会切回到微信界面。sendReq的实现示例,如下面的清单文件所示。,程序清单:SourceCodeChapter10AndroidNewScore scoreutil Util /初始化一个WXAppExtendObject对象 final WXAppExtendObject appdata = new WXAppExtendObject(); appdata.fileData = “豹考通贴心的志愿填报助手:n查询学校历
8、年录取线n预测学校的投档线n推荐学校和专业n生成志愿报告单,n详情请参考:http:/ appdata.extInfo = “来自豹考通的信息“; /用WXAppExtendObject对象初始化一个WXMediaMessage对象 final WXMediaMessage msg = new WXMediaMessage(); msg.setThumbImage(ThumbnailUtils.extractThumbnail(bmp, 200, 200); msg.title = “豹考通“; msg.description = “豹考通贴心的志愿填报助手:n查询学校历年录取线n预测学校的投
9、档线n推荐学校和专业n生成志愿报告单,n详情请参考:http:/ msg.mediaObject = appdata; /构造一个req对象 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;
10、/调用api接口发送数据到 wxApi.sendReq(req);,sendResp的实现示例,如下面的清单文件所示。,public void onResp(BaseResp resp) / 第三方应用发送到微信的请求处理后的响应结果,会回调到该方法 String result = “; switch (resp.errCode) case BaseResp.ErrCode.ERR_OK: result = “分享成功!“; break; case BaseResp.ErrCode.ERR_USER_CANCEL: result = “取消分享!“; break; case BaseResp.
11、ErrCode.ERR_AUTH_DENIED: result = “分享拒绝!“; break; default: result = “分享失败!“; break; Toast.makeText(this, result, Toast.LENGTH_LONG).show(); Intent intent=new Intent(this,MainActivity.class); startActivity(intent); this.finish(); ,III. 接收微信的请求及返回值,为了接收微信发送的请求或者接收发送到微信请求的响应结果,需要下面操作: a. 在“豹考通”包目录下面新增加
12、一个包,并再该包下新增一个WXEntryActivity类,该类继承自Activity,,新增WXEntryActivity类,并在AndroidManifest.xml清单文件里面加上exported属性,设置为true。,程序清单:SourceCodeChapter10AndroidNewScoreAndroidManifest.xml ,b. 实现IWXAPIEventHandler接口,微信发送的请求将回调到onReq方法,发送到微信请求的响应结果将回调到onResp方法。 c. 在WXEntryActivity中将接收到的intent及实现了IWXAPIEventHandler接口的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 10 部分 App 分享 实现
链接地址:https://www.31doc.com/p-3122748.html