• 前言

    好几天了,没怎么更新了,最近迷上了抓妖,有些懈怠了,这两天在看android的一些东西,java暂时就先放了放,昨天终于是完成了一个小阶段的任务,今天来对这两天的东西进行一下总结.

因为前面在学习gps定位服务的时候,使用到了androidstudio进行开发,并且老师说,之后会使用到百度的地图api接口,来开发一个基于百度地图api的简单的gps定位app.于是,我就提前了解了一下.并将里面涉及到的androidstudio的一些需要用到的配置操作记录下来:

  • 关于apk签名

我们知道,每一款apk都必须要有签名信息,才能够被许可上线,而我们平时在使用android常见的debug版的apk的时候,是不需要配置签名信息的,这是因为debug版的apk会自动使用android自带的debug版签名文件中的信息.

其签名文件默认存放在当前电脑的系统盘(一般都是c盘)中用户中的.android文件中,可以通过文件查询工具来找到它:

也可以手动找到相应的文件夹下:

打开系统盘,找到用户,选择当前的用户文件夹,找到.android文件:

其中的debug.keystore文件,即为android默认的debug版本的签名文件,我们可以cmd命令行工具通过指令(当然前提是你要进入到当前的目录下):

keytool -list -v -keystore debug.keystore

查看默认的签名信息:

其中,debug版的签名文件的默认密码就是android我们直接输入就可访问该文件:

当然我们也可以通过androidstudio中自带的终端工具:terminal来查看想要查看的签名文件的信息:

我们可以观察到其中所包含的信息,其中我们在之后调用api所需要的sha1字符串,当然我们也可以看到一些apk的相关信息.


  • androidstudio签名正式版apk

我们现在了解到了关于apk签名的相关知识,那么我们现在就需要在androidstudio中构建我们自己的签名,将自己开发的apk签名为正式版:

我们打开build选择generate signed bundle or apk(生成签名包或apk选项.).我们弹出的对话框会提示让我们选择创建一个新的签名文件,还是选择一个自己的文件.如果没有,就创建一个新的签名文件,有的话也可以选择已有的签名文件.根据需要进行选择,然后

我们创建一个新的签名文件:

按照要求填写信息即可.之后我们就可以通过终端工具:terminal查看我们的签名文件的配置信息:


  • 在android中配置自动签名

我们在前面知道了,在我们运行程序,或创建debug版apk时.android是自动默认为debug.keysotre中的签名信息的,这在我们使用时,十分不便,(这里因为没有配置自动签名导致我在之后使用api开发时不停的报鉴权错误),所以还是很有必要设置的,.

我们知道android使用gradle来自动构建程序,生成apk,所以这些签名的配置也是需要在gradle文件中配置的,我们打开项目目录中app下的bulid.gradle文件,在其中通过下面命令配置自动配置签名:

 signingConfigs {
myreleaseConfigs {
storeFile file('C:\\Users\\MaYaP\\.android\\gps.jks')
storePassword '***'
keyAlias = 'key0'
keyPassword '***'
}
debug {
storeFile file('C:\\Users\\MaYaP\\.android\\debug.keystore')
storePassword 'android'
keyPassword 'android'
keyAlias = 'androiddebugkey'
}
}

可以通过这个配置使我们在运行,调试程序的时候自动签名,而不需要每次手动签名.并且可以设置不同的签名文件来应对不同的情况.

当然,androidstudio也可以通过窗口的形式配置自动签名:

在file下中选择project structure(项目结构)栏,进入到当前项目的配置窗口下:

(这里我更新到了最新版AS,和之前的版本可能有所不同)

我们找到对应modules下的signing Configs(签署配置)选项卡,然后配置对应的签名文件:

如此我们就配置好了签名配置了.

之后在运行下项目,检查一下对应的sha1,包名是否填写正确,运行项目,鉴权正确,不会再报错了.


更新时间:

2019-4-20

23:04

