vue项目打包成Android项目后接入sharesdk 实现分享的一些思考与实践
2018-03-30 16:08
1456 查看
vue已经是一个应用比较广泛的框架,vue本身之保留了一些基本的功能实现(已确保整个框架尽可能的’轻量’).在实际的开发过程中总要解决各种各样的问题.今天我就来写一些在通过cordova打包成android app后调用分享的问题(为什么不写ios? 因为我不会啊!)
如何将vue项目打包成android项目?这我就不赘述了,网上找下cordova有一堆.
那么如何使用sharesdk实现分享呢?
首先,我们需要Android 开发神器,Android studio(去找度娘吧.)
使用android studio打开我们通过cordova add的Android项目
就是介个目录:
因为cordova打包编译的gradle版本较低,我用的已经是Android studio3.0了,我们添加
maven{ url ‘http://maven.aliyun.com/nexus/content/groups/public/‘};//解決gradle低版本報錯,如下图;
注意java包import失败 红名:在红名后面Alt+Enter 导入;
minSdkVersion 最好改为16;
编译项目,解决各种报错后终于能运行起来了.
紧接着就是引入sharesdk了:
这里我使用快速集成的方式:
详情可参照这里
引入之后就通过js来调用写在插件里的分享方法,这里用到了cordova的自定义插件,可以参照这位大大的博客:地址
接下来就是调用分享了:
1.初始化:这里我是在MainActivity 的onCreate方法中:
2.在自定义插件类NewPlugin中调用:
showShare()方法官方文档有例子,这里就不贴了.
3.js中调用(这里我的vue项目中yj引入了cordova.js,如果里的项目没引入的话需要你手动引入):
需要注意的是,我的项目中使用了腾讯X5,如果是android版本6+的话,看看有没有这一段:
/* Pay attention:
* Error maybe occur here!!!
* If your cordova-android version below 6+,this method about EvalBridgeMode() may be not existed.
* Please comment out below the lines 126-127.
*/
if(Build.VERSION.SDK_INT > Build.VERSION_CODES.JELLY_BEAN_MR2) {
System.err.println(“这里加了SDK_INT”+Build.VERSION.SDK_INT+”***********JELLY_BEAN_MR2:”+Build.VERSION_CODES.JELLY_BEAN_MR2);
nativeToJsMessageQueue.addBridgeMode(new NativeToJsMessageQueue.EvalBridgeMode(this, cordova));
}
大坑啦!!!会报错:CordovaBridge: Ignoring exec() from previous page load.
现在不通过git连接下载的X5插件貌似没事,有事的看下吧!
至此测试分享能分享出去了,上图
qq分享截图
收工!正式参数的话小伙伴们去各个开发平台申请吧,哈哈!
如何将vue项目打包成android项目?这我就不赘述了,网上找下cordova有一堆.
那么如何使用sharesdk实现分享呢?
首先,我们需要Android 开发神器,Android studio(去找度娘吧.)
使用android studio打开我们通过cordova add的Android项目
就是介个目录:
因为cordova打包编译的gradle版本较低,我用的已经是Android studio3.0了,我们添加
maven{ url ‘http://maven.aliyun.com/nexus/content/groups/public/‘};//解決gradle低版本報錯,如下图;
注意java包import失败 红名:在红名后面Alt+Enter 导入;
minSdkVersion 最好改为16;
编译项目,解决各种报错后终于能运行起来了.
紧接着就是引入sharesdk了:
这里我使用快速集成的方式:
详情可参照这里
引入之后就通过js来调用写在插件里的分享方法,这里用到了cordova的自定义插件,可以参照这位大大的博客:地址
接下来就是调用分享了:
1.初始化:这里我是在MainActivity 的onCreate方法中:
2.在自定义插件类NewPlugin中调用:
showShare()方法官方文档有例子,这里就不贴了.
3.js中调用(这里我的vue项目中yj引入了cordova.js,如果里的项目没引入的话需要你手动引入):
需要注意的是,我的项目中使用了腾讯X5,如果是android版本6+的话,看看有没有这一段:
/* Pay attention:
* Error maybe occur here!!!
* If your cordova-android version below 6+,this method about EvalBridgeMode() may be not existed.
* Please comment out below the lines 126-127.
*/
if(Build.VERSION.SDK_INT > Build.VERSION_CODES.JELLY_BEAN_MR2) {
System.err.println(“这里加了SDK_INT”+Build.VERSION.SDK_INT+”***********JELLY_BEAN_MR2:”+Build.VERSION_CODES.JELLY_BEAN_MR2);
nativeToJsMessageQueue.addBridgeMode(new NativeToJsMessageQueue.EvalBridgeMode(this, cordova));
}
大坑啦!!!会报错:CordovaBridge: Ignoring exec() from previous page load.
现在不通过git连接下载的X5插件貌似没事,有事的看下吧!
至此测试分享能分享出去了,上图
qq分享截图
收工!正式参数的话小伙伴们去各个开发平台申请吧,哈哈!
相关文章推荐
- 【微信支付】分享一个失败的案例 跨域405(Method Not Allowed)问题 关于IM的一些思考与实践 基于WebSocketSharp 的IM 简单实现 【css3】旋转倒计时 【Html5】-- 塔台管制 H5情景意识 --飞机 谈谈转行
- 在Unity3D项目中接入ShareSDK实现安卓平台微信分享功能(可使用ShareSDK默认UI或自定义UI)
- 【Android进阶】使用第三方平台 ShareSDK 实现新浪微博的一键分享功能
- Android通过ShareSDK实现新浪微博分享
- Android项目自动批量打包之程序实现
- Unity开发之接入Sharesdk微信分享Android(一)
- IOS项目集成ShareSDK实现第三方登录、分享、关注等功能。
- 【Android进阶】使用第三方平台ShareSDK实现新浪微博的一键分享功能
- IOS项目集成ShareSDK实现第三方登录、分享、关注等功能。
- 最近一些项目编码实践总结思考
- IOS项目集成ShareSDK实现第三方登录、分享、关注等功能
- android 项目实践分享
- 分享自己在项目中对android文件系统的一些认识
- android shareSDK 分享实现-getStringRes captureView 方法找不到
- Unity开发之接入Sharesdk微信分享Android
- android小项目源码(源码来源于网络,上百个源码打包分享)
- android开放平台接入后项目打包中出现的问题
- Mac中用Ant实现Android的批量打包碰到的一些问题以及解决方法
- 【Android进阶】使用第三方平台 ShareSDK 实现新浪微博的一键分享功能
- IOS项目集成ShareSDK实现第三方登录、分享、关注等功能。