AndroidManifest.xml中的配置文件:
<activity
android:name
=
"com.umeng.socialize.editorpage.ShareActivity"
android:theme
=
"@style/Theme.UMDefault"
android:excludeFromRecents
=
"true"
/>
设置友盟appid
<meta-data
android:name="UMENG_APPKEY"
android:value="4eaee02c527015373b000003" >
</meta-data>
<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:screenOrientation
=
"portrait"
android:theme
=
"@android:style/Theme.Translucent.NoTitleBar"
/>
//需要的权限
<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.INTERNET" />
<uses-permission android:name="android.permission.READ_LOGS" />
<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" />
//Demo
//在创建点击事件之前必须配置入口
PlatformConfig.setQQZone("100424468", "c7394704798a158208a74ab60104f0ba");
mShareAPI = UMShareAPI.get(this);
//点击事件
//在创建点击事件之前必须配置入口
PlatformConfig.setQQZone("100424468", "c7394704798a158208a74ab60104f0ba");
mShareAPI = UMShareAPI.get(this);
//点击事件
login_qq.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
mShareAPI.doOauthVerify(MainActivity.this, SHARE_MEDIA.QQ, new UMAuthListener() {
@Override
public void onComplete(SHARE_MEDIA platform, int action, Map<String, String> data) {
Toast.makeText( getApplicationContext(), "Authorize succeed", Toast.LENGTH_SHORT).show();
Log.i("TAG",data.toString());
mShareAPI.getPlatformInfo(MainActivity.this, SHARE_MEDIA.QQ, new UMAuthListener() {
@Override
public void onCancel(SHARE_MEDIA arg0, int arg1) {
// TODO Auto-generated method stub
}
@Override
public void onComplete(SHARE_MEDIA arg0, int arg1,
Map<String, String> arg2) {
Log.i("TAG",arg2.toString());
}
@Override
public void onError(SHARE_MEDIA arg0, int arg1,
Throwable arg2) {
// TODO Auto-generated method stub
}
});
}
@Override
public void onError(SHARE_MEDIA platform, int action, Throwable t) {
Toast.makeText( getApplicationContext(), "Authorize fail", Toast.LENGTH_SHORT).show();
}
@Override
public void onCancel(SHARE_MEDIA platform, int action) {
Toast.makeText( getApplicationContext(), "Authorize cancel", Toast.LENGTH_SHORT).show();
}
});
}
});
注意:
需要重写的以下两个生命周期
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
mShareAPI.onActivityResult(requestCode, resultCode, data);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}