当我们在使用电子设备时,存储无疑是最基础、最不可或缺的功能,随着信息膨胀,单纯依靠设备内存,已经不足以支撑储存全部数据,云空间应运而生。
云空间,顾名思义就是将大量数据存储在云端,减少设备内存的占用,提高设备运行效率,但云空间的功能远不止单纯的存储,智能移动终端的多样化、操作系统的生态化,使得数据的多端协同成为必然趋势,云空间的优势就在于此。
一直以来,用户数据的存储与管理都是开发者关注的重点,如何存储海量数据,如何安全便捷地管理数据,如何确保数据多端协同,成为开发者必须解决的问题。
华为云空间服务就是开发者们的好帮手,它可以为应用提供云端存储功能,将用户在使用您开发的应用时产生的文件保存到云盘,也可以下载、上传和搜索华为云盘中的所有文件,包括照片、视频以及文档等,也可以让用户对文件进行评论、回复和查询历史版本。
同时华为云空间为各类数据提供了全方位的安全保障,云数据库可以有效地防止用户隐私或敏感信息在云侧被窃取,让用户更安全、便捷地管理数据。
华为云空间服务的优势有以下几点:
- 安全性。不管是帐号认证,还是数据传输及存储,华为云空间服务均具备加密保护机制,提供基于用户身份和数据模式匹配的声明式安全控制及密态数据库能力,授权管理、密钥算法、隐私保护都能确保用户数据安全性。
- 多端协同。多端数据一致,多端体验一致,多端协同编辑,数据实时同步,离线时数据自动保留在端侧,网络恢复后自动和云端同步,各种设备无缝切换,协同管理帮助应用提升用户体验。
- 可靠文件管理。华为云空间服务将文件储存在云端,永不损坏、永不丢失。
您只需要集成一个简单的SDK,就不用关注云侧系统的开发、部署和运维,从而聚焦于业务逻辑开发。那么,如何集成华为云空间服务?
针对Android Studio开发环境,华为提供了Maven仓集成方式的Drive SDK和HMS Core SDK包。在开始开发前,您需要将Drive SDK和HMS Core SDK集成到您的Android Studio开发环境中。
添加当前应用的AppGallery Connect配置文件
- 登录AppGallery Connect网站,点击“我的项目”。
- 在项目列表中找到您的项目,在项目中点击需要集成HMS Core SDK的应用。
- 在“项目设置 > 常规”页面的“应用”区域,点击“agconnect-services.json”下载配置文件。
- 将“agconnect-services.json”文件拷贝到应用级根目录下。
配置HMS Core SDK的Maven仓地址
- 打开Android Studio项目级“build.gradle”文件。
- 添加HUAWEI agcp插件以及Maven代码库。
· 在“buildscript > repositories”中配置HMS Core SDK的Maven仓地址。
· 在“allprojects > repositories”中配置HMS Core SDK的Maven仓地址。
· 如果App中添加了“agconnect-services.json”文件则需要在“buildscript > dependencies”中增加agcp配置。
buildscript {
repositories {
google()
jcenter()
// 配置HMS Core SDK的Maven仓地址。
maven {url 'https://developer.huawei.com/repo/'}
}
dependencies {
...
// 增加agcp配置。
classpath 'com.huawei.agconnect:agcp:1.4.2.300'
}
}
allprojects {
repositories {
google()
jcenter()
// 配置HMS Core SDK的Maven仓地址。
maven {url 'https://developer.huawei.com/repo/'}
}
}
说明
Maven仓地址无法直接在浏览器中打开访问,只能在IDE中配置。如需添加多个Maven代码库,请将华为公司的Maven仓地址配置在最后。
添加编译依赖
- 打开应用级的build.gradle文件。
- 添加AGC插件配置。请根据实际情况选择:
· 方式一:在文件头部声明下一行添加如下配置。apply plugin: 'com.huawei.agconnect'
· 方式二:在plugins中添加如下配置。
plugins {
id 'com.android.application'
//添加如下配置
id 'com.huawei.agconnect'
}
- 在“dependencies ”中添加如下编译依赖。
dependencies {
implementation 'com.huawei.hms:drive:{version}'
implementation 'com.huawei.hms:hwid:{version}'
implementation 'com.huawei.hms:push:{version}'
}
说明
{version} 替换为实际的SDK版本号,如:
implementation 'com.huawei.hms:drive:5.0.0.302'
implementation 'com.huawei.hms:hwid:4.0.4.300'
implementation 'com.huawei.hms:push:4.0.3.300'
说明
使用Drive服务需要开发者同时集成华为帐号服务和华为推送服务。
多语言设置
· 如果您的应用不需要设置只支持某些特定语言,则请忽略本步骤。应用将默认支持所有HMS Core SDK支持的语言。
· 如果您的应用需要设置只支持某些特定语言,则可通过本步骤配置。
a. 打开应用级的“build.gradle”文件。
b. 在“android > defaultConfig”中新增“resConfigs”,配置需要支持的语种,配置格式如下:
android {
defaultConfig {
...
resConfigs "en", "zh-rCN", "需要支持的其他语言"
}
}
HMS Core SDK支持的语言列表请参见HMS Core SDK支持的语言。
同步工程
在完成以上的配置后,点击工具栏中的gradle同步图标,完成“build.gradle”文件的同步,将相关依赖下载到本地。
说明
如果出现错误,请检查网络连接是否正常,以及检查“build.gradle”文件是否正确。
配置混淆脚本
开发者编译APK前需要配置混淆配置文件,避免混淆HMS Core SDK导致功能异常。
- 打开Android工程的混淆配置文件“proguard-rules.pro”。
- 加入排除HMS Core SDK的混淆配置。
-ignorewarnings
-keepattributes *Annotation*
-keepattributes Exceptions
-keepattributes InnerClasses
-keepattributes Signature
-keepattributes SourceFile,LineNumberTable
-keep class com.huawei.hianalytics.**{*;}
-keep class com.huawei.updatesdk.**{*;}
-keep class com.huawei.hms.**{*;}
-keep class com.huawei.cloud.services.drive.**{*;}
-keep class com.huawei.cloud.base.** {*;}
-keep class com.huawei.cloud.client.** {*;}
-keep class com.huawei.cloud.base.json.JsonError{*;}
-keep class com.huawei.cloud.base.json.JsonErrorContainer{*;}
- 如果开发者使用了AndResGuard,需要在混淆配置文件中加入
1. AndResGuard允许清单。
"R.string.hms*",
"R.string.connect_server_fail_prompt_toast",
"R.string.getting_message_fail_prompt_toast",
"R.string.no_available_network_prompt_toast",
"R.string.third_app_*",
"R.string.upsdk_*",
"R.layout.hms*",
"R.layout.upsdk_*",
"R.drawable.upsdk*",
"R.color.upsdk*",
"R.dimen.upsdk*",
"R.style.upsdk*",
"R.string.agc*"
欲了解HMS Core更多详情,请参阅:
华为开发者联盟官网
获取开发指导文档
参与开发者讨论请到CSDN社区或者Reddit社区
下载demo和示例代码请到Github或者Gitee
解决集成问题请到Stack Overflow
原文链接:https://developer.huawei.com/...
原作者:胡椒
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。