这里需要三个数据,调试版的秘钥,发布版的秘钥,和你的应用包名;
这里我们一个一个来说明怎么获取,
① 获取应用包名
首先要创建一个项目才行,
File → New → New Project
默认是选择Empty Activity(空的活动),这里不用改动,点击Next进入下一步
认真的看一下下图,根据自己的信息来填写资料,没有问题就Finish创建项目。
项目创建完成之后打开AndroidManifest.xml文件复制包名,到百度开放平台注册粘贴上,
这时,先在手机上运行一下,当你看到这个画面的时候:
就说明你目前的测试环境没有问题,测试版本也没有问题,因为通过USB安装就是属于调试版本,然后就可以获取开发版SHA1了
② 获取开发版SHA1
鼠标点击右侧边栏的Gradle→ app→Tasks→ android→ 双击signingReport
当你的AS版本为最新版时,你会发现这里好像有点不一样了,找不到signingReport了,这是AS更新之后默认这个功能关掉了,需要去手动打开它。在设置里面
如下图这里默认勾选上了,现在把这根勾选上的去掉,
然后Sync,或者点击这个小图标。
然后你的项目的右侧边栏就会出现这个熟悉的task了。
我们来看一下详细的日志
这个地方别找错啊,否则会出现你意想不到的错误,要想后面不出问题,前面的路就要铺平,不要粗心大意。这里每个人生成的秘钥都是唯一的,所以别复制我的上去,用自己生成发布版SHA1,复制到刚才的创建应用的网页上。
③ 获取发布版SHA1
Build → Generate Signed Bundle or APK
然后选择APK , Next下一步
这里是没有秘钥的,需要创建一个新的秘钥,点击 Create New…
先创建项目的jks文件
命名我就是用的GoodWeather,则生成jks文件就是GoodWeather.jks,然后点OK,
对于Demo来说你可以把密码设置的一样,这样会减少你的错误发生,你设置的密码最好是有记忆点,否则到时候忘记了再找回就比较麻烦了(PS:我是经历过这个环节),然后点击OK,会出现一个这样的提示
这个弹窗的意思就是告诉你,你这样创建秘钥已经不符合现在的标准了,但是你依然可以这样创建,我印象中AS2.X版本的时候这样创建是没有问题,点击OK进入下一步。
上面还有一个地方要改一下就是APK生成的位置,我不希望它生成在项目里面的默认文件夹,因为找起来不方便,还有一个原因就是clean Project的时候会删除掉你的APK,不管是调试版还是发布版,点击那个小文件夹进行路径修改
可以看到,我放的位置和我刚才生成jks是同一级,然后创建了一个GoodWeather的文件夹用来存放发布版的APK文件。
点击Finish
等进度条跑完就创建完成了。
这个时候你的APK就创建成功了,你可以打开文件夹看一下这个APK
这个就是你生成的APK所在地址。以你自己前面设置的路径为准。接下来进入Terminal工具输入如下图所示的命令和jks存放路径
//如果你前面的步骤和我一模一样的话,这里你就可以复制粘贴,不一样的话就修改jks的路径就可以了
keytool -list -v -keystore E:\APK\GoodWeather.jks
输入这行命令之后回车会让你输入密码,就是之前创建秘钥的的那个密码,输入的过程中你是看不见密码的,光标也不会移动,不过不用担心,输入无误后回车就可以了
将发布版的SHA1复制过去,完成你的应用的创建
提交
① 下载百度定位SDK
点击 开发文档 选择 Androidd定位SDK
点击下载SDK包
选择基础定位,然后向下滑动,下载开发包
下载完之后,解压出来你会看到这样一些文件
② 配置百度定位SDK
然后我们来看一下开发指南
现在将解压出来的文件复制到你的项目里面的libs文件夹下
配置项目的build.gradle文件,在android{}闭包中设置sourceSets,
sourceSets{
main{
jniLibs.srcDir ‘libs’
jni.srcDirs = [] //disable automatic ndk-build
}
}
不明白上面的配置就参考下图这样设置(PS:我觉得我的博客详细的都有点啰嗦了)
这里有一点要注意一下,就是不管是工程的配置文件build.gradle,还是项目的build.gradle,里面出现改动就需要Sync Now 同步你改动的配置,否则你的改动就是无效,点一下即可,然后就会在下方进度条,完毕之后你的配置就生效了,
这个jar可以展开就说明你的配置生效了,有一些读者说按照操作来还是没有展开,因此我在这里再介绍一种方式,鼠标右键点击这个jar包,点击Add As Library…
点击OK,然后就会添加进去。
接下来就要用这个创建应用时生成的AK了,
在你的AndroidManifest.xml(配置文件)中放入
<meta-data
android:name=“com.baidu.lbsapi.API_KEY”
android:value=“AK” >
这个AK就是之前提到过的,
接下来就是添加服务和权限了,
使用定位SDK,需在AndroidManifest.xml文件中Application标签中声明service组件,每个App拥有自己单独的定位service,代码如下:
<service
android:name=“com.baidu.location.f”
android:enabled=“true”
android:process=“:remote” />
除添加service组件外,使用定位SDK还需添加如下权限:
在Android6.0之前权限只需要静态配置即可使用,而在6.0之后需要动态申请权限,
Google 在Android 6.0时提出了运行时权限管理机制,在Android 6.0之前,所申请的权限只需要在AndroidManifest.xml列举就可以,从而容易导致一些安全隐患,因此,在Android 6.0 时,Google 为了更好的保护用户隐私提出了新的权限管理机制,同时将其分为两大类:
① Normal Permissions (普通权限)
普通权限一般不涉及用户隐私,是不需要用户进行授权的,比如手机震动、访问网络等;
② Dangerous Permissions (危险权限)
危险权限一般是涉及到用户隐私的,需要用户进行授权(动态申请),比如读取SIM卡状态、访问通讯录、SD卡读写等。同时危险权限又是分成各个权限组的,一个权限组中只要有一个权限申请通过了,那么改组的所有权限即被通过(目前是这样的)。
接下来安装AS的插件
File → Setting → Plugins 然后输入Android ButterKnife Zelezny查找这个插件,之后安装。
配合ButterKnife实现注解,从此不用写findViewById,想着就爽啊。在Activity,Fragment,Adapter中选中布局xml的资源id自动生成butterknife注解。
安装完插件之后AS需要重启一下,
重启之后,开始配置找个插件
在工程的build.gradle里面加上
build.gradle代码:
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
google()
//新增
mavenCentral()
jcenter()
}
dependencies {
classpath ‘com.android.tools.build:gradle:3.5.0’
//新增
classpath ‘com.jakewharton:butterknife-gradle-plugin:10.1.0’
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
//新增
maven { url “https://jitpack.io” }
//新增
mavenCentral()
google()
先自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则近万的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《Android移动开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频
如果你觉得这些内容对你有帮助,可以扫码领取!!!!
题外话
不管怎么样,不论是什么样的大小面试,要想不被面试官虐的不要不要的,只有刷爆面试题题做好全面的准备,当然除了这个还需要在平时把自己的基础打扎实,这样不论面试官怎么样一个知识点里往死里凿,你也能应付如流啊
这里我为大家准备了一些我工作以来以及参与过的大大小小的面试收集总结出来的一套进阶学习的视频及面试专题资料包,主要还是希望大家在如今大环境不好的情况下面试能够顺利一点,希望可以帮助到大家~
欢迎评论区讨论。
《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》,点击传送门,即可免费领取!
学习笔记、源码讲义、实战项目、讲解视频**
如果你觉得这些内容对你有帮助,可以扫码领取!!!!
题外话
不管怎么样,不论是什么样的大小面试,要想不被面试官虐的不要不要的,只有刷爆面试题题做好全面的准备,当然除了这个还需要在平时把自己的基础打扎实,这样不论面试官怎么样一个知识点里往死里凿,你也能应付如流啊
这里我为大家准备了一些我工作以来以及参与过的大大小小的面试收集总结出来的一套进阶学习的视频及面试专题资料包,主要还是希望大家在如今大环境不好的情况下面试能够顺利一点,希望可以帮助到大家~
[外链图片转存中…(img-QXVZUkfe-1711217726022)]
欢迎评论区讨论。
《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》,点击传送门,即可免费领取!