注:此文为昨日集成Android Studio中友盟分享步骤总结整理,以及所遇到的坑进行总结整理,忘对读者有帮助。
文件方面:
一:打开友盟官网,找到安卓分享集成文档,直接跳到快速集成文档。:http://dev.umeng.com/social/android/%E5%BF%AB%E9%80%9F%E9%9B%86%E6%88%90%E6%96%87%E6%A1%A3
二:第三方账号与申请自不必说,自行申请。
1.下载http://dev.umeng.com/social/android/sdk-download 我下载的是最新版本Android 社会化组件SDK v6.0.5**(2016-11-10);
2.选择你所需要集成的第三方下载(精简版)。(作者是集成微信,QQ,微博,)所以只下载了这三个的Jar包。解压。
3.在解压后的文件夹中找到main 文件夹和platforms文件夹,将其中对应的文件加到android项目中。如图:
4.重新打开项目。
代码方面
三:添加对应的回调Activity
1.我遇到的只有一个微信需要回调Activity。其他的在精简版中不需要。添加方法在官网中很详细。
- 修改AndroidManiFest.添加需要的权限。
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /><uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /><uses-permission android:name="android.permission.READ_PHONE_STATE" /><uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /><uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /><uses-permission android:name="android.permission.INTERNET" /><uses-permission android:name="android.permission.READ_LOGS" /><uses-permission android:name="android.permission.CALL_PHONE" /><uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /><uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /><uses-permission android:name="android.permission.GET_TASKS" /><uses-permission android:name="android.permission.SET_DEBUG_APP" /><uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" /><uses-permission android:name="android.permission.GET_ACCOUNTS" /><uses-permission android:name="android.permission.USE_CREDENTIALS" /><uses-permission android:name="android.permission.MANAGE_ACCOUNTS" />
3.添加对应的Activity,具体参考官网。
配置方面
四:修改build.gradle文件
1.将自己的秘钥文件(签名文件),拖进项目:
2.在build.gradle添加对应的文件名以及密码
五:开始使用
1.到目前为止如果不出意外的话,已经可以开始使用友盟的分享了(你已经申请好了第三方的秘钥addid等。)。
2.在Application中添加代码:
public class App extends Application{
@Override public void onCreate() {
super.onCreate(); UMShareAPI.get(this);
}
{ PlatformConfig.setWeixin("wx967daebe835fbeac", "5bb696d9ccd75a38c8a0bfe0675559b3");
PlatformConfig.setSinaWeibo("3921700954", "04b48b094faeb16683c32669824ebdad");
PlatformConfig.setQQZone("100424468", "c7394704798a158208a74ab60104f0ba");}
}
3.在你需要实现分享的地方添加代码:
new ShareAction(MainActivity.this).setPlatform(SHARE_MEDIA.QQ) .withText("hello") .setCallback(umShareListener) .share();
private UMShareListener umShareListener = new UMShareListener() {
@Override public void onResult(SHARE_MEDIA platform) {
Log.d("plat","platform"+platform);
Toast.makeText(MainActivity.this, platform + " 分享成功啦", Toast.LENGTH_SHORT).show();
}
@Override public void onError(SHARE_MEDIA platform, Throwable t) {
Toast.makeText(MainActivity.this,platform + " 分享失败啦", Toast.LENGTH_SHORT).show();
if(t!=null){ Log.d("throw","throw:"+t.getMessage()); }
}
@Override public void onCancel(SHARE_MEDIA platform) {
Toast.makeText(MainActivity.this,platform + " 分享取消了", Toast.LENGTH_SHORT).show(); }
};
4.错误经历:
1.忘了在build.gradle中加入debug设置,导致微信分享失败。
2.微信的appkey没换,导致分享失败。