收藏
回答

Android App直接打开最新微信小程序,再调用打开App功能,无法跳转应用

问题模块 框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
API和组件 小程序 Bug 打开App 客户端 6.7.3 2.4.0

- 当前 Bug 的表现(可附上截图)

应用内调用OpenSDK 打开小程序方法 打开了对应小程序,操作完成后,点击open-type 的值设置为 launchApp 的 <button> 组件

<button open-type="launchApp" app-parameter="wechat" binderror="launchAppError" bindtap='openApp'>打开APP</button>

没有打开原来的App

但是App端收到了 对应的app-parameter  在 onResp()回调方法中

- 预期表现

当小程序从 APP 分享消息卡片的场景打开(场景值 1036,APP 分享小程序文档 iOS / Android) 或从 APP 打开的场景打开时(场景值 1069),小程序会获得打开 APP 的能力,

点击打开App时 会回到原来唤醒小程序的App页面

- 复现路径

经过测试在iOS上该功能没有问题 Android上复现

- 提供一个最简复现 Demo


最后一次编辑于  2018-11-16  (未经腾讯允许,不得转载)
回答关注问题邀请回答
收藏

3 个回答

  • willen
    willen
    2018-11-16

    微信有回调了(packagename).wxapi.WXEntryActivity的onResp方法吗?如果回调了,那就是已经跳转了。 在AndroidManifest.xml的WXEntryActivity中加入如下属性:

    android:taskAffinity="your packagename"

    android:launchMode="singleTask" 保证跳转后回到你的app的task。


    2018-11-16
    赞同 1
    回复 6
    • 等拾壹月
      等拾壹月
      2018-11-16

      谢谢 问题解决了 我在 参考 Android SDKSample 中 WXEntryActivity 这个中没有发现需要添加这两行。是专为小程序添加的吗?

      2018-11-16
      回复
    • willen
      willen
      2018-11-16回复等拾壹月

      我们后面改下文档

      2018-11-16
      回复
    • 等拾壹月
      等拾壹月
      2018-11-16

      好的 谢谢

      2018-11-16
      回复
    • 还等什么
      还等什么
      2018-11-18

      微信我添加这个  android:taskAffinity="your packagename" 也没有调用 onResp函数?

      微信版本是6.7.3

      2018-11-18
      回复
    • willen
      willen
      2018-11-19回复还等什么

      看下WXEntryActivity的位置是否正确。此外,再检查下是否有安全按照文档(https://open.weixin.qq.com/cgi-bin/showdocument?action=dir_list&t=resource/res_list&verify=1&id=1417751808&token=&lang=zh_CN)进行接入

      2018-11-19
      回复
    查看更多(1)
  • 晨
    2018-11-16

    binderror有返回错误信息吗?

    2018-11-16
    赞同
    回复 2
    • 等拾壹月
      等拾壹月
      2018-11-16

      没有错误信息 我调试模式下没有 日志输出

      2018-11-16
      回复
    • 等拾壹月
      等拾壹月
      2018-11-16

      就是按照上述流程 :App点击按钮 ->打开小程序->点击打开App按钮->没有响应 但是Android App收到app-parameter 参数信息

      2018-11-16
      回复
  • xl
    xl
    10-09

    咨询一下 taskAffinity有必要一定是packagename吗?自定义一个可以吗?我们现在有需求对于这个落地页的taskAffinity,如果是包名在返回后会导致页面栈与“预期不符”

    10-09
    赞同
    回复