android签名

小程序(四)调试生成安卓APP

喜你入骨 提交于 2019-11-29 06:05:34
首先在开放平台:https://open.weixin.qq.com 把小程序,公众号,关联上,申请移动应用(安卓),300块少不了的。 最好自己生成jks证书,记住密码,签名。 HbuilderX 制作自定义基座,其实就是用自己的证书打个包,但是这个包可以debug调试。 注意,签名要一致 移动应用申请,需要三两天审核 都加进来,本次演示调用微信登录,返回统一的unionid,如果不加入开放平台,是没有unionid的,然后移动应用,小程序,公众号的openid是不一致的,只能用unionid作为唯一标识。 APP微信登录调试 小程序微信登录调试 我们可以看到unionid 并不是一致的。这个就是因为我并非用自定义基座。下面我们用自定义基座调试 现在可以看到unionid一致。 坑一:unionid不一致或签名不一致 很多时候我们的unionid不一致是签名不一致导致的,包括有时候打包出来的APP自己提示签名不一致。这个时候就要着重查一下开放平台的签名字符串和证书获取的签名是不是一致的。检查最好用微信的 签名生成工具 ,获取回来的签名直接复制到开放平台。这样是最准确的。很多开发者习惯了用 keytool 查看到证书的签名,比如查看到的签名是: C8:21:A3:39:8C:EF:C0:18:A8:B4:4B:C6:60:3F:66:69 就直接拷这一串去开放平台

(一)Ionic 项目搭建(参考)

