zoukankan      html  css  js  c++  java
  • [工具向]__androidstudio签名打包apk及配置自动签名

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

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

    • 关于apk签名

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

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

    image.png

    也可以手动找到相应的文件夹下:
    打开系统盘,找到用户,选择当前的用户文件夹,找到.android文件:

    2019-4-20-01.gif

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

    keytool -list -v -keystore debug.keystore
    

    查看默认的签名信息:

    2019-4-20-02.gif

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

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

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

    2019-4-20-03.gif


    • androidstudio签名正式版apk

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

    2019-4-20-04.gif

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

    image.png

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

    image.png

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

    image.png


    • 在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(项目结构)栏,进入到当前项目的配置窗口下:

    image.png

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

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

    image.png

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

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


    更新时间:
    2019-4-20
    23:04

  • 相关阅读:
    Java-Class-C:com.alibaba.fastjosn.JSON.java
    兆芯笔试题(2015)找反复数最多的字母的数量以及位置
    获得文件属性的函数调用实例
    错了:用流量能够放肆,有wifi则要节制
    为什么会找不到D层文件?
    Cocos2d-x3.0游戏实例之《别救我》第六篇——从代码中获取UI控件
    Add Binary
    【iOS开发之Objective-C】书签管理器项目
    UVa 11732 strcmp() Anyone?
    【打CF,学算法——二星级】Codeforces Round #313 (Div. 2) B. Gerald is into Art(水题)
  • 原文地址:https://www.cnblogs.com/gemuxiaoshe/p/10743216.html
Copyright © 2011-2022 走看看