即刻体验FairGuard加固方案!
免费试用游戏游戏安全保护, 对接专业技术服务!
最近碰到有游戏签名后出现安装不了的问题。如下图所示:
出现此问题的手机系统都是Android 11.拿到该游戏解析apk信息,targetSdkVersion值为30.这是一个目前比较多发的不带V2签名导致在特定环境下无法安装的问题。
鉴于很多游戏对于Android的签名相关的情况不是特别了解,这里就Android的签名逻辑整理出此文档。
Android 目前存在2种签名,一种是V1签名,另一种是V2签名。
V1签名跟Jar包签名一样。缺点是校验速度比较慢,另外有些zip信息无法得到校验,于是从7.0开始引入V2签名。
7.0之前的系统只能识别V1签名。7.0到10.0的系统同时支持V1和V2签名,优先使用V2签名。这个阶段只做V1签名在使用和分发上,都跟之前一样,没有任何问题。甚至于国内有些游戏渠道指定要求游戏包只能包含V1签名,不能带V2签名。
到了2020年Android 11发布后,情况出现了变化。下图是Google新政策的原文:
在Android 11上,如果targetSdkVersion为30或以上的话,应用就无法安装了。如果targetSdkVersion低于30.不存在这个问题。
不过Unity引擎默认会使用最新的targetSdkVersion,有些游戏在不知情的情况下,targetSdkVersion被自动设置为30.导致在没有使用V2签名的情况下无法安装。
Google在2021年8月开始,将强制所有新应用使用targetSdkVersion为30或更高。如下图所示:
因此以后游戏发布,建议使用V1+V2签名。目前FairGuard加固签名工具已设置为默认使用V1+V2签名的方式。
丨结语
FairGuard 专注于游戏加固与反外挂,为 Unity / Cocos / UE 等引擎的游戏提供深度一体化加密保护方案。
目前产品已经被FunPlus、三七互娱、游族等多家头部公司采用。TapTap排行榜以及买量排行榜上亦有多个游戏使用。
产品咨询联系方式:
微信:fairguard01
免费试用游戏游戏安全保护, 对接专业技术服务!