笑着哭i 提交于 2019-11-28 15:45:29
一、依赖环境 1.nodejs(下载传送门: http://nodejs.cn/download/ ) 默认安装 2.JAVA JDK (JAVA的开发基础类库,Android需要,下载传送门: https://www.oracle.com/technetwork/java/javase/downloads/index.html ) 默认安装,安装完成后路径应为:C:\Program Files\Java,打开cmd,输入 java -version 验证是否安装成功 3.JAVA SDK (安卓开发集成包,集成了安卓的开发工具,插件,API等等,下载传送门: https://www.oracle.com/technetwork/java/javase/downloads/index.html ) 4.gradle(JAVA界的Weboack ,支撑app的编译,打包的流程,下载传送门: https://gradle.org/ ) 5.上述安装完成后配置环境变量:我的电脑——右键属性——-高级系统设置——-环境变量 (1)新建android系统变量JAVA_HOME,ANDROID_HOME,GRADLE_HOME name: JAVA_HOME key: C:\Program Files\Java\jdk name: ANDROID_HOME key: C:\Program

app测试中,安卓和IOS的区别(搜索网上后总结的)

折月煮酒 提交于 2019-11-28 15:07:37
App测试中ios和Android的区别: 1、Android长按home键呼出应用列表和切换应用,然后右滑则终止应用; 2、多分辨率测试,Android端20多种,ios较少; 3、机操作系统,Android较多,ios较少且不能降级,只能单向升级;新的ios系统中的资源库不能完全兼容低 版本中的ios系统中的应用,低版本ios系统中的应用调用了新的资源库,会直接导致闪退(Crash); 4、操作习惯:Android,Back键是否被重写,测试点击Back键后的反馈是否正确;应用数据从内存移动到SD卡 后能否正常运行等; 5、push测试:Android:点击home键,程序后台运行时,此时接收到push,点击后唤醒应用,此时是否可以正 确跳转;ios,点击home键关闭程序和屏幕锁屏的情况(红点的显示); 6、安装卸载测试:Android的下载和安装的平台和工具和渠道比较多,ios主要有app store,iTunes和 testflight下载; 7、升级测试:可以被升级的必要条件:新旧版本具有相同的签名;新旧版本具有相同的包名;有一个标示符区 分新旧版本(如版本号),对于Android若有内置的应用需检查升级之后内置文件是否匹配(如内置的输入法) 另外:对于测试还需要注意一下几点: 1、并发(中断)测试:闹铃弹出框提示,另一个应用的启动、视频音频的播放,来电、用户正在输入等

API接口签名验证

偶尔善良 提交于 2019-11-28 07:19:03
系统从外部获取数据时,通常采用API接口调用的方式来实现。请求方和接口提供方之间的通信过程,有这几个问题需要考虑: 请求参数是否被篡改; 请求来源是否合法; 请求是否具有唯一性; 今天跟大家探讨一下主流的通信安全解决方案。 参数签名方式 这种方式是主流。它要求调用方按照约定好的算法生成签名字符串,作为请求的一部分,接口提供方验算签名即可知是否合法。步骤通常如下: ①接口提供方给出appid和appsecret ②调用方根据appid和appsecret以及请求参数,按照一定算法生成签名sign ③接口提供方验证签名 生成签名的步骤如下: ①将所有业务请求参数按字母先后顺序排序 ②参数名称和参数值链接成一个字符串A ③在字符串A的首尾加上appsecret组成一个新字符串B ④对字符串进行md5得到签名sign 假设请求的参数为:f=1,b=23,k=33,排序后为b=23,f=1,k=33,参数名和参数值链接后为b23f1k33,首尾加上appsecret后md5: md5(secretkey1value1key2value2...secret)。 以上签名方法安全有效地解决了参数被篡改和身份验证的问题,如果参数被篡改,没事,因为别人无法知道appsecret,也就无法重新生成新的sign。 这里使用了md5的算法进行签名,也可以自行选择其他签名方式,例如RSA,SHA等。

Android多渠道打包三种方式 - CSDN博客

[亡魂溺海] 提交于 2019-11-26 22:59:56
前言: 现在市场上很多app应用存在于各个不同的渠道,大大小小几百个,当我们想要在发布应用之后统计各个渠道的用户下载量,我们就要进行多渠道打包。 01.应用的打包签名 什么是打包? 打包就是根据签名和其他标识生成安装包。 签名是什么? 1.在android应用文件(apk)中保存的一个特别字符串 2.用来标识不同的应用开发者:开发者A,开发者B 3.一个应用开发者开发的多款应用使用同一个签名 就好比是一个人写文章,签名就相当于作者的署名。 如果两个应用都是一个开发者开发的,那么签名就是一样的。 这个开发者,可以是个人,也可以是公司、团体。 为什么要用签名? 原因1:最简单直接的回答: 系统要求的。 Android系统要求每一个Android应用程序必须要经过数字签名才能够安装到系统中,也就是说如果一个Android应用程序没有经过数字签名,是没有办法安装到系统中的! 原因2: 不同程序员开发的应用包名可能会相同, 导致一个应用覆盖掉另一个应用。 如果只有包名的概念,那么如果B应用与已经安装的A应用包名一样,那就实现覆盖。不合理! 而事实上是装不上B的,它会提示,存在包名一致,但是签名不一样的。这就不会覆盖。 如何为APK签名? 如何签名就不用说了,这方面的博文数不胜数,相信看这篇文章的你也应该会。 在代码中得到应用的签名?(个人觉得没啥用) public void

给apk做系统签名

萝らか妹 提交于 2019-11-26 17:23:29
有时候apk需要一些系统权限,我们能拿到系统的签名文件就可以 1、在Manifest.xml里添加 android:sharedUserId="android.uid.system" 2、使用系统签名工具,签名文件来签名apk java -jar signapk.jar platform.pk8 platform.x509.pem test.apk test_sign.apk 这样签名过的文件test_sign.apk就具有了系统权限 记录一个低级错误,签名的时候,一直报错,百思不解 java.security.cert.CertificateParsingException: signed fields invalid at sun.security.x509.X509CertImpl.parse(X509CertImpl.java:1718) at sun.security.x509.X509CertImpl.<init>(X509CertImpl.java:177) at sun.security.provider.X509Factory.engineGenerateCertificate(X509Factory.java:90) at java.security.cert.CertificateFactory.generateCertificate

Android签名机制:生成keystore、签名、查看签名信息

天涯浪子 提交于 2019-11-26 12:10:11
Android独有的安全机制,除了 权限机制 外,另外一个就是签名机制了。签名机制主要用在以下两个主要场合起到其作用:升级App和权限检查。 升级App 用户在升级一款已经安装过的App时,如果程序的修改来自于同一来源,则允许升级安装,否则会提示签名不一致无法安装的提示。 权限检查 我曾在 Android Permission权限机制的具体使用 一文中提过,对于申请权限的 protection level 为 signature 或者 signatureOrSystem 的,会检查权限申请者和权限声明者的证书是否是一致的。 至于签名机制的原理及其他作用,此不详述,本文主要介绍,签名文件key的生成、用key去签名apk文件及查看签名的方法。 生成keystore 创建keystore,需要用到keytool.exe (位于jdk_xx\jre\bin目录下),具体做法如下: keytool -genkey -alias mykey -keyalg RSA -validity 40000 -keystore demo.keystore #说明: # -genkey 产生密钥 # -alias mykey 别名 mykey # -keyalg RSA 使用RSA算法对签名加密 # -validity 40000 有效期限4000天 # -keystore demo.keystore

关于腾讯开放平台的应用认领

让人想犯罪 __ 提交于 2019-11-26 11:35:53
今天想把自己开发的应用上传到腾讯的开放平台,却发现应用的包明冲突了。原来是以前申请的腾讯开放平台已经上传过一次这个应用了。没办法,只能通过腾讯的应用认领来把这个应用来认领到当前的这个账号。下面我就吧认领过程中遇到的一些问题总结一下。 【Android】命令行jarsigner签字和解决找不到证书链错误 1、签名失败 $jarsigner -verbose -keystore /Volumes/Study/resourcesLib/Qunero-achivements/AndroidApp/QuLordy-signed-key -signedjar ./signed_XiaomiVerify.apk ./XiaomiVerify.apk qulordy 输入密钥库的口令短语: jarsigner: 找不到 qulordy 的证书链。qulordy 必须引用包含专用密钥和相应的公共密钥证书链的有效密钥库密钥条目。 2、查看帮助 复制代码 $jarsigner -h 用法:jarsigner [选项] jar 文件别名(key的别名) jarsigner -verify [选项] jar 文件 [-keystore <url>] 密钥库位置 [-storepass <口令>] 用于密钥库完整性的口令 [-storetype <类型>] 密钥库类型 [-keypass <口令>]

Android 项目打包上线apk

只愿长相守 提交于 2019-11-26 05:23:14
摘要: 首先选择Build->GenerateSignedAPK,会出现下面的界面第一种情况:没有签名文件点击Createnew(最好签名文件密码和密钥密码设置一样)点击ok,刚创建的签名文件会默认选中,密码自动填充Next然后输入之前设置的MasterPassward,如果没有略过这一步BuildType选择生成apk类型debug测试,release线上。这里我们选择线上点击finish,构建完成后studio会弹出下图提示语点击ShowinExplorer可以看到生成的线 首先选择Build->Generate Signed APK,会出现下面的界面 第一种情况:没有签名文件 点击Create new(最好签名文件密码和密钥密码设置一样) 点击ok,刚创建的签名文件会默认选中,密码自动填充 Next然后输入之前设置的MasterPassward,如果没有略过这一步 Build Type选择生成apk类型debug测试,release线上。这里我们选择线上 点击finish,构建完成后studio会弹出下图提示语 点击ShowinExplorer可以看到生成的线上apk文件 如果点击finish报错(AndroidStudio版本高的会有这个问题) 就要选择SignatureVersions版本: 勾选v1签名7.0以下不会有问题,但是在7.0上不会使用更安全的验证方式

Android签名机制介绍:生成keystore、签名、查看签名信息等方法

て烟熏妆下的殇ゞ 提交于 2019-11-25 21:25:38
Android独有的安全机制,除了权限机制外,另外一个就是签名机制了。签名机制主要用在以下两个主要场合起到其作用:升级App和权限检查。 升级App 用户在升级一款已经安装过的App时,如果程序的修改来自于同一来源,则允许升级安装,否则会提示签名不一致无法安装的提示。 权限检查 我曾在Android Permission权限机制的具体使用一文中提过,对于申请权限的 protection level 为 signature 或者 signatureOrSystem 的,会检查权限申请者和权限声明者的证书是否是一致的。 至于签名机制的原理及其他作用,此不详述,本文主要介绍,签名文件key的生成、用key去签名apk文件及查看签名的方法。 生成keystore 创建keystore,需要用到keytool.exe (位于jdk_xx\jre\bin目录下),具体做法如下: 代码如下: keytool -genkey -alias mykey -keyalg RSA -validity 40000 -keystore demo.keystore #说明: # -genkey 产生密钥 # -alias mykey 别名 mykey # -keyalg RSA 使用RSA算法对签名加密 # -validity 40000 有效期限4000天 # -keystore demo.keystore