创建品牌APP

更新时间:2019-06-18 11:47:59

每个项目中,允许创建一个自有品牌APP。每个APP应用包括4个实际的APP:

iOS 测试版本(用于开发调试)
正式版本(用于正式对外发布)
Android 测试版本(用于开发调试)
正式版本(用于正式对外发布

填写应用名称和包名,应用名称后期可以修改,包名后期不可修改。

关联产品

此步骤页面里会列出该项目下创建的所有产品,如果希望该APP可以绑定某个产品,请开启关联状态的开关。
关联后,在APP端调用待配网设备的API时,可以获取到该产品的信息。

1、开发状态决定产品是否具备进入正式版APP的能力:
“开发中”,具备默认进入测试版APP的能力;
“已发布”,具备进入正式版APP的能力;

2、关联状态决定测试版APP和正式版APP是否显示该产品的配网入口;
若开关开启,且该产品开发中,则默认展示在测试版APP的配网入口;
若开关开启,且该产品已发布,则默认展示在正式版APP的配网入口;
若开关关闭,该产品无论开发中还是已发布,测试版和正式版APP配网入口都隐藏;

用户账号

此步骤页面用来配置用户账号信息。
用户账号支持两种账号体系:内置账号体系和自有账号体系;
如果开发者没有自己的账号体系,可以采用内置账号体系,内置账号体系无需配置,已经内置在SDK套餐包中,提供文档调用方法;
如果开发者有自己的账号体系,可以采用自有账号体系,若勾选自有账号体系,则必须填写页面中的配置信息,否则自有账号将无法正常使用。

APP界面

平台提供了一些常用的免开发界面,如配网、设备界面、定时、自动化场景、意见反馈等智能生活类APP常用的页面模块。详见 插件使用指南

SDK下载

此步骤用来选择和下载SDK。

根据关联的产品,首先选择合适的 “API Level”(SDK套餐包版本),其次勾选和配置需要的SDK套餐项,然后平台会自动以此生成的SDK配置包;最后下载集成开发即可;

API Level 是SDK套餐项的功能版本等级,用来解决新老SDK套餐项不兼容问题,每个API Level包含一组SDK套餐项,不同API Level的SDK套餐项功能不同,先选择适合的API Level,查看版本详情;

IOS 集成 SDK

本 SDK 采用 cocoapods 管理依赖,建议采用 1.1.1 以上版本,SDK 的集成请参考以下步骤:

  • 应用依赖描述文件

请将下载的IOS SDK Podfile 文件放到工程文件夹根目录, 并将 Podfile 文件中的 target 名称修改成和 xcode 工程的设置一致。

然后执行命令

pod update

Android 集成 SDK

我们推荐的开发工具为 Google 官方的 Android Studio (建议最新的3.0.x) 。SDK 的集成, 请参考以下步骤:

  • 应用依赖描述文件

请把下载的Android SDK Pom dependency.gradle 文件放到 Module 的根目录下,然后在模块的根目录的 build.gradle 文件中添加如下代码

apply from:'dependency.gradle'

安全图片获取方法

(IOS)安全图片集成

下载后的安全图片的文件名为 yw_1222_07e8.jpg,请放到工程根目录,并将其拖入到 xcodeproj 根目录,如下二图所示:

  • 安全图片位于工程根目录

  • 安全图片位于 xcodeproj 根目录

  • iOS 上为了安全性,安全图片需要和应用 bundleID 搭配使用,请确保工程的 bundleID和平台上创建 appKey 时输入的 bundleID (包名)保持一致。

问题排查

  • 接入后运行工程 crash,报错 *** Terminating app due to uncaught exception 'com.openaccount.SecurityGuard.SECURITY_PICTURE_NOT_FOUND', reason: '(null)'

    1. 请检查应用创建时所输入的 bundleID 是否与当前工程 bundleID 一致

    2. 安全图片是否放到了工程根目录以及 xcodeproj 根目录

(Android)安全图片集成

下载后的安全图片的文件名为 yw_1222_xxxx.jpg ,请放到工程根目录,如下二图所示

  • 安全图片,请放置于Android工程目录中的 res/drawable 下

  • 签名配置, 因为 Android 端上,安全图片是需要和签名搭配使用的,所以要正确的配置签名:
android{

    signingConfigs {
        debug {
            storeFile file("./debug.keystore")
            storePassword '123456'
            keyAlias 'android'
            keyPassword '123456'
        }
    }

    buildTypes{
        debug {
            signingConfig signingConfigs.debug
        }
    }
}

results matching ""

    No results matching ""