收藏
回答

app能跳转到小程序,但是小程序跳转回app失败?

从app跳转到小城后成功后,在点击按钮跳转回app就失败,提示
错误提示:navigateBackApplication:fail


最后一次编辑于  2019-08-05
回答关注问题邀请回答
收藏

4 个回答

  • 禾店科技
    禾店科技
    2021-05-12

    填坑1:AppId


    这里的AppId是Android应用的appid,不是小程序的AppId


    填坑2:AndroidManifest.xml的配置


    在AndroidManifest.xml的WXEntryActivity中加入如下属性:


        android:taskAffinity="your packagename"

        android:launchMode="singleTask" 

    这里如果不加的话,小程序无法跳转回APP


    填坑3:WXEntryActivity实现IWXAPIEventHandler接口


    public class WXEntryActivity extends Activity implements IWXAPIEventHandler


    填坑4:在onResp里面finish,不然WXEntryActivity是透明的,导致app无法操作


     public void onResp(BaseResp resp) {

            if (resp.getType() == ConstantsAPI.COMMAND_LAUNCH_WX_MINIPROGRAM) {

                WXLaunchMiniProgram.Resp launchMiniProResp = (WXLaunchMiniProgram.Resp) resp;

                String extraData = launchMiniProResp.extMsg; //对应小程序组件 <button open-type="launchApp"> 中的 app-parameter 属性

                LogUtils.i("小程序==" + extraData);

                finish();

            }

        }


    填坑5:在onCreate处理返回值


    // IWXAPI 是第三方app和微信通信的openapi接口

        private IWXAPI api;


        @Override

        protected void onCreate(Bundle bundle) {

            super.onCreate(bundle);

            // 通过WXAPIFactory工厂,获取IWXAPI的实例

            api = WXAPIFactory.createWXAPI(this, Constants.APP_ID, false);

            //注意:

            //第三方开发者如果使用透明界面来实现WXEntryActivity,需要判断handleIntent的返回值,如果返回值为false,则说明入参不合法未被SDK处理,应finish当前透明界面,避免外部通过传递非法参数的Intent导致停留在透明界面,引起用户的疑惑

            try {

                if (!api.handleIntent(getIntent(), this)) {

                    finish();

                }

            } catch (Exception e) {

                e.printStackTrace();

            }

        }

    2021-05-12
    有用 2
    回复
  • 灵芝
    灵芝
    2019-08-05

    请确认符合打开APP的要求:https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/launchApp.html

    2019-08-05
    有用 1
    回复 3
    • chan1
      chan1
      2019-08-05
      我从app跳转到开发版的小程序,场景值是1011.。。
      2019-08-05
      回复
    • fu si san
      fu si san
      2020-02-14
      我的场景值是 1069 , 回调也是成功的,就是跳不过去,哪里的问题呢???
      2020-02-14
      回复
    • 灵芝
      灵芝
      2020-02-17回复fu si san
      你好,请单独发帖反馈
      2020-02-17
      回复
  • 执子之手
    执子之手
    2019-09-06

    https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/launchApp.html

    文档中提到如果需要从小程序返回到ios的app中,那么iOS 则需要将 appId 添加到第三方 app 工程所属的 plist 文件 URL types 字段。 

    检查下这个配置了没有吧。

    如下图所示:

    2019-09-06
    有用
    回复
  • 原点的原点
    原点的原点
    2019-08-05

    打印场景值看看

    2019-08-05
    有用
    回复 9
    • chan1
      chan1
      2019-08-05
      我从app跳转到开发版的小程序,场景值是1011.。。
      2019-08-05
      回复
    • 原点的原点
      原点的原点
      2019-08-05回复chan1
      那就是场景值的问题
      2019-08-05
      回复
    • chan1
      chan1
      2019-08-05回复原点的原点
      那这个跳转不能在开发版和体验版测试吗?
      2019-08-05
      回复
    • 原点的原点
      原点的原点
      2019-08-05回复chan1
      可以啊
      2019-08-05
      回复
    • chan1
      chan1
      2019-08-05回复原点的原点
      现在是场景值对了,还是跳转不回去
      2019-08-05
      回复
    查看更多(4)
登录 后发表内容