这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录 前一修订版 后一修订版 | 前一修订版 | ||
nunaios集成操作手册 [2020/02/12 17:56] penglin |
nunaios集成操作手册 [2022/01/10 17:22] (当前版本) wenxian |
||
---|---|---|---|
行 2: | 行 2: | ||
为完全解除应用程序(LAUNCHER、TVAPP 等OTT 应用)和以下字段的耦合,所以我们约定使用内容提供者(android 四大组件之一的ContentProvider)作为应用程序获取相关信息的桥梁,从而提升我们之间的合作效率。以下文档为具体的接口定义细节,聪明的你只需要百度下Provider 的使用方式即可ContentProvider 的使用,并且把对应字段的值提供下~,而其他应用程序只管获取,做到谁用谁取。 | 为完全解除应用程序(LAUNCHER、TVAPP 等OTT 应用)和以下字段的耦合,所以我们约定使用内容提供者(android 四大组件之一的ContentProvider)作为应用程序获取相关信息的桥梁,从而提升我们之间的合作效率。以下文档为具体的接口定义细节,聪明的你只需要百度下Provider 的使用方式即可ContentProvider 的使用,并且把对应字段的值提供下~,而其他应用程序只管获取,做到谁用谁取。 | ||
- | + | \\ | |
- | ====== 修改记录 ====== | + | {{ :02_nunaios集成操作手册1.6.pdf |}} |
- | • V1.0 邓晓天 2018-06-01 | + | \\ |
- | + | {{ :abstractcontentprovider.zip |}} | |
- | • V1.1 邓晓天 2018-08-07 | + | |
- | + | ||
- | ====== 1. 实现约定 (第一步) ====== | + | |
- | 你需要提前定义好如下配置: | + | |
- | + | ||
- | • URI :content://com.mgtv.os.provider/\\ | + | |
- | + | ||
- | • 授权:com.mgtv.os.provider\\ | + | |
- | + | ||
- | • 权限:读写权限\\ | + | |
- | + | ||
- | • method:GET_DEVICE_METHOD\\ | + | |
- | + | ||
- | • arg:ARG_DEVICE_MODEL(设备型号)、ARG_DEVICE_BRAND(设备厂商名)、ARG_DEVICE_MAC(有线网络MAC 地址)、ARG_DEVICE_CHIP_MANUFACTURE(设备芯片厂商名)、ARG_DEVICE_CHIP_MODEL(芯片型号)、ARG_DEVICE_UTC(ROM包utc 时间)、ARG_DEVICE_OS_VERSION(当前版本号)、ARG_DEVICE_OS_LINE(设备版本线)\\ | + | |
- | + | ||
- | ====== ====== 2. 实现方式 (第二步) ====== ====== | + | |
- | + | ||
- | + | ||
- | + | ||
- | • 在我们的清单文件AndroidManifest.xml 中注册声明MGTV_PROVIDER_AUTHORITY 权限的provider,具体如下:\\ | + | |
- | <provider android:name=".ContentProviderImp" android:authorities="com.mgtv.os.provider" android:exported="true" />\\ | + | |
- | + | ||
- | + | ||
- | • 以下是我们提供的抽象类AbstractContentProvider.java 你们必须要继承并实现其中的方法,我们会通过这些字段去获取对应的数据以备后期开发:\\ | + | |
- | + | ||
- | /**\\ | + | |
- | * 获取设备机型,返回例如:55MZ1,需要实现,用作ota 字段之一且作为同一类型设备的唯一key\\ | + | |
- | * 这里必须按照实际返回,否则会影响OTA 升级!!\\ | + | |
- | */\\ | + | |
- | public abstract String getDeviceModel();\\ | + | |
- | + | ||
- | /**\\ | + | |
- | * 获取设备品牌或厂家,由合作方实现,返回自定义数据;例如:爱芒果品牌返回IMGO,长虹返回CH,东芝返回DZ;\\ | + | |
- | */\\ | + | |
- | public abstract String getBrand();\\ | + | |
- | + | ||
- | /**\\ | + | |
- | * 获取有线网络MAC 地址,返回格式例如:FC-A3-86-29-84-E6,需要实现\\ | + | |
- | */\\ | + | |
- | public abstract String getDeviceMAC();\\ | + | |
- | + | ||
- | /**\\ | + | |
- | * 获取设备主芯片制造商,返回例如:hisi,需要实现,用作ota 字段之一\\ | + | |
- | */\\ | + | |
- | public abstract String getChipManufacture();\\ | + | |
- | + | ||
- | /**\\ | + | |
- | * 获取设备主芯片型号,返回例如:v620,需要实现,用作ota 字段之一\\ | + | |
- | */\\ | + | |
- | public abstract String getChipModel();\\ | + | |
- | + | ||
- | /**\\ | + | |
- | * 获取设备当前编译的ROM utc 时间,返回例如:1525415001,需要实现,用作ota 版本比较的值之一\\ | + | |
- | */\\ | + | |
- | public abstract String getDeviceUTC();\\ | + | |
- | + | ||
- | /**\\ | + | |
- | * 获取设备系统版本,返回当前系统版本号,需要实现,用作ota 升级检测的维度之一,用于做系统升级时候的一个判断基准,当系统升级之后,这个值可能会改变ROM 版本号因数据统计需求,请以“3.8.”开通,建议不带字母\\ | + | |
- | */\\ | + | |
- | public abstract String getDeviceOSVersion();\\ | + | |
- | + | ||
- | /**\\ | + | |
- | * 获取设备系统版本线,需要实现,类似 dev 或者 release 等,相同机型配置,输出给不同渠道,可以用这个作为ota 升级检测的字段之一,不要有空格\\ | + | |
- | */\\ | + | |
- | public abstract String getOSROMVersionLine();\\ | + | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||