新人第一次使用友盟的话:
- 注册友盟
- 点进我的产品,中间有一个换一换 换到移动统计
- 接着进入新版,创建一个产品 (名字都是随便起)
- 然后返回首页,找到上导航栏的开发者平台选择SDK下载
- 最下面社会化分享右边有个开发文档点击去
- 右边选择获取SDK下载好jar包
- 贴贴到对应的项目lib包,然后全部选中右键add As libray——>确定
QQ为例子,先开始整理清单文件需要的东西
接着需要手打的
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.bawei.huidiao">
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<application
android:name=".CallBackUtils"
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".activity.ZhuceActivity"></activity>
<activity android:name=".activity.Main2Activity" />
<activity android:name=".activity.LoginActivity" />
<activity android:name=".activity.MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name="com.tencent.tauth.AuthActivity"
android:launchMode="singleTask"
android:noHistory="true" >
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="tencent100424468" />
</intent-filter>
</activity>
<activity
android:name="com.tencent.connect.common.AssistActivity"
android:theme="@android:style/Theme.Translucent.NoTitleBar"
android:configChanges="orientation|keyboardHidden|screenSize"/>
<meta-data android:name="UMENG_KEY"
android:value="5c900000004e000816">
</meta-data>
</application>
</manifest>
创建一个新得类继承Application,复制下面贴贴到这个类
主类代码需要复制,贴贴的代码会报错该导包的导包,上下文改一下就好了
我复制完的代码
//第三方登录
qq.setOnClickListener(new View.OnClickListener(){
private UMShareAPI umShareAPI;
@Override
public void onClick(View v) {
umShareAPI = UMShareAPI.get(LoginActivity.this);//手写
umShareAPI.getPlatformInfo(LoginActivity.this, SHARE_MEDIA.QQ,new UMAuthListener() {
/**
* @desc 授权开始的回调
* @param platform 平台名称
*/
@Override
public void onStart(SHARE_MEDIA platform) {
}
/**
* @desc 授权成功的回调
* @param platform 平台名称
* @param action 行为序号,开发者用不上
* @param data 用户资料返回
*/
@Override
public void onComplete(SHARE_MEDIA platform, int action, Map<String, String> data) {
Toast.makeText(LoginActivity.this, "成功了", Toast.LENGTH_LONG).show();
}
/**
* @desc 授权失败的回调
* @param platform 平台名称
* @param action 行为序号,开发者用不上
* @param t 错误原因
*/
@Override
public void onError(SHARE_MEDIA platform, int action, Throwable t) {
Toast.makeText(LoginActivity.this, "失败:" + t.getMessage(), Toast.LENGTH_LONG).show();
}
/**
* @desc 授权取消的回调
* @param platform 平台名称
* @param action 行为序号,开发者用不上
*/
@Override
public void onCancel(SHARE_MEDIA platform, int action) {
Toast.makeText(LoginActivity.this, "取消了", Toast.LENGTH_LONG).show();
}
});
}
});
然后添加返回方法
//第三方登录
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
UMShareAPI.get(LoginActivity.this).onActivityResult(requestCode, resultCode, data);
}
最后再在清单文件中注册一下活动
在application下打代码
//刚刚新建继承application的类
android:name=".CallBackUtils"