文章目录
最近在研究阿里云自有app,这是自己的心得。
一、新建工程,配置gradle,导入.so文件,生成apk
-
建立emptyActivity

-
随便起命,但是注意要包名要以com.开头

-
打开app的gradle,建立存储**.so动态链接库文件**的libs。


gradle同步更新。

可以看到libs被创建在app的目录下

-
获得.so库,.so库可以在官方下载demoSDK的APK包中解压后,在其lib中获得。




-
添加.so文件到工程的libs里面




剩下的库同理。

-
修改gradle(app)的defaultConfig

最后sync同步一下 -
修改gradle(app)的buildTypes


最后同步一下。
signingConfigs { debug { v2SigningEnabled false storeFile file("F:\\Android Studio\\key\\mykey.jks") storePassword 'p1556573968' keyAlias 'key0' keyPassword 'p1556573968' } release { v2SigningEnabled false storeFile file("F:\\Android Studio\\key\\mykey.jks") storePassword 'p1556573968' keyAlias 'key0' keyPassword 'p1556573968' } } buildTypes { release { minifyEnabled false buildConfigField "String", "BUILD_COUNTRY", "\"CHINA\"" signingConfig signingConfigs.release proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } debug { minifyEnabled false buildConfigField "String", "BUILD_COUNTRY", "\"CHINA\"" signingConfig signingConfigs.debug proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } } -
创建密钥,打包生成apk文件。









点击finishi之后会自动生成apk

-
分析apk,查看是否包含了lib,lib中的确保有libsgmain.so文件
-

或者 在debug中选择analyze APK,然后选择apk分析




二、上传apk,集成安全图片,下载SDK
- 上传apk生成安全图片







失败可以刷新网页,关闭占用apk的程序 - 下载安全图片到工程的drawable文件夹中。


- 生成下载SDK




三、SDK的集成
- 把解压的文件夹中的dependency.gradle复制放在app目录下


- 在gradle中添加
apply from:'dependency.gradle',然后Sync Now 同步gradle。


- 把AndroidManifset.xml文件中的allowBackup改为false

- 添加编译项

c
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}

四、初始化SDK
- 创建一个集成SDK中的AApplication的类。



- 重新onCreate()方法


c
IoTSmart.InitConfig initConfig = new IoTSmart.InitConfig()
// REGION_ALL表示连接全球多个接入点;REGION_CHINA_ONLY表示直连中国内地接入点
.setRegionType(REGION_CHINA_ONLY)
//
.setProductEnv(IoTSmart.PRODUCT_ENV_PROD)
// 是否打开日志
.setDebug(true);
IoTSmart.init(this, initConfig);
Log.d("myAppliction","IoTSmart.init()成功!!!!!!");
- 在清单文件中,让application继承myapplicton,方法如下。

- 最后进行调试,看到dd'bu'g信息判断是否初始化成功。



初始化成功。