开源离线安卓九宫格拼音同文输入法(1)

开源离线九宫格拼音输入法(1)

本文从一个开源贡献者的视角,介绍了同文输入法项目,包括如何安装软件、如何克隆仓库、如何使用AndroidStudio运行和打包、如何配置九宫格输入法,并提供相关压缩包,帮助后来者少走弯路,减少从开始到放弃的情况。

众所周知,输入法极其容易泄露个人隐私。出于信息安全的考虑,本人对于开发独立自主的九宫输入法有极大的兴趣。然而,主要的开源输入法都对九宫输入的支持较差。因此,本人致力于完善同文输入法的九宫输入方式。恳请大家一起来!有任何问题都可以私信我!

一、安装Java8

因为支持九宫输入的trime的最后一个版本是v3.2.9,该版本使用Java8编写。

设置环境变量JAVA_HOME,在Path变量增加%JAVA_HOME%\bin

二、安装AndroidStudio

参考Android实战------正确配置 XXX_HOME 环境变量,该博客介绍了JAVA_HOME、ANDROID_HOME、ANDROID_SDK_HOME、GRADLE_USER_HOME、GRADLE_HOME。

本人安装的是最新版2024.1.1 Patch 2版本

然后设置环境变量ANDROID_HOME(X:xxx/Android/Sdk)、ANDROID_SDK_HOME(会自动新建.android目录保存模拟器文件)、GRADLE_USER_HOME(对应.gradle目录,保存Gradle包),在Path变量增加%ANDROID_HOME%

不设置ANDROID_SDK_HOMEGRADLE_USER_HOME这两个变量的话,系统盘空间将被大量占用。

三、克隆trime仓库

可以简单阅读一下开源同文输入法trime文档

由于GitHub网络不稳定,而仓库巨大,强烈建议使用外国服务器clone(比如google的colab,各显神通吧)。

也可以私信我要压缩包。

git config --global core.symlinks true
git clone --branch v3.2.9 --single-branch git@github.com:osfans/trime.git
cd trime
git switch -c v3.2.9 
# 或者 git checkout -b v3.2.9
git branch
git submodule update --init --recursive

四、修改trime仓库

  1. 准备librime plugins
    cd trime\app\src\main\jni

    librime-lua-deps/lua5.4复制到librime-lua/thirdparty下,

    然后将librime-charcodelibrime-lualibrime-octagram复制到librime\plugins下。

  2. 修改trime/app/src/main/jni/librime_jni/rime_jni.cc

    参考[dev] Cannot compile at windows (undefined symbol),注释掉declare_librime_module_dependencies()、rime_require_module_lua()、rime_require_module_charcode()、rime_require_module_octagram()等相关代码,保存。

五、编译trime项目

AndroidStudio打开trime项目。

本人的P30手机搭载的是Hormony3 OS(基于安卓10,API Level 29),故修改trime/app/build.gradletargetSdkVersion为29,另注意ndkVersion的值。

本人还修改了enableinclude两个值,如下。

    splits {
        abi {
            enable false
            include "arm64-v8a"
        }
     }

gradle sync成功前可能会遇到很多问题,一步一步问chatgpt或者到trime的issues里搜吧。

六、运行trime项目

在Device Manager添加一个虚拟安卓设备,尤其注意API Level,最好跟前面的targetSdkVersion保持一致。

选择该设备运行trime项目,成功的话会在虚拟设备上安装同文输入法app。

打开该app,按操作指引完成安装。找个输入框测试同文是否启用(此时还无法输入中文)。

对该虚拟设备执行Open in Device Explorer,可以在安卓文件系统中找到storage/xxx/rime文件夹。

七、配置同文输入法

参考九宫输入安装说明bilibili_我是赵小赵的视频。步骤1和步骤2可以改用我上传的四叶草九宫格资源覆盖storage。

  1. 下载主题和方案

    九宫输入配置

    git clone git@github.com:SivanLaai/rime-pure.git
    
  2. 复制主题和方案文件

    进入rime-pure目录,按照trime\rimeschemes\基础文件schemes\Clover四叶草拼音schemes\Clover四叶草九宫拼音的顺序,将它们中的所有文件复制并覆盖 到前面虚拟设备的storage/xxx/rime目录下。

  3. 选择主题和方案

    先选择主题为"同文风增强版 ";

    然后选择方案,必须勾选clover_jiugong,可以三个全选;

    然后点击部署 ,或者会自动部署并退出app;

    此时应该可以使用九宫格输入中文了;

    然后可以build APK并安装到真机,需要进行同样的配置。

八、提交九宫输入的bug

经过本人的使用,九宫输入还有明显的bug。希望读者们能将bug提交到评论区,大家一起完善它。

以上,请指教!

相关推荐
F-2H1 小时前
C语言:指针4(常量指针和指针常量及动态内存分配)
java·linux·c语言·开发语言·前端·c++
苹果酱05671 小时前
「Mysql优化大师一」mysql服务性能剖析工具
java·vue.js·spring boot·mysql·课程设计
_oP_i2 小时前
Pinpoint 是一个开源的分布式追踪系统
java·分布式·开源
mmsx2 小时前
android sqlite 数据库简单封装示例(java)
android·java·数据库
武子康3 小时前
大数据-258 离线数仓 - Griffin架构 配置安装 Livy 架构设计 解压配置 Hadoop Hive
java·大数据·数据仓库·hive·hadoop·架构
豪宇刘4 小时前
MyBatis的面试题以及详细解答二
java·servlet·tomcat
秋恬意4 小时前
Mybatis能执行一对一、一对多的关联查询吗?都有哪些实现方式,以及它们之间的区别
java·数据库·mybatis
FF在路上5 小时前
Knife4j调试实体类传参扁平化模式修改:default-flat-param-object: true
java·开发语言
真的很上进5 小时前
如何借助 Babel+TS+ESLint 构建现代 JS 工程环境?
java·前端·javascript·css·react.js·vue·html
众拾达人5 小时前
Android自动化测试实战 Java篇 主流工具 框架 脚本
android·java·开发语言