使用 Android 应用程序 (.apk) 安装键盘布局文件 (.kl)

2024-03-31

我已经尝试和搜索了几天,但无法为我的问题找到任何解决方案:

我正在尝试在 /system/usr/keylayout 中安装 .kl 文件以重新映射我的应用程序的一些键盘按键。我有正确格式的正确 .kl 文件:Vender_XXXX_Product_XXXX.kl,如果我使用根资源管理器复制它,它就可以工作。

但我希望通过安装我的应用程序来安装它(无需root)。这意味着它必须包含在 .apk 文件中并在安装过程中复制!?

到目前为止,我的方法是使用接收器和 QUERY_KEYBOARD_LAYOUTS 意图。 为此,需要 .kcm 文件。这不适用于我的手机(Galaxy S3)。我不知道为什么,但它没有在设置中显示 PHYSICAL_KEYBOARD 设置项:(

无论如何,我认为/希望更好的方法是通过 NDK: 我尝试使用 ndk 并能够将一些本机 c 集成到我的应用程序中,但没有像我的 .kl 文件这样的“源”文件。 我希望 device.mk 文件能够以某种方式将我的 .kl 文件复制到 /system ,如下所示: 设备.mk 产品_复制_文件 += $(LOCAL_PATH)/Vendor_XXXX_Product_XXXX.kl:system/usr/keylayout/Vendor_XXXX_Product_XXXX.kl

这有可能吗?在安装实际的 apk 时使用 NDK 自动将文件“安装”到 /system 吗? 如果是这样,你该怎么做?我对整个 makefile 和 NDK 感到困惑。以前从来没有用过它,我对 c 很不好。

如果你们中有人知道如何做我所要求的事情......请告诉我。这将不胜感激!


用 apk 包安装 .kcm 文件并非不可能。事实上,布局应用程序就是这样做的。您的 QUERY_KEYBOARD_LAYOUT 走在正确的轨道上。

我想安装一个 .kl 文件,就像你一样,但我找不到任何关于它的好信息。因此,我只是在 .kcm 文件中使用了 map 关键字,它具有完全相同的效果。

在这里查看我的源代码,其中我允许用户添加 se_sv_dvorak 布局 kcm,而无需 root 手机:https://github.com/innsmouthrain/se_sv_dvorak https://github.com/innsmouthrain/se_sv_dvorak

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Android 应用程序 (.apk) 安装键盘布局文件 (.kl) 的相关文章

  • 在Android Studio gradle项目中使用NDK和STL

    我在将 stlport 链接到 Android Studio 中的 gradle 项目时遇到问题 使用 NDK 的 Eclipse Android 项目迁移到 Android Studio 该项目使用 STL 我有包含内容的 android
  • 在动态模块中使用样式时出错 - Android 应用程序包

    我正在我的 Android 应用程序中使用应用程序包 动态模块 在项目中我有一个主模块和一个子模块 在子模块的 value gt styles xml 中 我定义了自定义样式以启用一些活动动画
  • AsyncTask:未调用 doInBackground

    我有一个问题AsyncTask 有时 doInBackground 之后不调用方法onPreExecute 我知道这个问题已被问过多次 但给出的答案对我不起作用 这是我的代码的一部分 AsyncTask
  • TiTouchImageView 是否在合金项目中工作? [更新]

    我目前正在为 android 和 iO 开发一个钛应用程序 包括一个应该可滚动和可扩展的 imageView 通过滑块 我已经让它在 iO 上工作 但在 Android 上很难实现滚动行为 我决定使用TiTouchImageView htt
  • 使用 Http Post 发送图像

    我想使用 Http Post 将图像从 android 客户端发送到 Django 服务器 该图像是从图库中选择的 目前 我正在使用列表值名称 Pairs 将必要的数据发送到服务器并接收来自 Django 的 JSON 响应 是否可以对图像
  • 如何为ScrollView放置固定图像背景?

    我应该想要滚动视图滚动 而不是背景中的图像 将图像添加到滚动视图框架之前的视图层次结构的较高位置
  • 如何清除所有WebView存储的信息?

    我有一个 Android 浏览器 我可以选择清除缓存 存储 cookie 等 代码如下所示 webView clearCache true webView clearFormData webView clearHistory webView
  • 使用workmanager时Firestore脱机持久性错误

    我正在使用一个WorkManger定期从我的中检索信息Firestore当应用程序处于后台和前台时的数据库 此信息用于根据状态更新 UI 因此不同的状态会添加或删除 UI 的不同部分 第一次运行时效果很好 但是 一旦应用程序处于后台并且Wo
  • StrictMode 策略违规:我的应用程序中存在 android.os.strictmode.LeakedClosableViolation?

    Android 开发新手 第一次在我的应用程序上尝试 StrictMode 我注意到以下内容 并想知道这是否是我的应用程序或库中的问题 我不太清楚 谢谢你 D StrictMode StrictMode policy violation a
  • android中向sqlite中插入大量数据

    目前 我必须一次向我的 Android 中插入超过 100 亿条数据 然而 内存不足的问题会使程序崩溃 sqlite 插入测试非常简单 只需使用 for 循环生成 sql 插入命令并通过 开始 和 提交 进行包装 private Array
  • 如何在android中获取Camera2 API的当前曝光

    In android hardware Camera旧的 我使用下面的代码获取当前曝光并获取它Camera Camera Parameters param mCamera getParameters currentExposure para
  • android xamarin 中的 reCaptcha

    我想在 Xamarin android 应用程序中实现验证码 我抓住了这个在 Android 中集成 googles reCaptcha 验证 https www c sharpcorner com article how to integ
  • 计数物体和更好的填充孔的方法

    我是 OpenCV 新手 正在尝试计算物体的数量在图像中 我在使用 MATLAB 图像处理工具箱之前已经完成了此操作 并在 OpenCV Android 中也采用了相同的方法 第一步是将图像转换为灰度 然后对其进行阈值计算 然后计算斑点的数
  • Android SIP 来电使用带有广播接收器的服务

    大家好 其实我正在尝试创建一个应用程序 支持基于 SIP 通过互联网进行音频呼叫 这里使用本机 sip 我遇到了来电问题 我已经完成了服务的注册部分 但是在接听电话时我无法接听电话 请帮助我 Service file package exa
  • 如何使用phonegap在iOS应用程序中防止键盘推送webview

    当屏幕底部的输入字段获得焦点时 键盘会向上推我的网络视图 并且页面的上部不再可见 我想防止键盘推高网络视图 有人有主意吗 对焦 设置window scrollTo 0 0 这可以防止键盘完全推高 webview input on focus
  • 尝试将相机切换回前面但出现异常

    尝试将相机切换回前面 但出现异常 找不到 问题请检查并帮助 error 01 27 11 49 00 376 E AndroidRuntime 30767 java lang RuntimeException Unable to start
  • 控制Android的前置LED灯

    我试图在用户按下某个按钮时在前面的 LED 上实现 1 秒红色闪烁 但我很难找到有关如何访问和使用前置 LED 的文档 教程甚至代码示例 我的意思是位于 自拍 相机和触摸屏附近的 LED 我已经看到了使用手电筒和相机类 已弃用 的示例 但我
  • 原色(有时)变得透明

    我正在使用最新的 SDK 版本 API 21 和支持库 21 0 2 进行开发 并且在尝试实施新的材料设计指南时遇到了麻烦 材料设计说我需要有我的primary color and my accent color并将它们应用到我的应用程序上
  • 获取当前 android.intent.category.LAUNCHER 活动的实例

    我创建了一个库项目 并在多个应用程序之间共享 我实现了一个简单的会话过期功能 该功能将在一段时间后将用户踢回到登录屏幕 登录屏幕活动是我的主要活动 因此在清单中它看起来像这样
  • 如何在PreferenceActivity中添加工具栏

    我已经使用首选项创建了应用程序设置 但我注意到 我的 PreferenceActivity 中没有工具栏 如何将工具栏添加到我的 PreferenceActivity 中 My code 我的 pref xml

随机推荐