360加固APP后启动崩溃—注意加固前后签名是否一致

如下截图所示,我今天就是遇到了这个问题,这个问题是比较好解决,但如果官网有显眼指引说明会不会对开发者更友好些呢?
在这里插入图片描述
首先我们给360的加固包是带有自己的签名的,然后经360加固过后(免费的加固服务),输出的包是没有签名的,所以我们就需要再重新签名一次,这时候就要注意了,前后签名的keystore要用同一个。不然一启动就崩溃/点击应用标图没有响应的感觉,应用主Activity都没机会显示

360 签名工具

可以纯手机自己在命令行签名加固后的apk,也可以用360加固助手(官网有提供下载)来签名,即它提供的工具包的签名功能是免费的,收费的是应用加固过程中的自动签名功能
在这里插入图片描述
注:工具包的签名本质上也是调命令行的工具去做签名,相关的命令有 zipalign、apksigner等

手动命令行签名

流程说明:
第一步:对加固后的apk做字节边界重组,使用zipalign命令
第二步:对align后的apk做签名,使用apksigner命令

zipalign

可以用zipalign查看下apk是否已经做了字节边界重组,示例如下

zipalign -c -v 4 xxx.apk

查验360免费加固后的apk是这样的结果,证明没有做align
在这里插入图片描述
对apk做节节边界重组,示例如下

//zipalign -f -v 4 输出的apk名, 输出的apk名zipalign -f -v 4  input.apk output.apk

apksigner

签名就好办了,加固前用于签我的keystore操作即可,示例如下

//下面是用了debug keystore做示例,注意需要替换自己的keystore,还有key alias
apksigner sign --ks debug.keystore --ks-key-alias androiddebugkey --out demo_enc_align_sign.apk demo_enc_align.apk

过程会提示输入keystore的密码
在这里插入图片描述

复习相关的命令

查看apk的签名信息

keytool -printcert -jarfile
示例如下
在这里插入图片描述## 查看keystore的信息
keytool -list -v -keystore
示例如下
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/155530.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Mybatis—XML配置文件、动态SQL

学习完Mybatis的基本操作之后&#xff0c;继续学习Mybatis—XML配置文件、动态SQL。 目录 Mybatis的XML配置文件XML配置文件规范XML配置文件实现MybatisX的使用 Mybatis动态SQL动态SQL-if条件查询 \<if\>与\<where\>更新员工 \<set\>小结 动态SQL-\<forea…

按相同时间切割长视频

需求 将一段1小时的.mkv视频&#xff0c;按每5分钟切割&#xff0c;并转成.mp4 工具 格式工程 x64 5.15&#xff0c;下载 这真是个好工具&#xff0c;考虑过PR&#xff0c;无意间发现这软件很强大 实现步骤 第一步&#xff1a;选择视频&#xff0c;导出MP4&#xff0c;添…

HTML基础

HTML 基础 HTML 结构 HTML 代码是由 “标签” 构成的. <body>hello</body>第一个html 文件 <html> <head></head><body>hello world</body> </html>下面我们看一下这个代码的特点: html 代码是通过标签来组织的, 形如 &l…

Android开发知识学习——HTTPS

文章目录 定义HTTPS连接HTTPS 连接建立的过程课后题 定义 HTTP Secure / HTTP over SSL / HTTP over TLS SSL&#xff1a;Secure Socket Layer -> TLS Transport Layer Security 定义&#xff1a;在HTTP之下增加的一个安全层&#xff0c;用于保障HTTP的加密传输 本质&…

数据查找(search)-----线性表查找

目录 前言 线性表查找 1.无序表查找 2.无序表查找 3.分块查找 前言 前面我们已经学习过了相关数据结构的知识&#xff0c;那么今天我们就开始去学习数据的查找&#xff0c;在不同的数据结构里面去查找目标数据&#xff0c;这就是数据的查找算法。今天就从线性结构的表去查…

【进阶C语言】数组笔试题解析

本节内容以刷题为主&#xff0c;大致目录&#xff1a; 1.一维数组 2.字符数组 3.二维数组 学完后&#xff0c;你将对数组有了更全面的认识 在刷关于数组的题目前&#xff0c;我们先认识一下数组名&#xff1a; 数组名的意义&#xff1a;表示数组首元素的地址 但是有两个例外…

Xposed hook 抖音首页标签隐藏

Xposed hook 抖音首页标签隐藏 本篇文章主要使用xposed hook arraylist,来实现 抖音首页部分标签条目隐藏。 直接上代码&#xff1a; //隐藏首页tab XposedHelpers.findAndHookMethod(ArrayList.class, "add", Object.class, new XC_MethodHook() {Overrideprotect…

HTML标签、CSS介绍

标签的分类: 块级/行内 # 块级标签: 独占一行 h1~h6 p div """ 块儿级标签可以修改长宽. 行内标签不可以, 就算修改了也不会变化.块级标签内部可以嵌套任意的块级标签和行内标签. 特例: 是p标签虽然是块级标签 但是它只能嵌套行内标签 不能嵌套块级标签. 如…

VINS-Mono-VIO初始化 (五:视觉惯性对齐求解)

整体思想就是根据预积分的公式&#xff0c;把已知量和未知量各放到一边&#xff0c;因为前面的数据都是变换到 c 0 c_{0} c0​下的&#xff0c;不是真正意义上和重力对齐的世界坐标&#xff0c;然后位移和速度的预积分中会用到加速度计获取的重力加速度g&#xff0c;但是这个重…

深入理解udp

1.再谈端口号 1.1复习 我们上一篇谈了很久的应用层的http&#xff0c;并在此前我们使用socket编程写了一个能相互通信的客户端与服务端&#xff0c;但是我们也只是粗略的理解了一下tcp和udp在编程过程中所形成的差异性&#xff0c;并没有实质去了解一下其详细内容&#xff0c;…

三维地图数据共享与统一存储

这家总部位于北京的高新企业是一家致力于三维数字地理技术的领军企业&#xff0c;提供中国领先的三维数据获取服务&#xff0c;并依据三维数据自动建模云计算服务、提供全国性的地图与位置服务。这项技术其实我们每天都有可能用到&#xff0c;例如百度地图、高德地图就属于三维…

数据结构——线性表①(顺序表)

一、线性表定义 线性表是一种数据结构&#xff0c;它是由n个具有相同数据类型的数据元素a1,a2,…,an组成的有限序列。 其中&#xff0c;除第一个元素a1外&#xff0c;每一个元素有且只有一个直接前驱元素&#xff0c;除了最后一个元素an外&#xff0c;每一个元素有且只有一个…