• Pgyer document center

    Android SDK 3.0.0以上常見問題

    1. 使用 jar 包的集成方式,運行 App 后,SDK 的功能無法正常使用,可能的原因:

      Manifest.xml 文件中未配置以下信息,導致蒲公英 SDK 未能正確的初始化:

      <provider
         android:name="com.pgyersdk.PgyerProvider"
         android:authorities="${applicationId}.com.pgyer.provider"
         android:exported="false"/>
      
    2. 自定義更新提示功能,直接復制 Demo 中的自定義方法,不出現 UI 界面,可能的原因:

      更新提示自定方法,我們提供給開發者最大程度的自定義可能,在我們 Demo 中使用了最簡單的邏輯,并打印出來關鍵的數據,沒有 UI 的實現,具體的 UI 實現以及邏輯是需要開發者自己去調整實現的;

    3. 更新提示功能在下載完成 apk 后,沒有自動彈出安裝提示頁面,可能的原因:

      1. 用戶手機設置中允許未知來源安裝包安裝狀態為關;
      2. Android8.0 以后,如果要安裝 apk 需要額外添加權限:
      <uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES" />
      

      蒲公英 SDK 3.0.1以上,aar 集成方式,包含了以上的權限,不需要重復添加。

    4. 自動更新提示彈出以后又馬上消失,可能的原因:

      可能由于 3.0.0版本 SDK 會自動解綁更新提示,當一些開發者在使用延遲關閉上個頁面或者使用其他框架會造成上述的原因,升級為最新版本的 SDK,可以解決以上問題。

    5. 在集成 SDK 以后提示合并 Manifest.xml 文件失敗,可能的原因:

      1. 蒲公英 SDK 要求項目 Android API 大于等于16;
      2. 打開 Manifest.xml 文件查看具體報錯原因,是否有格式不正確導致;
    6. 3.0.0版本提示 InterruptException,可能的原因:

      這是由于防止用戶同一時間段多次請求,造成流量浪費,SDK 會在同一時間段內阻止上次請求的發起,會打印這個錯誤,不會實際對使用 SDK 的 App 造成任何的影響;

      在3.0.1版本以上修復,不再打印這個錯誤。

    7. 3.0.0以前的版本打印 Api.class 文件中出現 NullException,可能的原因:

      這個問題不會對使用 App 造成任何的影響,在3.0.1版本對此作了的修復,將不再打印此問題。

    8. 在運行 App 后,檢查 SDK 功能是否正常運行,可以通過查看 Android Studio Logcat 的信息,搜索關鍵字 PgyerSDK 過濾,會得到類似以下結果:

      D/PgyerSDK:  PgyerProvider onCreate   // SDK 初始化
      D/PgyerSDK: create Crash File  path:...6.stacktrace   // 生成 Crash 信息文件
      D/PgyerSDK: Transmission succeeded       // Crash 成功上報蒲公英后臺
      D/PgyerSDK: There is a new version   // 有新版本更新
      

      如果配置信息不正確,會得到以下類似信息:

      E/PgyerSDK: App ID is not correct     // APP ID 配置不正確
      W/PgyerSDK: There is no android.permission.WRITE_EXTERNAL_STORAGE  // App 沒有存儲權限
      W/PgyerSDK: Please grant  permission if you use Pgyer SDK feature.//不能正常使用 SDK 功能
      
  • 红豆视频