收藏
回答

bug: 微信分享后返回app时偶现出现黑屏问题

框架类型 问题类型 操作系统 操作系统版本 手机型号 微信版本
小程序 Bug Android xx Honor 70 Android12 Magicos 7.0 8.0.40
<activity
    android:name=".wxapi.WXEntryActivity"
    android:configChanges="keyboardHidden|orientation|screenSize"
    android:exported="true"
    android:theme="@style/TranslucentTheme"
    android:taskAffinity="com.zhugefang.agent"
    android:launchMode="singleTask"/> 


public class WXEntryActivity extends AppCompatActivity implements IWXAPIEventHandler {
    private IWXAPI api;
    private SocialHelper socialHelper;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        socialHelper = new SocialHelper.Builder().build();
        String wxAppId = socialHelper.getBuilder().getWxAppId();
        api = WXAPIFactory.createWXAPI(this, wxAppId, true);
        api.registerApp(wxAppId);
        try {
            api.handleIntent(getIntent(), this);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    @Override
    protected void onNewIntent(Intent intent) {
        super.onNewIntent(intent);
        setIntent(intent);
        api.handleIntent(intent, this);
    }

    @Override
    public void onReq(BaseReq baseReq) {
    }

    @Override
    public void onResp(BaseResp baseResp) {
        //登录
        Log.d("WXEntryActivity", baseResp.errCode + baseResp.errStr);
        if (baseResp.getType() == ConstantsAPI.COMMAND_SENDAUTH) {
            if (baseResp.errCode == BaseResp.ErrCode.ERR_OK) {
                String code = ((SendAuth.Resp) baseResp).code;
//                SocialUtil.getInstance().socialHelper().sendAuthBackBroadcast(this, code);
                socialHelper.sendAuthBackBroadcast(this, code);
            } else {
//                SocialUtil.getInstance().socialHelper().sendAuthBackBroadcast(this, null);
                socialHelper.sendAuthBackBroadcast(this, null);
            }
        } else if (baseResp.getType() == ConstantsAPI.COMMAND_SENDMESSAGE_TO_WX) {
            if (baseResp.errCode == BaseResp.ErrCode.ERR_OK) {
//                SocialUtil.getInstance().socialHelper().sendShareBackBroadcast(this, true);
                socialHelper.sendShareBackBroadcast(this, true);
            } else {
//                SocialUtil.getInstance().socialHelper().sendShareBackBroadcast(this, false);
                socialHelper.sendShareBackBroadcast(this, false);
            }
        }
        onBackPressed();
    }
}


回答关注问题邀请回答
收藏

1 个回答

  • Riven.
    Riven.
    2023-11-09

    你好,请在复现问题后在手机微信上传日志: 我->设置->帮助与反馈右上角有个上报日志的入口,提供出现问题的微信号,出现问题的时间点(具体到分钟)

    2023-11-09
    有用
    回复 4
登录 后发表内容