博主基于华为开发者学堂1+X初级开发课程
由于博主版本与教程中所用不一致
因此遇到许多配置语法上的不一致问题
其他与博主开发环境有区别的朋友们,仅供参考
java 1.8
Android Studio 2020.3.1 Patch3
Gradle: Gradle 7.0.2
SDK: Android 4.0
使用手机号或其他形式注册并登陆账号(需接收验证码)
认证个人开发者,是否上架敏感应用,选否 > 使用身份证、银行卡、手机号等进行实名认证,提交完成
如下,项目名、包名、保存路径皆可自定,语言选Java,最小SDK选4.1
创建好项目后,点上方菜单栏Build->Generate Signed Bunlde/APK
新建jks文件
特别注意加重的四个地方:将jks文件放到项目文件的app目录下,设置KeyStore密码为’123456’,设置Key别名,Key密码设为’123456’,下面信息自填,完成后OK->Next
点击Finish
右侧Module级别的build.gradle文件,android闭包下添加这段签名配置(注意配置在buildTypes上方)
storeFile file()中填写刚刚创建的jks文件
keyAlias 对应key别名
keyPassword 对应key密码
storePassword 对应keyStore密码
在相同位置下方的buildTypes中添加以下代码
1.release中加入signingConfig signingConfigs.release
2.release下方添加debug闭包,加入如图两句代码
登录华为开发者联盟,进入右上角管理中心
进入我的项目
创建应用
选择平台android,设备手机,绑定android项目名和包名-如:com.example.myapplication
下载项目生成的.json文件,将其按步骤放在项目中
在项目级build.gradle文件下加入以下maven配置信息和依赖
在settings.gradle文件下配置如下一条maven,对应上面项目级build.gradle文件的maven
在模块级的build.gradle文件下,添加以下一条依赖包,对应build.gradle文件下的依赖
在模块级的build.gradle文件最上方plugins闭包中添加以下一条插件
注意事项:
1.keytool命令为java内置命令,需提前设置JAVA_HOME环境变量
2.-keystore 后面的路径对应项目路径\app\签名文件.jks
找到SHA256,配置到应用中的SHA256证书
在上方导航栏->API管理中将服务全部开启
在模块级的build.gradle文件下,添加以下一条依赖包
在proguard_rules.pro文件中添加如图代码,避免HMS Core SDK被混淆
在AndroidManifest.xml文件中添加网络和WIFI权限,如下
在AndroidManifest.xml文件中添加如下元数据,当用户手机上未安装HMS Core ( APK)或者版本过低时,可引导用户安装或升级HMS Core ( APK )
最后,全部步骤完成后,点击编译器右上角,大象样子的按键,同步项目,无报错就配置完成了
signingConfigs{
release{
storeFile file('HMSAccountApp.jks')
keyAlias 'HMSAccountApp'
keyPassword '123456'
storePassword '123456'
v1SigningEnabled true
v2SigningEnabled true
}
}
buildTypes {
release {
signingConfig signingConfigs.release
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
debug {
signingConfig signingConfigs.release
debuggable true
}
}
keytool -list -v -keystore 'jks文件路径'
// 项目级
maven { url 'https://developer.huawei.com/repo/' }
classpath 'com.huawei.agconnect:agcp:1.5.2.300'
// 模块级
id 'com.huawei.agconnect'
implementation 'com.huawei.hms:hwid:5.1.0.301'
implementation 'com.huawei.agconnect:agconnect-core:1.5.2.300'
// 混淆
-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.**{*;}
// 权限
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
// 元数据
<meta-data
android:name="com.huawei.hms.client.channel.androidMarket"
android:value="false"/>
Java 1.8.0_271:
https://www.aliyundrive.com/s/usj3zxdxhwa
Android Studio 2020.3.1 Patch3:
https://www.aliyundrive.com/s/EaDqU6wvUSh
项目源文件
https://www.aliyundrive.com/s/UDRwZjNJY8U
- signingConfigs写在了buildTypes下方
- 依赖包路径hms后面的 : 打成了 .
- 混淆配置中Annotation两边的 * 打成了 ’
圈中的 . 后面两个 * 只打了一个
- 在运行在中出现以下或类似报错
将在模块级的build.gradle文件下,默认配置中的minSdk和targetSdk版本改为如图所示
文章浏览阅读137次。@Test public void demo8() { List<String> list = new ArrayList<String>(); list.add("a"); list.add("b"); list.add("c"); list.add("d"); list.add("a"); List<String> collect = list.st..._.stream(). sorted((a,b)->
文章浏览阅读1w次。之前有客户要求,在windows server2012上要求安装Oracle 11gR2 RAC,所以在自己的虚拟机上进行了测试。win 2012没有安装成功,使用2008报同样的错,如图查看集群状态,节点1完全OK,但是alert日志中:2014-12-26 16:54:23.967: [cssd(3748)]CRS-1601:CSSD 重新配置完毕。活动节点为 windb1 _win2008安装oracle 12 ora-20802
文章浏览阅读837次。Ubuntu安装docker ce、docker-compose、docker-machine、配置镜像加速 | 江湖博客www.limuke.top1、Ubuntu安装Docker-CE【1】卸载旧版本旧版本的 Docker 称为 docker 或者 docker-engine,使用以下命令卸载旧版本:sudo apt-get remove docker docker-engine docke..._docker-compose 中国电子科技大学源
文章浏览阅读1.3k次。图像的形态学处理有很多种,其中凸包处理是一种比较常见的高级方法,其主要原理是:生成一个凸多边形,这个凸多边形将图片中所有的白色像素点都包含在内的运算。Python中有相应的实现方法。形态学处理,除了最基本的膨胀、腐蚀、开/闭运算、黑/白帽处理外,还有一些更高级的运用,如凸包,连通区域标记,删除小块区域等。形态学目的如下:图像预处理(去噪声,简化形状)增强物体结构(抽取骨骼,细化,粗化,凸包,物体标记)从背景中分隔物体物体量化描述(面积,周长,投影,Euler-Poincare特征)_python opencv mask凸包计算
文章浏览阅读1.6w次,点赞7次,收藏13次。每一棵二叉树中都有左右两棵子树,子树中又有无数节点,那你们知道子树中的节点该怎么计算吗?快来跟小编了解一下吧。二叉树算法概念对于任何一棵二叉树来说,其叶子结点的数目为n0,且其度数为2的结点数n2,则n0=n2+1.证明:对于此二叉树:设其度数为1的结点数为n1. 从下往上看,每个结点都会有一个边朝上,除了根结点,则边总数为:N=n0+n1+n2-1 ①从上往下看,度数为2的结点有两个边,度数为1..._二叉树节点数计算
文章浏览阅读908次。英文说明1、可以与服务器联通,接发消息2、物联网 协议 supported by nvmsgbroker plugin is listed in the DeepStream Plugin guide_deepstream-test5
文章浏览阅读614次。这篇文章主要介绍了Mybatis调用Oracle存储过程的方法介绍,需要的朋友可以参考下1:调用无参数的存储过程。创建存储过程:Mapper.xml 配置:经测试其他标签(update、insert、select)也可以。Mapper.javaMapperTest.java 测试2:有参数的存储过程调用:2.1存储过程的创建:2.2Mapper.xml 的配置:2.3Mapper.java2.4M..._mybtis oracle
文章浏览阅读380次。1.TEZ在hdfs上的jar包修复su -l hadoop -c ‘hadoop dfs -rm -r /apps/tez-*’su -l hadoop -c ‘hadoop fs -copyFromLocal /opt/apps/ecm/service/tez/0.9.2-1.2.1/package/tez-0.9.2-1.2.1 /apps’su -l hadoop -c ‘hadoop fs -copyFromLocal /opt/apps/extra-jars/smartdata-*.jar_failed to rename hdfslocatedfilestatus
文章浏览阅读6.5w次,点赞13次,收藏21次。在网上找了半天也没找到问题解决方法,之后进到project structure这个页面发现problem那有显示错误,我这是解决完了的截图,如果你的problem后面有数字点进去,右侧页面出现问题在最后有一个[Fix]按钮,你点击一下把你丢失的文件add,之后在运行就好了_artifact untitled:war exploded: artifact is being deployed, please wait..
文章浏览阅读861次。Clock In SAIfs Sample Rate.8k Hz - Telephone11.025k Hz22.05k Hz - Radio Broadcast32k Hz - miniDV, DAT (LP mode)44.1k Hz - CD, MPEG-1 Audio(VCD, SVCD, MP3)47.25k Hz - Commercial PCM Recorde_sai clock
文章浏览阅读536次。获取获取浏览器在请求时携带的cookie数据,使用超全局数组变量, $_COOKIE完成对cookie的获取。 其中每个 $_COOKIE 中的元素,对应一个cookie变量,元素的键就是cookie的key,元素的值就是cookie的value。时间设置通过cookie的第三个参数可以设置,有效期采用一个时间戳进行表示。 浏览器在向服务器发送请求时,会检测到cookie是否有效,只有没有过有_$keys = $_cookie['key'];
文章浏览阅读381次。GlusterFS 分布式文件系统的卷类型及配置GlusterFS概述GlusterFS简介GlusterFS特点GlusterFS术语.模块化堆栈式架构GlusterFS工作原理GlusterFS工作流程:弹性HASH算法GlusterFS的卷类型分布式卷分布式卷的特点创建分布式卷条带卷特点创建条带卷复制卷(类似Raid1)特点创建复制卷分布式条带卷创建分布式条带卷分布式复制卷创建分布式复制卷项目环境:GlusterFS概述GlusterFS简介开源的分布式文件系统由存储服务器、客户端以及NFS/_gluster卷