全部产品

发布SDK接入

在接入阿里云移动 SDK 之前,请明确:• 您已在阿里云移动研发平台 ( EMAS ) 上建立相关产品,并获得对应的appId和appSecret

一、Android SDK接入

1、添加依赖

1.1 Maven仓库依赖接入

在项目build.gradle中添加阿里云Maven仓库地址:

repositories {
    maven { url "http://maven.aliyun.com/nexus/content/repositories/releases" }
}

app模块的build.gradle的dependencies节点内添加:

compile 'com.taobao.android:update-main:1.1.1-open'

2、接入服务

在自定义Application类的onCreate里面启动服务:

public class MyApplication extends Application {
    @Override
    public void onCreate() {
        initUpdate();
    }
    private void initUpdate() {
        //以下引号部分需要客户根据自己的应用进行配置()
        Config config = new Config();
        config.group = "appkey" + "@android";   //填写appkey
        config.ttid = "渠道号";    //渠道号
        config.isOutApk = false;
        config.appName = "appname"; //app name
        UpdateRuntime.init(this, config.ttid, config.appName, config.group);
        ApkUpdater apkupdate = new ApkUpdater(getApplicationContext(), "appkey", "appsecret", config.group, "渠道号", config.ttid);
        UpdateAdapter updateAdapter = new UpdateAdapter();
        UpdateDataSource.getInstance().init(this, config.group, config.ttid, config.isOutApk, "appkey", "appsecret", "渠道号", updateAdapter);
        UpdateDataSource.getInstance().startUpdate(false);
    }
}

AndroidManifest.xml里面指定自定义Application:

<application
    android:name=".MyApplication"
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:supportsRtl="true"
    android:theme="@style/AppTheme" >
</application>

AndroidManifest.xml里面Application标签内注册FileProvider(android.support.v4.content.FileProvider/androidx.core.content.FileProvider),如示例:

<provider
    android:name="android.support.v4.content.FileProvider"
    android:authorities="${applicationId}.update.provider"
    android:exported="false"
    android:grantUriPermissions="true">
    <meta-data
    android:name="android.support.FILE_PROVIDER_PATHS"
    android:resource="@xml/file_provider" />
</provider>

二、混淆配置

如果开启了混淆,需要增加以下配置到您的混淆配置文件中:

#-------------------update-main------------------------------
-keepclassmembers class * {
    @com.google.inject.Inject <init>(...);
}
# There's no way to keep all @Observes methods, so use the On*Event convention to identify event handlers
-keepclassmembers class * {
    void *(**On*Event);
}
-keepclassmembers class ** {
    public <init>(android.content.Context);
}
-keepclassmembernames class **.R$* {*;}
-keepclassmembernames class **.R {*;}
-keepclassmembers class **{
    public static final <fields>;
}

-keep  class com.taobao.update.apk.MainUpdateData{*;}
-keep  class com.taobao.update.apk.ApkUpdater{*;}

#-------------------update-common------------------------------
-keep class com.taobao.update.common.framework.**{*;}
-keep class com.taobao.update.common.utils.**{*;}
-keep  class com.taobao.update.common.dialog.**{*;}
-keep  class com.taobao.update.common.Config{*;}
-keep class com.taobao.update.common.dialog.CustomUpdateInfo{
    public <methods>;
}
-keep interface com.taobao.update.common.dialog.UpdateNotifyListener{*;}

三、测试验证

在您完成上述步骤之后,您可以通过https://emas.console.aliyun.com/新建产品进行构建发布来进行测试。

四、技术支持

EMAS通过钉钉群的形式为您的日常问题进行解答,钉钉群内会不定期推送更新通知等各类信息。请务必下载钉钉,包括PC版和移动版。

1. EMAS组件服务钉钉群:

• 性能分析:23166990

• 远程日志:23352396

• 崩溃分析:21763813

• 移动热修复: 群四:23103350( 其它群已满 )

• HTTPDNS: 11777313

• 移动推送 : 11795523

• 移动测试 : 11762195

• Mobile DevOps : 30144463

2. 工单

可以通过工单提交问题反馈,工单提交地址为:

https://selfservice.console.aliyun.com/ticket/createIndex