紫猫学院社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 84|回复: 2

[教程源码] 分享打包小精灵InputText输入不进去或者输入法老是跳出来

[复制链接]

1

主题

2

帖子

2

积分

按键电脑&手机班学员

Rank: 8Rank: 8

猫粮
98
发表于 2019-4-9 17:44:53 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
'此函数用紫猫插件方法,插件下载地址 https://zimaoxy.com/b/t-77-1-1.html  
'下载后请解压所有文件到按键精灵安装目录的Plugin文件夹中。

Import "zm.luae" //导入插件,只需执行一次
zm.Init  //初始化插件,只需执行一次

'例子1 连接模拟器或者手机时测试调用
Call setIme("")  '调试时可写可不写此命令

'例子2 打包时调用
Dim 设备的输入法=getNowIme()    '获取当前输入法,把没有设置输入法前的输入法保存下来
Call setIme("cishidejiaoben") '设置小精灵输入法,填写的参数必须是作者自己打包时的包名
Delay 200
Tap X,Y                       '激活输入框 必须调用 setIme 函数 再激活输入框(因为点击输入框时输入法会激活,要提前设置好输入法)
Delay 500
InputText "测试输入"            '向输入框输入内容
Delay 500
call installtypewriting(设备的输入法) '把之前没有设置输入法前的输入法设置回来,此命令可配合OnScriptExit使用

'参数:packageName 是辅助自身包名  作者打包时填写的包名
'使用模拟器连接小精灵测试时辅助包名为com.cyjh.mobileanjian(此包名是安卓按键APK的,调试需要的)
'测试时可以用 call setIme("") 方式做测试 填写空字符串 默认用调试的包名com.cyjh.mobileanjian
'打包时请记得使用 call setIme("此处填写打包时填写的包名") 方式打包  
'设置脚本输入法
Function setIme(packageName)
        Dim nowPackage,packageNameIme
        If packageName="" Then
                packageName="com.cyjh.mobileanjian"
        End If
        nowPackage = zm.Execute("settings get secure default_input_method|grep "&packageName)
        If nowPackage = "" Then
                packageNameIme = zm.Execute("ime list -s -a |grep " & packageName & "|head -n 1")
                If packageNameIme = "" Then
                        ShowMessage "获取输入法失败,包名可能错误"
                Else
                        zm.Execute("settings put secure default_input_method "&packageNameIme)
                End If       
        End If
        TracePrint packageName                 //当前辅助包名
        TracePrint nowPackage                //当前输入法是否为辅助输入法
        TracePrint packageNameIme        //辅助输入法       
End Function

//获取当前输入法
Function getNowIme()
        getNowIme = zm.Execute("settings get secure default_input_method")
End Function

//获取脚本输入法
Function getNowPackageIme(packageName)
        getNowPackageIme = zm.Execute("ime list -s -a |grep " & packageName & "|head -n 1")
End Function
//设置输入法
Function installtypewriting(typewriting)
        zm.Execute("settings put secure default_input_method "&typewriting)
End Function

评分

参与人数 1猫粮 +5 收起 理由
紫猫 + 5 很给力!

查看全部评分

回复

使用道具 举报

267

主题

980

帖子

980

积分

院长

Rank: 9Rank: 9Rank: 9

猫粮
1775
QQ
发表于 2019-4-9 18:00:00 | 显示全部楼层
不错, 可以把代码美化下

[美化帖子] 发帖必备技巧之一、代码高亮功能
https://zimaoxy.com/b/t-98-1-1.html
回复

使用道具 举报

1

主题

2

帖子

2

积分

按键电脑&手机班学员

Rank: 8Rank: 8

猫粮
48
发表于 5 天前 | 显示全部楼层
做个记号,以备不时之需。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|紫猫编程学院  

GMT+8, 2019-4-18 23:33

Powered by Discuz! X3.4

© 2012-2018 紫猫编程学院

快速回复 返回顶部 返回列表