快速集成安卓版 IPC SDK

更新时间:2024-11-26 02:37:36下载pdf

IPC SDK 依赖 Cube App SDK 中用户管理、设备配网、家庭管理、设备管理等部分,在此基础上实现了智能摄像机设备的功能。

准备工作

IPC SDK 基于 Cube App SDK 进行拓展开发,请参考 集成安卓版 Cube App SDK 完成前置工作。

快速集成

配置 build.gradle

  • 开发项目目录下的 build.gradle 配置。联系项目经理,获取仓库账号和密码。

    allprojects {
        repositories {
            ...
            // Tuya Maven repository URL.
           maven {
                url 'https://maven-other.tuya.com/repository/maven-private/'
                credentials {
                    // 联系 PM 申请私有源
                    username ?
                    password ?
                }
            }
        ...
        }
    }
    
  • app 目录下的 build.gradle 配置。

    defaultConfig {
        ndk {
           abiFilters "armeabi-v7a","arm64-v8a"
        }
    }
    packagingOptions {
        pickFirst 'lib/*/libc++_shared.so'
        pickFirst 'lib/*/libyuv.so'
        pickFirst 'lib/*/libopenh264.so'
    }
    dependencies {
        ...
        implementation 'com.thingclips.smart:thingsmart-ipcsdk:5.9.2-cube'
        ...
    }
    
    • IPC SDK 最低支持 Android 6.0.0(Api 23)版本。
    • IPC SDK 默认支持 armeabi-v7a、arm64-v8a。
    • IPC SDK 默认不支持 P2P 1.0 的设备,即 p2pType 取值为 1。如果需要使用,请联系您的涂鸦客户经理。
    • 如果您之前采用的是从 1.x.x-cube 版本,参考 迁移指南 进行升级。

AndroidManifest.xml 设置

AndroidManifest.xml 文件里,配置相应的权限。

<!-- sdcard -->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<!-- 网络 -->
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />

混淆配置

proguard-rules.pro 文件里,进行相应混淆配置。

-keep class com.thingclips.**{*;}
-dontwarn com.thingclips.**