博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Xamarin Android绑定微信SDK
阅读量:4572 次
发布时间:2019-06-08

本文共 5425 字,大约阅读时间需要 18 分钟。

现在几乎所有的APP都集成了向微博,微信等社交平台分享的功能。这些社交平台官方也提供了SDK让开发者使用,对于Android和IOS平台而言,只需要下载官方的SDK,按照官方说明文档进行集成就可以轻松实现了。

但是对于Xamarin来说,并没有官方的SDK,这个时候就需要我们手动进行绑定了,首先从Android层开始,让我们一步步实现如何在你自己的APP中集成微信SDK实现分享功能。

1. 在微信开放平台官网 申请一个开发者账号,填写公司APP信息,通过审核。申请成功的APPID在项目中会使用到。然后下载官方的Android_SDK 

2. 新建一个Android绑定库项目

 3. 把下载的官方SDK中的Jar包放在项目中的Jars文件夹中

记得修改Jar包的属性为嵌入的Jar包,否则在真实项目中编译时会报错。

4. 这个时候进行编译会报错,不过别害怕我们定位到错误的地方发现,原来是编译器在把Jar包转换为C#代码时出现了重名的情况,这个类中有两个ErrCode了。这样可能是因为原来的Java代码属性的名字是errCode,在转换为C#代码时编译器自动把首字母变为大写,所以和后面的类ErrCode起了冲突。

 

5. 出现了重名我们给他改个名字就可以了,打开项目文件Metadata.xml。这个文件是在把Jar包转换成C#代码时的配置文件,可以进行移除类,移除方法,修改字段名等操作,具体功能这里就不细说了有兴趣的朋友可以研究一下Xamarin的官方文档。

6. 添加如下代码,在转换时就会把名称修改为我们指定的名字了。

MyMediaObject
MyErrCode

再编译一下,OK已经成功生成了Android的绑定库。接下来建立一个Android项目试一试效果。

7. 添加引用刚才的Android绑定库,然后修改MainActivity.cs代码

 

using Android.App;using Android.Widget;using Android.OS;using Com.Tencent.MM.Opensdk.Openapi;using Com.Tencent.MM.Opensdk.Modelbase;using Com.Tencent.MM.Opensdk.Modelmsg;using System;using Android.Graphics;using System.IO;namespace WeChat.Android.Samples{    [Activity(Label = "WeChat.Android.Samples", MainLauncher = true, Icon = "@drawable/icon")]    public class MainActivity : Activity, IWXAPIEventHandler    {        // IWXAPI 是第三方app和微信通信的openapi接口        private IWXAPI api;        // APP_ID 替换为你的应用从官方网站申请到的合法appId        public const string APP_ID = "wxd930ea5d5a258f4f";        //最小支持朋友圈的版本        private const int TIMELINE_SUPPORTED_VERSION = 0x21020001;        public void OnReq(BaseReq p0)        {            throw new NotImplementedException();        }        public void OnResp(BaseResp p0)        {            throw new NotImplementedException();        }        protected override void OnCreate(Bundle bundle)        {            base.OnCreate(bundle);            // Set our view from the "main" layout resource            SetContentView (Resource.Layout.Main);            // 通过WXAPIFactory工厂,获取IWXAPI的实例            api = WXAPIFactory.CreateWXAPI(this, APP_ID, false);            Button btnRegister = FindViewById

界面文件Main.axml

8. 到现在为止工作都完成了,现在来调试一下,如果分享时出现闪退的话只需要将APP_ID修改为你在微信开放平台注册的就可以了。

最后附上Github源码地址:

 

转载于:https://www.cnblogs.com/vilyo/p/7220393.html

你可能感兴趣的文章
私有类方法
查看>>
java网络编程Socket通信详解
查看>>
为什么使用Nosql:Nosql和SQL的区别
查看>>
<转>DNS服务系列之二:DNS区域传送漏洞的安全案例
查看>>
LINUX中常用操作命令
查看>>
【android】动画效果研究(View)【1】
查看>>
(三)常用的数学函数
查看>>
int 和 Integer区别
查看>>
生产信息集成分析平台(MIIAS V1.0) 概述
查看>>
学习进度——第十五周
查看>>
iOS开发UI篇—从代码的逐步优化看MVC
查看>>
简谈-网络爬虫的几种常见类型
查看>>
File对象目录列表器
查看>>
sphinx 简介以及安装 以及php拓展开启
查看>>
(K)ubuntu上将分区格式化成NTFS格式
查看>>
面向对象的5条基本设计原则
查看>>
如何在 Centos 7.x 上以源码包安装最新版 Git
查看>>
2017知乎看山杯总结(多标签文本分类)
查看>>
uva 12003 Array Transformer (大规模阵列)
查看>>
mysql5.7二进制包安装方式
查看>>