[工具向]__androidstudio签名打包apk及配置自动签名的更多相关文章

  1. 三、Gradle初级教程——Gradle除了签名打包还能配置jar包

    1.gradle概念 构建工具,Groovy,Java. 2.gradle配置jar包,和libs文件夹导入jar包的区别 到此,还是这种方法导入JAR包比较方便.每次更新JAR包,只需要修改版本号就 ...

  2. Android studio打包APK混淆配置

    要在打包APK时加入混淆需要在Module中的buid.gradle中加入如下信息 buildTypes { release { minifyEnabled true shrinkResources ...

  3. AndroidStudio打包apk,安装出现签名冲突--解决办法

    Android UiAutomator2项目部署到jenkins上,实现自动打包,并自动push&安装到设备上 遇到问题: 可成功实现自动打包并push到设备上后,install -r 的时候 ...

  4. Android Studio 多个编译环境配置 多渠道打包 APK输出配置

    看完这篇你学到什么: 熟悉gradle的构建配置 熟悉代码构建环境的目录结构,你知道的不仅仅是只有src/main 开发.生成环境等等环境可以任意切换打包 多渠道打包 APK输出文件配置 需求 一般我 ...

  5. Android:用签名打包后微信分享失效

    刚开始使用微信分享,申请的微信appid也可以在直接使用,分享成功! 当我使用自己的签名打包分享时却分享失败,一闪而过,好郁闷的说,为什么之前没有打包就可以,签名打包后就不可以了... 开始查找各种资 ...

  6. Android 使用Android Studio + Gradle 或 命令行 进行apk签名打包

    官方文档:https://developer.Android.com/tools/publishing/app-signing.html 1. 默认为debug mode,使用的签名文件在: $HOM ...

  7. 安卓打包apk

    打apk包的环境依赖 1.jdk 2.sdk 3.ndk 打apk包的工具 gradle mkdir /usr/local/Android cd /usr/local/Android mkdir sd ...

  8. Android Studio环境下代码混淆+签名打包

    Android Studio环境下代码混淆+签名打包 作者 Mr_冯先生 关注 2016.08.21 01:10 字数 1040 阅读 734评论 5喜欢 34 注:本文使用的Android Stud ...

  9. 【React Native开发】React Native进行签名打包成Apk

    转载请标明出处: http://blog.csdn.net/developer_jiangqq/article/details/50525976 本文出自:[江清清的博客] (一)前言 [好消息]个人 ...

随机推荐

  1. Spring Boot MyBatis注解:@MapperScan和@Mapper

    最近参与公司的新项目架构搭建,在使用mybatis的注解时,和同时有了不同意见,同事认为使用@Mapper注解简单明了,而我建议使用@MapperScan,直接将mapper所在的目录扫描进去就行,而 ...

  2. 在python3中安装mysql扩展,No module named 'ConfigParser'

    在python2.7中,我们安装的是 MySqldb或这 MySQL-python,能够正却安装,但在python3中,由于 其使用的扩展  ConfigParser 已经改名为 configpars ...

  3. 机器学习——KMeans

    导入类库 from sklearn.cluster import KMeans from sklearn.datasets import make_blobs import numpy as np i ...

  4. vue Error: No PostCSS Config found in

    最近在做一个vue的移动端的项目,遇到一个问题,我本地的项目运行正常,可是上传到github上的一启动就报错,就是标题上的错误,找了很久,刚开始以为是某个css没有配置,就把本地的复制过去还是报错,无 ...

  5. 201771010126 王燕《面向对象程序设计(Java)》第十七周学习总结

    实验十七  线程同步控制 实验时间 2018-12-10 1.实验目的与要求 (1) 掌握线程同步的概念及实现技术:  多线程并发运行不确定性问题解决方案: 多线程并发运行不确定性问题解决方案: 多 ...

  6. Linux 搭建 Nginx+PHP-FPM环境

    安装PHP.Nginx和PHP-FPM sudo apt-get install php sudo apt-get install nginx sudo apt-get install php7-fp ...

  7. easyui-combotree选中指定的值

    选中根节点: //station_id为combotree控件id var station = $('#station_id').combotree('tree').tree('getRoots'); ...

  8. web测试实践——day01

    一.任务进展情况 主要是找寻网站的bug,分析bug的严重程度.同时找了本专业的同学进行博客园系统的使用. 二.存在的问题 由于上线的网站做的比较完善,导致找寻bug比较困难. 三.解决方法 对此我们 ...

  9. RabbitMQ in Action (2): Running and administering Rabbit

    Server management the Erlang node and the Erlang application Starting nodes multiple Erlang applicat ...

  10. 【安富莱专题教程第4期】SEGGER的J-Scope波形上位机软件,HSS模式简单易用,无需额外资源,也不需要写目标板代码

    说明:1.在实际项目中,很多时候,我们需要将传感器或者ADC的数值以波形的形式显示.通常的解决办法是用串口上位机,USB接口上位机或者MDK的逻辑分析仪功能,使用这三种方式都比较繁琐.本期专题为大家讲 ...