Xamarin.Android 绑定友盟社会化分享组件

  • 时间:
  • 浏览:0
  • 来源:大发快3_快3手机app下载_大发快3手机app下载

Xamarin.Android 绑定友盟社会化分享组件

2017-04-27 13:13  JoesWeek  阅读(...)  评论()  编辑  收藏

Xamarin.Android 绑定友盟社会化分享组件

最近在开发博客园Android App的就说 时时需到友盟社会化分享组件,在github上搜了一下都没办法 找到最新版本绑定好的项目,就本人动手来绑定一5个多最新版本的友盟社会化分享组件(文章发布时的最新版为v6.4.3)。

下载友盟Android版SDK

友盟社会化分享组件 v6.4.3

本文只使用到微信,QQ,新浪微博,故只下载了精简版

创建绑定项目

创建步骤如图所示:



加带友盟SDK的jar包到绑定项目的Jars文件夹下

加带下载的友盟SDK项目中main,platforms,shareboard,shareview文件夹中的jar包到绑定项目的Jars文件夹下,如图示:



修改所有jar包的属性EmbeddedJar,如图示:

生成项目

完整修改好就说 ,生成项目,突然出现一大堆错误,先别急,看一下都在些那此错误。

好了,双击第一5个多错误,打开后发现UMImageMark类竟然继承的是本人,这应该什么都 错误的源头了。

怎么能让你们 把UMImageMark继承的类改为Java.Lang.Object试试,ok,错误消失了。

怎么能让从前改是没办法 用的,怎么能让这怎么能让是生成好的代码了,要改就不到在源肩头更改了,为什么办呢? 打开Transforms文件夹下的Metadata.xml文件,在这里编写修改的代码就行了。

怎么能让为什么修改UMImageMark类的继承类呢?按下面的土办法 加带一行代码就搞掂了。

<attr path="/api/package[@name='com.umeng.social.tool']/class[@name='UMImageMark']" name="extends">Java.Lang.Object</attr>

怎么能让再生成一下,看有没办法 效果。

上方的错误没办法 了,说明成功了。从前还是有好多错误。接下来看下一5个多错误。双击打开第一5个多错误,发现CancelEventArgs类是一5个多分布类再一5个多文件中所处,google一分派现是怎么能让IUMShareListener接口和IUMAuthListener接口所处相同的土办法 ,什么都绑定的随前会生成相同的类。好了,知道了意味着就好办了,假若把其中一5个多接口中的土办法 名字改一下就好了,代码如下:

<attr path="/api/package[@name='com.umeng.socialize']/interface[@name='UMAuthListener']/method[@name='onCancel']" name="managedName">OnAuthCancel</attr> <attr path="/api/package[@name='com.umeng.socialize']/interface[@name='UMAuthListener']/method[@name='onComplete']" name="managedName">OnAuthComplete</attr> <attr path="/api/package[@name='com.umeng.socialize']/interface[@name='UMAuthListener']/method[@name='onError']" name="managedName">OnAuthError</attr> <attr path="/api/package[@name='com.umeng.socialize']/interface[@name='UMAuthListener']/method[@name='onStart']" name="managedName">OnAuthStart</attr>

重新生成一下。

Good,成功了,只剩下5个错误了。

下一5个多错误一看就知道是怎么能让修饰符的意味着造成的,把继承类的你你是什么土办法 修饰符protected改成public就可不要能了,代码:

<attr path="/api/package[@name='com.umeng.socialize.sina.params']/class[@name='BrowserRequestParamBase']/method[@name='onCreateRequestParamBundle' and count(parameter)=1 and parameter[1][@type='android.os.Bundle']]" name="visibility">public</attr>

重新生成一下。

好了,还有一5个多错误。错误提示说“UMShareAPI.InitThread”不实现继承的抽象成员“QueuedWork.UMAsyncTask.DoInBackground()”,打开发现怎么能让有了DoInBackground土办法 了,怎么能让没办法 override关键字修饰。

为什么办呢,不到新建一5个多UMShareAPI分布类来重写你你是什么土办法 了。在Additions文件夹下新建一5个多UMShareAPI类,注意修改命名空间为Com.Umeng.Socialize,怎么能让重写DoInBackground土办法 。怎么能让从前怎么能让有了一5个多叫DoInBackground的土办法 ,什么都时需把从前的土办法 名修改成DoInBackgrounds就搞掂了,代码:

namespace Com.Umeng.Socialize
{
    public partial class UMShareAPI
    {
        public partial class InitThread : global::Com.Umeng.Socialize.Common.QueuedWork.UMAsyncTask
        {
            protected override Java.Lang.Object DoInBackground()
            {
                return DoInBackgrounds();
            }
        }
    }
}
  <attr path="/api/package[@name='com.umeng.socialize']/class[@name='UMShareAPI.InitThread']/method[@name='doInBackground' and count(parameter)=0]"  name="name">DoInBackgrounds</attr>

保存后重新生成一下,搞掂了。

最后一5个多错误是类名和属性名冲突了,修改一下类名就行了。

<attr path="/api/package[@name='com.umeng.socialize.utils']/class[@name='Log']/field[@name='LOG']" name="name">Logs</attr>

重新生成。搞掂。大功告成。

========== 生成: 成功 1 个,失败 0 个,最新 0 个,跳过 0 个 ==========

最后

下载地址

Github

你你是什么项目中是我在使用Xamarin.Android的就说 本人用到的绑定库,蕴含 了友盟统计,友盟社会化分享,讯飞版本自动更新。

  • 分类 Xamarin.Android
  • 标签 C# , Xamarin.Android , 友盟分享

猜你喜欢

谷歌DeepMind欲开发识别乳腺癌的AI技术:已获得3万名女性的乳房X线照片

据福布斯报道,DeepMind从日本东京慈恵会医科大学附属病院(JikeiUniversityHospital)获得了60 7年-2018年间约3万名一个女人患者的乳房x线照

2020-01-25

科学家称量子计算机速度存在理论上限

北京时间1月19日消息据国外媒体报道,过去200年间,标准计算机补救器的带宽不断提升。但近年来,这项技术的局限逐渐开始英文英文显露:芯片可能无法做得更小,元件也无法排得常抓,刚

2020-01-25

商务部:中美经贸高级别磋商双方牵头人通话讨论遗留问题

商务部今天举行例行新闻发布会,在回答中美经贸磋商大大问题时,商务部新闻发言人高峰介绍:4月3号到5号,刘鹤副总理与美国贸易代表莱特希泽、财政部长姆努钦在华盛顿一块儿主持第九轮中

2020-01-25

明清古堡建筑“西古堡”,古式宅院别具一格!

核心提示:西古堡,明清古堡建筑,居于河北省蔚县暖泉镇内,冀晋界东2公里。古堡集古城堡与古戏楼、寺院、宅院于一体。建于明嘉靖年间(1522一1566年),明末清初续建,是古蔚州“

2020-01-24

新武器提升利润 华为P10 Plus首次跨入5000元档

《新武器提升利润华为P10Plus首次跨入40000元档》文章可能性归档,不再展示相关内容,编辑建议你查看最新于此相关的内容:这支消防队如保“驾云”为民保平安?一座被大火吞噬的

2020-01-24