RK3568 Android 13 内置搜狗输入法小计

问:为什么写?

答:网上搜出来的都试过了,不行!下面直接上代码和注意事项!

首先到这个目录(/RK3568/Rockchip_Android13_SDK_Release/device/rockchip/rk356x/tl3568_evm/preinstall)下创建SogouIME文件夹,在SogouIME中添加如下内容

1.apk从哪里来的?网上随便下载的

2.Android.mk内容如下,lib/arm64-v8a/里面的内容不用照搬,因为你跟我下的搜狗的app肯定不是一个版本的,自己想办法把自己那版的so文件写上去

XML 复制代码
LOCAL_PATH := $(my-dir)

include $(CLEAR_VARS)
LOCAL_MODULE := SogouIME
LOCAL_MODULE_CLASS := APPS
LOCAL_MODULE_PATH := $(TARGET_OUT_ODM)/bundled_persist-app
LOCAL_REPLACE_PREBUILT_APK_INSTALLED := $(LOCAL_PATH)/SogouIME.apk
LOCAL_CERTIFICATE := PRESIGNED
LOCAL_DEX_PREOPT := false
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_SUFFIX := $(COMMON_ANDROID_PACKAGE_SUFFIX)
LOCAL_JNI_SHARED_LIBRARIES_ABI := arm64-v8a

MY_LOCAL_PREBUILT_JNI_LIBS := \
    lib/arm64-v8a/libaffinity.so \
    lib/arm64-v8a/libc++_shared.so \
    lib/arm64-v8a/libcrash_collect.so \
    lib/arm64-v8a/libCtaApiLib.so \
    lib/arm64-v8a/libframesequence.so \
    lib/arm64-v8a/libframesequence_doutu.so \
    lib/arm64-v8a/libkoom-java.so \
    lib/arm64-v8a/libkwai-linker.so \
    lib/arm64-v8a/liblogan.so \
    lib/arm64-v8a/libluajava.so \
    lib/arm64-v8a/libmarsxlog.so \
    lib/arm64-v8a/libmmkv.so \
    lib/arm64-v8a/libnative-sec.so \
    lib/arm64-v8a/libopus_v1.so \
    lib/arm64-v8a/libostar.so \
    lib/arm64-v8a/libqmp.so \
    lib/arm64-v8a/libSGMtlgShell.so \
    lib/arm64-v8a/libsimple_vad.so \
    lib/arm64-v8a/libsimplevadwrapper.so \
    lib/arm64-v8a/libsogou_speex_nt_v01.so \
    lib/arm64-v8a/libSogouAgc_v1.so \
    lib/arm64-v8a/libsogouupdcore.so \
    lib/arm64-v8a/libtgpalite.so \
    lib/arm64-v8a/libtrace-canary.so \
    lib/arm64-v8a/libvivo_account_wave.so \
    lib/arm64-v8a/libweibosdkcore.so \
    lib/arm64-v8a/libwind.so \
    lib/arm64-v8a/libxgVipSecurity.so \
    lib/arm64-v8a/libxhook_lib.so

MY_APP_LIB_PATH := $(TARGET_OUT_ODM)/bundled_persist-app/$(LOCAL_MODULE)/lib/$(LOCAL_JNI_SHARED_LIBRARIES_ABI)

# Ensure that the target lib64 directory exists before copying files
LOCAL_POST_INSTALL_CMD := \
    mkdir -p $(TARGET_OUT)/lib64 && \
    $(foreach lib, $(MY_LOCAL_PREBUILT_JNI_LIBS), \
        cp -f $(LOCAL_PATH)/$(lib) $(TARGET_OUT)/lib64/$(notdir $(lib)); \
    )

include $(BUILD_PREBUILT)

3.网上搜的那一圈缺的就是这个3,绝口不提需要创建lib这个目录是吧,绝口不提需要把apk解压出来的lib中的so文件放到这里面来

说一个成功的关键:相关的so文件是需要被复制到/system/lib64里面的,不然就算预装上了也运行不起会报错,代码如下

XML 复制代码
LOCAL_POST_INSTALL_CMD := \
    mkdir -p $(TARGET_OUT)/lib64 && \
    $(foreach lib, $(MY_LOCAL_PREBUILT_JNI_LIBS), \
        cp -f $(LOCAL_PATH)/$(lib) $(TARGET_OUT)/lib64/$(notdir $(lib)); \
    )

最后,希望对你有所帮助。

相关推荐
编程乐学1 小时前
网络资源模板--基于Android Studio 实现的聊天App
android·android studio·大作业·移动端开发·安卓移动开发·聊天app
没有了遇见3 小时前
Android 通过 SO 库安全存储敏感数据,解决接口劫持问题
android
hsx6663 小时前
使用一个 RecyclerView 构建复杂多类型布局
android
hsx6663 小时前
利用 onMeasure、onLayout、onDraw 创建自定义 View
android
守城小轩3 小时前
Chromium 136 编译指南 - Android 篇:开发工具安装(三)
android·数据库·redis
whysqwhw3 小时前
OkHttp平台抽象机制分析
android
hsx6664 小时前
Android 内存泄漏避坑
android
whysqwhw4 小时前
OkHttp之okhttp-bom模块的分析
android
餐桌上的王子5 小时前
Android 构建可管理生命周期的应用(二)
android
幽你一默5 小时前
Android 版本差异速查表(开发者视角)
android