注意要点,包名<com.umeng.soexample>,Appid,签名文件,秘钥必须一致<不要有多余的空格>,
QQ,微信登录需要的jar包
SecurityEnvSDK-release-1.1.0.jar
umeng-common-1.5.4.jar
umeng-share-core-6.9.3.jar
umeng-share-QQ-simplify-6.9.3.jar
umeng-share-wechat-simplify-6.9.3.jar
umeng-shareboard-widget-6.9.3.jar
umeng-sharetool-6.9.3.jar
utdid4all-1.1.5.3_proguard.jar
所要的权限
然后把下载的sdk中的drawable,layout,values里面的东西复制到对应的包下
在吧名为debug.keystore的文件复制到项目下
并在对应的bulid下配置如下代码
signingConfigs {
debug {
storeFile file(‘debug.keystore’)
storePassword “android”
keyAlias “androiddebugkey”
keyPassword “android”
}
}
然后就是清单文件了:
QQ的配置
<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:configChanges="orientation|keyboardHidden|screenSize"
android:theme="@android:style/Theme.Translucent.NoTitleBar" />
<activity android:name=".Main2Activity" />
<activity android:name=".Main4Activity"></activity>
微信的配置
如果要用微信登录首先要新建wxapi的包,然后新建一个Activity名为.WXEntityActivity
里面为空并继承WXCallbackActivity
然后见一个App(*名称自拟)继承Application
@Override
public void onCreate() {
super.onCreate();
UMConfigure.setLogEnabled(true);
UMConfigure.init(this,“5a12384aa40fa3551f0001d1”
,“umeng”,UMConfigure.DEVICE_TYPE_PHONE,"");//58edcfeb310c93091c000be2 5965ee00734be40b580001a0
//打log
UMConfigure.setLogEnabled(true);
PlatformConfig.setWeixin(“wxdc1e388c3822c80b”, “3baf1193c85774b3fd9d18447d76cab0”);
PlatformConfig.setQQZone(“100424468”, “c7394704798a158208a74ab60104f0ba”);
UMShareAPI.get(this);
}
在MainActivity中编写
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
UMShareAPI.get(this).onActivityResult(requestCode, resultCode, data);
}
到这里就该写正文了:
QQ登录
UMShareConfig shareConfig = new UMShareConfig();
shareConfig.isNeedAuthOnGetUserInfo(true);
UMShareAPI.get(MainActivity.this).setShareConfig(shareConfig);
umShareAPI.getPlatformInfo(MainActivity.this, SHARE_MEDIA.QQ, authListener);
//监听
public UMAuthListener authListener = new UMAuthListener() {
@Override
public void onStart(SHARE_MEDIA share_media) {
开始的方法
}
@Override
public void onComplete(SHARE_MEDIA share_media, int i, Map<String, String> map) {
成功的方法
}
@Override
public void onError(SHARE_MEDIA share_media, int i, Throwable throwable) {
错误的方法
}
@Override
public void onCancel(SHARE_MEDIA share_media, int i) {
取消的方法
}
};