日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

接入 Android 常見問題

查看以下常見問題列表,單擊具體的問題即可查看相應解答。

在華為 EMUI 10 系統中 input file 標簽無法打開相機

由于華為10 系統 URI 的實現和標準 Android 存在部分差異,因此,在華為 10 上可能存在無法打開攝像機的問題。您需要執行以下操作以解決這個問題。

1. 升級基線

  • 如果您采用的是 32 系列基線,則需要升級至 10.1.32.18 及以上。

  • 如果您采用的是 60 系列基線,則需要升級至 10.1.60.9 及以上。

  • 如果您采用的是 68 系列基線,則需要升級至 10.1.68-beta.3 及以上。

2. 配置 FileProvider

您可以復用您現有的 FileProvider,也可以新建一個 FileProvider。

  1. 新建 Java 類,繼承 FileProvider。

    import android.support.v4.content.FileProvider;
    public class NebulaDemoFileProvider extends FileProvider {
    }
  2. 在 res/xml 中新建 nebula_fileprovider_path.xml。

    <?xml version="1.0" encoding="utf-8"?>
    <paths xmlns:android="http://schemas.android.com/apk/res/android">
     <external-path name="external" path="."/>
    </paths>
  3. 在 AndroidManifest 中加入配置。

    <provider
     android:name="com.mpaas.demo.nebula.NebulaDemoFileProvider"
     android:authorities="com.mpaas.demo.nebula.provider"
     android:exported="false"
     android:grantUriPermissions="true">
     <meta-data
         android:name="android.support.FILE_PROVIDER_PATHS"
         android:resource="@xml/nebula_fileprovider_path" />
    </provider>
    說明

    此處 android:authorities 的值 com.mpaas.demo.nebula.provider 為 mPaaS 的代碼示例信息,您需要根據自己的應用進行設置,并且不能設置為 com.mpaas.demo.nebula.provider,以免與其他 mPaaS 應用產生沖突。

3. 實現 H5NebulaFileProvider

  1. 新建 Java 類,實現 H5NebulaFileProvider,實現 getUriForFile 方法,在該方法中,調用上面實現的 FileProvider 生成 URI。

    public class H5NebulaFileProviderImpl implements H5NebulaFileProvider {
     private static final String TAG = "H5FileProviderImpl";
    
     @Override
     public Uri getUriForFile(File file) {
         try {
             return getUriForFileImpl(file);
         } catch (Exception e) {
             H5Log.e(TAG, e);
         }
         return null;
     }
    
     private static Uri getUriForFileImpl(File file) {
         Uri fileUri = null;
         if (Build.VERSION.SDK_INT >= 24) {
             fileUri = NebulaDemoFileProvider.getUriForFile(LauncherApplicationAgent.getInstance().getApplicationContext(), "com.mpaas.demo.nebula.provider", file);
         } else {
             fileUri = Uri.fromFile(file);
         }
         return fileUri;
     }
    }
  2. 注冊 H5NebulaFileProvider。 在 mPaaS 初始化完成之后,啟動離線包之前,對 H5NebulaFileProvider 進行注冊,注冊一次即可全局生效。

    H5Utils.setProvider(H5NebulaFileProvider.class.getName(), new H5NebulaFileProviderImpl());

如何在 Library 中使用/依賴 mPaaS

在使用 mPaaS 框架過程中,有時需要復用模塊。復用時需要按照使用 Module 依賴的方式添加模塊。本文以復用 mPaaS 掃碼組件的 Module 為例進行說明。

前提條件

已按照原生 AAR 接入方式將工程接入 mPaaS。

操作步驟

  1. 在 Android 工程中創建 Android Library 類型的模塊 scan

  2. 在新創建的 scan 模塊的 build.gradle 文件中添加 api platform("com.mpaas.android:$mpaas_artifact:$mpaas_baseline")。示例如下:

     dependencies {
         ……
         //moudle 里使用 mPaaS 組件功能時,必須添加。
         api platform("com.mpaas.android:$mpaas_artifact:$mpaas_baseline")
    
         ……
      }
  3. 通過 Android Studio mPaaS 插件為 scan 模塊安裝掃碼組件。具體菜單路徑為:mPaaS > 原生 AAR 接入 > 配置/更新組件 > 開始配置。安裝后,掃碼組件會自動加載。

  4. 配置 App 主工程。

     plugins {
         id 'com.android.application'
    
         ......    
         //必須在 app 下的 build.gradle 文件中添加 baseline.config(基線)。
         id 'com.alipay.apollo.baseline.config'
     }
  5. 調用組件模塊。在使用掃碼組件的地方,導入 scan 模塊。

     dependencies {
         api platform("com.mpaas.android:$mpaas_artifact:$mpaas_baseline")
    
         ....
         api project(':scan')//掃碼組件
     }

如何解決運行時出現的 608 錯誤或 libsgmain 的 native 錯誤

在運行時如果發生異常,在 Android Studio 運行日志中搜索關鍵字 SecExcetpion,發現有 608 錯誤碼或 libsgmain 的 native 錯誤,可以按照以下步驟進行排查。

  1. 檢查是否存在 res/drawable/yw_1222.jpg 文件。

    • 檢查 config 配置文件中是否有 Base64。

    • 檢查 Gradle 插件 baseline.update 或者 baseline.config 是否有應用。2

  2. 檢查 META-INF 是否有 CERT.SF、MANIFEST.MF、和 CERT.RSA 等三個文件.

  • app/build.gradle 打開 v1SignEnabled

  • 項目根目錄下的 build.gradle 中是否有 apply plugin: 'com.alipay.apollo.optimize'3

執行以上檢查步驟后,且確認結果檢查無誤,則說明在控制臺上傳的簽過名的 APK 包有問題,如簽名錯誤,需重新上傳 APK 包。