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

騰訊 QQ 互聯 SDK 接入報 NoClassDefFoundError: QQAuth 的解決

     編輯:程式設計綜合問答

錯誤

java.lang.NoClassDefFoundError: com.tencent.connect.auth.QQAuth

原因

項目**未正確引入 QQ 互聯 SDK 的 JAR/AAR 包**,或打包時未包含 (ProGuard 混淆誤刪、MultiDex 未配置)。

解決步驟

  1. Gradle 依賴 (推薦):
    
    implementation 'com.tencent.connect:qq-opensdk:3.5.+' // 或具體版本
    // 需在 repositories 添加騰訊 Maven 倉庫
    maven { url 'https://raw.githubusercontent.com/qq-opensdk/qq-opensdk-android/master/repository' }
    
  2. 手動導入 JAR:將 `qq-opensdk.jar` 放入 `libs/`,右鍵 `Add as Library`。
  3. ProGuard 保護:
    
    -keep class com.tencent.connect.** { *; }
    -keep class com.tencent.tauth.** { *; }
    -dontwarn com.tencent.**
    
  4. MultiDex** (方法數超 64K):
    
    defaultConfig { multiDexEnabled true }
    dependencies { implementation 'androidx.multidex:multidex:2.0.1' }
    

驗證

Build → Analyze APK → 搜索 `QQAuth.class` 確認已打包。

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