收藏
回答

Android app 拉起小程序后再唤起app,app的回调没有执行

框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
小程序 Bug WXEntryActivity 微信安卓客户端 7.0.13 'com.tencent.mm.opensdk:wechat-sdk-android-without-mta:+'

import android.content.Intent;
import android.util.Log;
import android.widget.Toast;

import com.i84.cpn.andr.help.ToastHelper;
import com.tencent.mm.opensdk.constants.ConstantsAPI;
import com.tencent.mm.opensdk.modelbiz.WXLaunchMiniProgram;
import com.tencent.mm.opensdk.openapi.IWXAPIEventHandler;

import cn.sharesdk.wechat.utils.WXAppExtendObject;
import cn.sharesdk.wechat.utils.WXMediaMessage;
import cn.sharesdk.wechat.utils.WechatHandlerActivity;

/** 微信客户端回调activity示例 */
public class WXEntryActivity extends WechatHandlerActivity implements IWXAPIEventHandler {

   /**
    * 处理微信发出的向第三方应用请求app message
    * <p>
    * 在微信客户端中的聊天页面有“添加工具”,可以将本应用的图标添加到其中
    * 此后点击图标,下面的代码会被执行。Demo仅仅只是打开自己而已,但你可
    * 做点其他的事情,包括根本不打开任何页面
    */
   public void onGetMessageFromWXReq(WXMediaMessage msg) {
      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();
      }
   }

   @Override
   public void onReq(com.tencent.mm.opensdk.modelbase.BaseReq baseReq) {
      Log.e("wetch",baseReq.getType() + "");
   }

   @Override
   public void onResp(com.tencent.mm.opensdk.modelbase.BaseResp baseResp) {
      if (baseResp.getType() == ConstantsAPI.COMMAND_LAUNCH_WX_MINIPROGRAM) {
         WXLaunchMiniProgram.Resp launchMiniProResp = (WXLaunchMiniProgram.Resp) baseResp;
         String extraData =launchMiniProResp.extMsg; // 对应下面小程序中的app-parameter字段的value
         ToastHelper.showToast(extraData);
            Log.e("wetch",extraData);
      }
   }
}


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

3 个回答

  • candela
    candela
    2020-08-12

    是不是跟ShareSDK冲突了

    2020-08-12
    有用
    回复
  • 与子偕老
    与子偕老
    2020-05-14

    有结果了么?

    2020-05-14
    有用
    回复
  • 是小白啊
    是小白啊
    2020-04-14

    麻烦在手机微信那里上传下日志: 我->设置->帮助与反馈右上角有个上报日志的入口,麻烦提供一下微信号,时间点

    2020-04-14
    有用
    回复 2
    • 棒冰
      棒冰
      2020-04-14
      hl309849232,2020/4/14,9点,11点
      2020-04-14
      回复
    • 棒冰
      棒冰
      2020-04-16回复棒冰
      您好,问题排查到了吗
      2020-04-16
      回复
登录 后发表内容
问题标签