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

EMAS Android 統一接入

為方便EMAS各產品SDK快速、輕量接入,EMAS提供了統一的SDK依賴方式,供各產品SDK添加依賴使用。用戶使用統一接入后,無需手動管理各產品SDK依賴,由插件自行接管完成讀取和配置。

操作步驟

步驟一、下載配置文件

請參照快速入門下載配置文件,并將配置文件(JSON文件)放到應用根目錄下的app文件夾中(/app/)。Android端配置文件為:aliyun-emas-services.json,其內容如下:

 {
  "config": {
    "emas.appKey":"xxxxx",
    "emas.appSecret":"xxxxxx",
    "emas.packageName":"com.xxx.xxx.demo",
    "hotfix.idSecret":"xxxxx",
    "hotfix.rsaSecret":"xxxxx",
    "httpdns.accountId":"xxxxx",
    "httpdns.secretKey":"xxxxxxxxx"
    "appmonitor.tlog.rsaSecret":"xxxxxxxxxx",
    "appmonitor.rsaSecret":"xxxxxxxxxx"
},
  "services": {
    "hotfix_service":{
        "status":1,
        "version":"X.X.X"      //X.X.X代表最新版本的SDK版本號
    },
    "ha-adapter_service":{
        "status":1,
        "version":"1.1.3.4-open"
    },
    "feedback_service":{
        "status":1,
        "version":"3.3.1"
    },
    "tlog_service":{
        "status":1,
        "version":"1.1.2.3-open"
    },
    "httpdns_service":{
        "status":1,
        "version":"1.3.2.3"
    },
    "apm_service":{
        "status":1,
        "version":"1.0.7.9-open"
    },
    "man_service":{
        "status":1,
        "version":"1.2.4"
    },
    "cps_service":{
        "status":1,
        "version":"3.1.12"
    }
},
  "use_maven":true,
  "proguard_keeplist":"\n#httpdns\n-keep class com.taobao.** {*;}\n-keep class com.alibaba.** {*;}\n-keep class com.ta.**{*;}\n-keep class com.ut.**{*;}\n-dontwarn com.taobao.**\n-dontwarn com.alibaba.**\n-dontwarn com.ta.**\n-dontwarn com.ut.**\n\n#cps\n-keep class com.taobao.** {*;}\n-keep class com.alibaba.** {*;}\n-keep class com.ta.**{*;}\n-keep class com.ut.**{*;}\n-dontwarn com.taobao.**\n-dontwarn com.alibaba.**\n-dontwarn com.ta.**\n-dontwarn com.ut.**\n-keepclasseswithmembernames class ** {\nnative <methods>;\n}\n-keepattributes Signature\n-keep class sun.misc.Unsafe { *; }\n-keep class com.alipay.** {*;}\n-dontwarn com.alipay.**\n-keep class anet.**{*;}\n-keep class org.android.spdy.**{*;}\n-keep class org.android.agoo.**{*;}\n-dontwarn anet.**\n-dontwarn org.android.spdy.**\n-dontwarn org.android.agoo.**\n\n#hotfix\n#基線包使用,生成mapping.txt\n-printmapping mapping.txt\n#生成的mapping.txt在app/buidl/outputs/mapping/release路徑下,移動到/app路徑下\n#修復后的項目使用,保證混淆結果一致\n#-applymapping mapping.txt\n#hotfix\n-keep class com.taobao.sophix.**{*;}\n-keep class com.ta.utdid2.device.**{*;}\n#防止inline\n-dontoptimize\n\n#man\n-keep class com.taobao.** {*;}\n-keep class com.alibaba.** {*;}\n-keep class com.ta.**{*;}\n-keep class com.ut.**{*;}\n-dontwarn com.taobao.**\n-dontwarn com.alibaba.**\n-dontwarn com.ta.**\n-dontwarn com.ut.**\n\n#feedback\n-keep class com.taobao.** {*;}\n-keep class com.alibaba.** {*;}\n-keep class com.ta.**{*;}\n-keep class com.ut.**{*;}\n-dontwarn com.taobao.**\n-dontwarn com.alibaba.**\n-dontwarn com.ta.**\n-dontwarn com.ut.**\n"
}

