美文网首页
关于新版本ShareSDK微信分享成功后闪屏的问题

关于新版本ShareSDK微信分享成功后闪屏的问题

作者: DINGCHAO_ | 来源:发表于2019-03-26 16:36 被阅读0次

新版本ShareSDK 不用再AndroidManifest.xml中设置

<activity  
          android:name=".wxapi.WXEntryActivity"  
          android:exported="true"  
          android:launchMode="singleTop"  
          android:screenOrientation="portrait" />  

解决方案:
新建一个WXEntryActivity注意在wxapi包下边

/**
 * @ClassName: WXEntryActivity
 * @Description:修复分享闪屏
 * @Author: dingchao
 * @Date: 2019/3/26 16:29
 */
public class WXEntryActivity extends WechatHandlerActivity {
/**
     * 处理微信发出的向第三方应用请求app message
     * <p>
     * 在微信客户端中的聊天页面有“添加工具”,可以将本应用的图标添加到其中
     * 此后点击图标,下面的代码会被执行。Demo仅仅只是打开自己而已,但你可
     * 做点其他的事情,包括根本不打开任何页面
     */
    public void onGetMessageFromWXReq(WXMediaMessage msg) {
        if (msg != null) {
            Intent iLaunchMyself = getPackageManager().getLaunchIntentForPackage(getPackageName());
            startActivity(iLaunchMyself);
        }
    }

    /**
     * 处理微信向第三方应用发起的消息
     * <p>
     * 此处用来接收从微信发送过来的消息,比方说本demo在wechatpage里面分享
     * 应用时可以不分享应用文件,而分享一段应用的自定义信息。接受方的微信
     * 客户端会通过这个方法,将这个信息发送回接收方手机上的本demo中,当作
     * 回调。
     * <p>
     * 本Demo只是将信息展示出来,但你可做点其他的事情,而不仅仅只是Toast
     */
    public void onShowMessageFromWXReq(WXMediaMessage msg) {
        if (msg != null && msg.mediaObject != null
                && (msg.mediaObject instanceof WXAppExtendObject)) {
            WXAppExtendObject obj = (WXAppExtendObject) msg.mediaObject;
            Toast.makeText(this, obj.extInfo, Toast.LENGTH_SHORT).show();
        }
    }

}

在配置文件AndroidManifest.xml中配置设置其theme

<!--分享闪屏修复-->
        <activity
            android:name=".wxapi.WXEntryActivity"
            android:configChanges="keyboardHidden|orientation|screenSize"
            android:exported="true"
            android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen" />

亲测可行

相关文章

网友评论

      本文标题:关于新版本ShareSDK微信分享成功后闪屏的问题

      本文链接:https://www.haomeiwen.com/subject/uvhnvqtx.html