- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
描述:
“用户可安装的键盘映射”是在 http://developer.android.com/about/versions/jelly-bean.html 上为 Android 4.1 列出的一项功能。 .
上面写着:
The platform now supports user-installable keyboard maps, such as for additional international keyboards and special layout types. By default, Android 4.1 includes 27 international keymaps for keyboards, including Dvorak. When users connect a keyboard, they can go to the Settings app and select one or more keymaps that they want to use for that keyboard. When typing, users can switch between keymaps using a shortcut (ctrl-space). You can create an app to publish additional keymaps to the system. The APK would include the keyboard layout resources in it, based on standard Android keymap format. The application can offer additional keyboard layouts to the user by declaring a suitable broadcast receiver for ACTION_QUERY_KEYBOARD_LAYOUTS in its manifest.
所以.. 我想编写一个应用程序,它添加了一个新的键盘布局。因此,我必须创建一个新的 BroadcastReveiver,并在应用程序的 list 中为 ACTION_QUERY_KEYBOARD_LAYOUTS
声明它。该应用程序还提供了键盘映射文件。
那么,我的问题是:当 BroadcastReceiver
收到 ACTION_QUERY_KEYBOARD_LAYOUTS
Intent 时,它必须做什么?
我已经进行了相当多的搜索 - 然而,只有包含 ACTION_QUERY_KEYBOARD_LAYOUTS
的网站我才能找到那些从 developer.android.com 复制上述描述的网站。
如果有任何帮助,我将不胜感激
问候,
兰德尔
最佳答案
您需要创建一个或多个合适的Key Character Map files ,作为原始资源文件命名为例如mykeyboard.kcm 在你的项目中。
将相关接收器添加到 list (AndroidManifest.xml),其中 KEYBOARD_LAYOUTS 指向一个 XML 资源,该资源将每个 .kcm 文件列为键盘布局。您最终不会编写任何实际的 Java 或 native 代码,只需编写 list 和资源文件。
https://github.com/tialaramex/BritishKeyboard
上面的链接是我今天早些时候碰巧构建的一个示例,它(主要)使英语(英国)键盘布局可用,而不仅仅是默认的美国键盘,例如按 SHIFT 和 2 得到双引号而不是 @ 符号。如果您对 Android 项目有所了解,希望这足够简单,可以遵循。
最终结果是,当您连接 USB 或蓝牙键盘时,设置键盘布局的提示会列出应用程序安装的任何其他键盘布局,在本例中是一个标有英语(英国)的键盘布局。
关于安卓 4.1 : How to "implement user installable keymaps"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13335681/
export class UserListComponent implements OnInit{ users; constructor(private userService: UserS
我最近在我的系统中遇到了 Java 语言环境的问题,我试图用这个配置运行一个项目: -Duser.language=pt_BR -Duser.country=BR 谷歌搜索后,我找到了this sit
1 当我希望出现注册错误时,我的代码出现问题:管理器不可用; 'auth.User' 已替换为 'users.User' ,我尝试解决其他问题,与 Manager 不可用相同; 'auth.User'
Loopback 非常酷,但这是我迄今为止遇到的一个缺点,我真的不确定如何解决它。内置用户模型在我的 MongoDB 数据库中生成一个名为“User”的集合,当我尝试根据 Loopback.js 自己
我在 aws cognito 中有以下用户组。行政成员付费成员(member) 我想在所有用户注册我的应用程序时将所有用户默认分配到 Member 用户组,这样我就可以为该用户组分配不同的 IAM A
blogsIndex.blade.php @extends('layouts.default') @section('details')
我正在尝试在Rails 3开发环境中使用sqlite3而不是MySQL,但是遇到了问题。尝试执行rake db:migrate时,我得到: SQLite3::SQLException: no such
尝试使用 构建 API Phoenix v1.3 按照本教程: https://dreamconception.com/tech/phoenix-full-fledged-api-in-five-mi
我正在使用通过模板 cookie-cutter 创建的 Django。当我尝试在本地使用 docker 运行项目时,出现以下错误。 FATAL: password authentication fai
我正在尝试使用 node.js/adonis 创建新用户 我创建了这两个函数: const User = use("App/Models/User") async store ({ request,
我想安排一些事情,例如 GET 请求 http://example.com/user/foo@bar.com 内部调用脚本 /var/www/example.com/rest/user/GET.php
我是一名具有可用性工程背景的软件开发人员。当我在研究生院学习可用性工程时,其中一位教授有一句口头禅:“你不是用户”。我们的想法是,我们需要将 UI 设计基于实际的用户研究,而不是我们自己关于 UI 应
您好,我正在制作一个使用互联网发送消息的消息传递应用程序。我需要从用户 a 向用户 b 发出通知。 我使用这段代码: if (toUser!= nil){ parseMessage[@
在 ruby/ror 中你可以这样做: user = User.new(params[:user]) 它使用发布表单中的值填充新对象。 使用 django/python 可以完成类似的事情吗? 最
每当我编辑用户的角色时,用户都需要注销并重新登录以查看更改。提升用户时没有问题,因为他们在再次登录之前不会看到额外的权限。但是,当降级发生时,用户仍将保留其现有角色,这会带来安全风险。想象一下,撤销一
我的核心数据有线问题。使用 iOS 10 中的 Swift3,每次使用 获取或存储数据时,我都会获得托管对象上下文 func getContext () -> NSManagedObjectCont
我发现当我使用 users_path(user) 时它返回 /users.id 其中 id 是用户的 ID 但我希望它返回 /用户/ID。我的配置 routes.rb 如下所示。 # config/r
我的应用程序在我的测试设备上正常运行(当我通过 ADT 安装它时,当我通过导出的 APK 文件安装它时)但它在 Play Store 测试设备上失败并出现以下错误: Permission Denial
创建模型的第一个条目会抛出错误 我执行了以下命令进行迁移 manage.py makemigrations manage.py migrate 在我执行这些命令以在数据库中创建第一个“数据”之后,一切
我正在尝试实现一个 getter,但它在下面代码 fragment 的最后一行向我显示了这个错误。 代码是—— class AuthRepository extends BaseAuthReposit
我是一名优秀的程序员,十分优秀!