首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

Android 微信分享成功後無回調問題的完整排查指南

     編輯:程式設計綜合問答

現象

集成微信 SDK 實現分享功能,`onResp` 回調未被觸發,Toast 提示「分享成功」不顯示。

核心檢查清單

  1. 包名與簽名一致性:微信開放平台註冊的包名、簽名 MD5 必須與 App 完全一致,否則回調會被微信客戶端攔截。
  2. 入口 Activity 配置:`WXPayEntryActivity`(或 `WXEntryActivity`)必須聲明在包名+`wxapi` 包下,且 `android:exported="true"`、`android:launchMode="singleTop"`。
  3. 處理 Intent 傳遞:`onCreate` 和 `onNewIntent` 都需調用 `api.handleIntent(intent, this)`,確保冷啟動與熱啟動均能接收回調。
  4. 註冊時機:`api.registerApp(AppID)` 應在 `Application` 初始化或主 Activity `onCreate` 中調用,且僅註冊一次。
  5. ProGuard 保護:若啟用混淆,需保留 `com.tencent.mm.sdk.**` 相關類。

代碼關鍵點補全

// Manifest 關鍵配置
<activity
    android:name=".wxapi.WXEntryActivity"
    android:exported="true"
    android:launchMode="singleTop"
    android:theme="@android:style/Theme.Translucent.NoTitleBar" />

// Activity 關鍵代碼
@Override
protected void onNewIntent(Intent intent) {
    super.onNewIntent(intent);
    setIntent(intent);
    api.handleIntent(intent, this); // 必須
}

調試技巧

在 `onResp` 首行打印 Log,觀察是否進入;若不進入,基本可鎖定為包名/簽名/Manifest 配置問題。

Android 微信分享無回調,WXEntryActivity 配置,包名簽名一致性,handleIntent 處理,ProGuard 保留規則。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved