android12 32位版本预置apk

Android.mk 如下所示

LOCAL_PATH:= $(call my-dir)
$(shell mkdir -p $(TARGET_OUT)/app/Facebook/)
$(shell cp -rf $(LOCAL_PATH)/lib  $(TARGET_OUT)/app/Facebook/)
$(shell cp -rf $(LOCAL_PATH)/Facebook.apk $(TARGET_OUT)/app/Facebook/Facebook.apk)

遇到了2个问题。
1.签名异常
使用 LOCAL_CERTIFICATE := PRESIGNED 编译后的apk签名异常。

apksigner verify --print-certs Facebook.apk 
DOES NOT VERIFY
ERROR: JAR signer FACEBOOK.RSA: JAR signature META-INF/FACEBOOK.SF indicates the APK is signed using APK Signature Scheme v2 but no such signature was found. Signature stripped?

解决方法是使用cp的到目录下的方式去安装,不编译。
2.找不到so。

E/AppInitScheduler|Run: Exception in InitSharedLibraries
com.facebook.soloader.SoLoaderDSONotFoundError: couldn't find DSO to load: libsuperpack-jni.so
existing SO sources:
SoSource 0: ApplicationSoSource[DirectorySoSource[root = /system/app/Facebook/lib/arm flags = 1]]
SoSource 1: DirectApkSoSource[root = [/system/app/Facebook/Facebook.apk!/lib/armeabi-v7a]]
SoSource 2: DirectorySoSource[root = /vendor/lib flags = 3]
SoSource 3: DirectorySoSource[root = /system/lib flags = 3]
Native lib dir: /system/app/Facebook/lib/arm

这个需要把lib下的armeabi-v7a(apk改zip后缀解压后的lib目录下的文件是armeabi-v7a)改名为arm。它找不到arm会报错。

目录层级如下所示。

├── Android.mk
├── Facebook.apk
└── lib
    └── arm
        ├── libachilles-jni.so
        ├── libandroidx.graphics.path.so
        ├── libappcomponentfactory-jni.so
        ├── libarcore_sdk_jni.so
        ├── libbreakpad_cpp_helper.so
        ├── libbreakpad.so
        ├── libc++_shared.so
        ├── libdistract-config.so
        ├── libfbunwindstack.so
        ├── libsuperpack-jni.so
        └── libunwindstack_binary.so

参考链接:
预置v2签名的apk
Android13解决android_app_import内置第三方APK安装失败问题

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、缩减应用大小 随着业务迭代,apk体积逐渐变大。项目中积累的无用资源,未压缩的图片资源等,都为apk带来了不必...
    Bfmall阅读 778评论 0 0
  • 随着项目的不断迭代,功能越来越多,构建出来的apk文件的大小也会越来越大,这样会导致在移动网络情况下下载时,使用的...
    Androidgiao阅读 780评论 0 6
  • 随着app的业务复杂度越来越高、资源文件越来越多,我们的app安装包apk文件也就越来越大,而过大的apk文件往往...
    jackting阅读 8,705评论 1 2
  • 预置带so的apk,很容易出现一个问题:使用apk手动安装,可以正常执行so相关程序,但是打包到系统内,作为内置应...
    梧叶已秋声阅读 4,191评论 0 2
  • 一、APK 结构 Android 应用的 APK(Android Package)安装文件是一个包含所有代码和资源...
    墨留痕阅读 16,722评论 0 2