步驟二、引用配置文件

  1. 添加Maven倉庫和插件。

    1. 使用低于7.0版本的gradle插件。

      在項目級目錄/build.gradle中,添加阿里云Maven倉庫地址和emas-services插件。

      buildscript {
         repositories {
         google()
         mavenCentral()
          	maven {         // 添加Maven倉庫地址
                url 'https://maven.aliyun.com/nexus/content/repositories/releases/'
          	}
         }
        dependencies {
          	classpath "com.android.tools.build:gradle:a.b.c" //a.b.c低于7.0版本
          	// 添加emas-services插件
          	classpath 'com.aliyun.ams:emas-services:1.0.4'
          }
      }
      allprojects {
          repositories {
            	...
              maven {
                  url 'https://maven.aliyun.com/nexus/content/repositories/releases/'
              }
          }
      }
    2. 使用高于7.0版本的gradle插件。

      在項目級目錄/build.gradle中,添加emas-services插件。

      buildscript {
          repositories {
              google()
              mavenCentral()
              maven {         // 添加Maven倉庫地址
                url 'https://maven.aliyun.com/nexus/content/repositories/releases/'
            	}
          }
          dependencies {
              classpath "com.android.tools.build:gradle:a.b.c"  //a.b.c高于7.0版本
              // 添加emas-services插件
          		classpath 'com.aliyun.ams:emas-services:1.0.4'
          }
      }
      
      task clean(type: Delete) {
          delete rootProject.buildDir
      }

      在項目級目錄/setting.gradle中去添加阿里云Maven倉庫地址。

      dependencyResolutionManagement {
          repositories {
              google()
              mavenCentral()
              maven {         // 添加Maven倉庫地址
                url 'https://maven.aliyun.com/nexus/content/repositories/releases/'
            	}
          }
      }
  2. 應用插件

    在應用級build.gradle<project>/<app-module>/build.gradle)文件中添加代碼段,應用插件。

    apply plugin: 'com.android.application'
    apply plugin: 'com.aliyun.ams.emas-services' // 引用emas-services插件

步驟三、添加依賴

  1. 修改應用根目錄下的JSON配置文件,將不需要使用的產品service對應的status狀態置為0。

    status=0表示不使用對應產品,status=1表示使用對應產品 。

     {
      "config": {
        "emas.appKey":"xxxxx",
        "emas.appSecret":"xxxxxx",
        "emas.packageName":"com.xxx.xxx.demo",
        "hotfix.idSecret":"xxxxx",
        "hotfix.rsaSecret":"xxxxx",   
      },
      "services": {
        "hotfix_service":{
            "status":1,
            "version":"X.X.X"      //X.X.X代表最新版本的SDK版本號
        },
        "httpdns_service":{
            "status":0,
            "version":"1.3.2.3"
        },
    },
      "use_maven":true,
      "proguard_keeplist":"\n#httpdns\n-keep class com.taobao.** {*;}\n-keep class com.alibaba.** {*;}\n-keep class com.ta.**{*;}\n-keep class com.ut.**{*;}\n-dontwarn com.taobao.**\n-dontwarn com.alibaba.**\n-dontwarn com.ta.**\n-dontwarn com.ut.**\n\n#cps\n-keep class com.taobao.** {*;}\n-keep class com.alibaba.** {*;}\n-keep class com.ta.**{*;}\n-keep class com.ut.**{*;}\n-dontwarn com.taobao.**\n-dontwarn com.alibaba.**\n-dontwarn com.ta.**\n-dontwarn com.ut.**\n-keepclasseswithmembernames class ** {\nnative <methods>;\n}\n-keepattributes Signature\n-keep class sun.misc.Unsafe { *; }\n-keep class com.alipay.** {*;}\n-dontwarn com.alipay.**\n-keep class anet.**{*;}\n-keep class org.android.spdy.**{*;}\n-keep class org.android.agoo.**{*;}\n-dontwarn anet.**\n-dontwarn org.android.spdy.**\n-dontwarn org.android.agoo.**\n\n#hotfix\n#基線包使用,生成mapping.txt\n-printmapping mapping.txt\n#生成的mapping.txt在app/buidl/outputs/mapping/release路徑下,移動到/app路徑下\n#修復后的項目使用,保證混淆結果一致\n#-applymapping mapping.txt\n#hotfix\n-keep class com.taobao.sophix.**{*;}\n-keep class com.ta.utdid2.device.**{*;}\n#防止inline\n-dontoptimize\n\n#man\n-keep class com.taobao.** {*;}\n-keep class com.alibaba.** {*;}\n-keep class com.ta.**{*;}\n-keep class com.ut.**{*;}\n-dontwarn com.taobao.**\n-dontwarn com.alibaba.**\n-dontwarn com.ta.**\n-dontwarn com.ut.**\n\n#feedback\n-keep class com.taobao.** {*;}\n-keep class com.alibaba.** {*;}\n-keep class com.ta.**{*;}\n-keep class com.ut.**{*;}\n-dontwarn com.taobao.**\n-dontwarn com.alibaba.**\n-dontwarn com.ta.**\n-dontwarn com.ut.**\n"
    }
    說明

    • “use_maven”字段表示是否采用Maven遠程依賴的方式添加依賴,true表示使用遠程依賴,false表示使用本地libs下aar及jar的方式進行依賴( use_maven=false時,您需要在控制臺下載對應使用的產品sdk,并將對應jar&aar放置到應用工程libs目錄下,且與JSON中service對應開關對應 )。

    • 部分產品支持讀取JSON文件中的AppKey等信息,以二級產品具體的接入文檔為準。

    • EMAS支持基于Gradle的emas-services插件,同時添加多個二級產品的SDK依賴。

  2. 單擊Android Studio工具欄中的Sync Project with Gradle Files,同步配置文件的依賴。

    重要

    每次修改JSON文件后,需要清理Android Studio緩存,并再次執行此步驟,保證插件讀取最新的JSON配置。

  3. 單擊工具欄中的gradle build,運行成功后,會在"app/build/generated/source/emas-services/${variant.dirName}/ams_values/ams_proguard_rules.pro"生成對應的產品忽略規則,如果您使用了混淆,需要同步該規則文件到自身的項目中。

    重要

    采用EMAS統一接入時,請勿開啟資源混淆(非代碼混淆),若必須采用資源混淆,請按原來傳參方式接入。

