以应用宝为例,由于应用宝渠道用到了微信授权,而且回调Activity是WXEntryActivity,跟ShareSDK的微信回调类冲突。
解决方案如下:
1、把原来ShareSDK的微信回调类WXEntryActivity修改成SSDKWXEntryActivity,然后在AndroidManifest中配置
2、在应用宝的微信授权回调类WXEntryActivity中,添加如下代码
3、SSDKWXEntryActivity类与WXEntryActivity类在同一个包中,如
cn.sharesdk.demo.wxapi
/** 应用宝微信授权回调activity,需要继承 YSDKWXEntryActivity*/
public class WXEntryActivity extends YSDKWXEntryActivity {
public void onCreate(Bundle arg0) {
super.onCreate(arg0);
}
public void onResp(BaseResp resp) {
if (resp instanceof SendMessageToWX.Resp) {
//把原来ShareSDK的微信回调类WXEntryActivity改成SSDKWXEntryActivity
//然后在AndroidManifest中,注册SSDKWXEntryActivity
Intent intent = new Intent(this, SSDKWXEntryActivity.class);
intent.putExtras(getIntent());
startActivity(intent);
finish();
} else {
super.onResp(resp);
}
}
}
AndroidManifest中的配置信息
<!-- 应用宝的微信授权回调类 -->
<activity
android:name=".wxapi.WXEntryActivity"
android:theme="@android:style/Theme.Translucent.NoTitleBar"
android:configChanges="keyboardHidden|orientation|screenSize"
android:exported="true" />
<!-- ShareSDK的微信分享回调类 -->
<activity
android:name=".wxapi.SSDKWXEntryActivity"
android:theme="@android:style/Theme.Translucent.NoTitleBar"
android:configChanges="keyboardHidden|orientation|screenSize"
android:exported="true" />
这样就解决ShareSDK与应用宝微信回调类的冲突问题
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。