支持使用配置文件統一添加依賴的產品包括:

產品

配置文件中對應的字段

初始化參考

移動推送

cps_service

Android SDK集成

移動熱修復

hotfix_service

Android SDK集成

性能分析/遠程日志的基礎庫

ha-adapter_service

無需單獨初始化

性能分析

apm_service

Android SDK

遠程日志

tlog_service

Android SDK

移動用戶反饋

feedback_service

Android SDK接入

HTTPDNS

httpdns_service

Android SDK接入

重要

  • ha-adapter_service屬于遠程日志、性能分析的基礎庫,所以不需要初始化。

  • 為避免在日志中泄露appkey/appsecret或App運行過程中產生的數據,建議線上版本關閉SDK調試日志。

  • 由于所有用戶使用統一的SDK接入,在接入過程中需要在代碼中設置appkey/appsecret/rsaSecret/IDSECRET/APPSECRET/RSASECRET/accountId/secretKey參數,而此類參數與計量計費密切相關,為防止惡意反編譯獲取參數造成信息泄露,建議您開啟代碼混淆,并進行App加固后再發布上線。

常見問題

  1. 新建項目接入后若有AndroidX兼容問題導致無法正常編譯。

    解決辦法:可嘗試在gradle.properties中新增android.useAndroidX=trueandroid.enableJetifier=true配置解決。

  2. 運行插件后提示:File aliyun-emas-services.json is missing. The Emas Services Plugin cannot function without it.

    解決方法:確保您將控制臺下載的aliyun-emas-services.json文件已經正確放置到應用根目錄下(/app/)。

  3. 接入全部產品后,如果遇到以下問題:?Error:Execution failed for task ‘:app:processDebugManifest’. Manifest merger failed with multiple errors, see logs.

  4. 解決方法:由于不同SDK設置的allowBackup屬性不同,建議在app/src/main/AndroidManifest.xml中添加如下代碼。

  5.     <Application
        ....
        android:allowBackup="false"
        tools:replace="android:allowBackup"/>
  6. 運行插件后提示:WARNING: Configuration ‘compile’ is obsolete and has been replaced with ‘implementation’ and ‘api’.

    解決方法:忽略此警告即可。為了兼容低版本Android studio,EMAS統一插件中使用的是compile,不影響使用。