iApp 手册网
主页
管理员
关于
搜索
主页
裕语言 5.0 官方文档
指定系统编译
java 方案一 // 在裕语言V5中可以指定系统来编译代码 //执行 java 多行代码 java { String str = "这是 iApp"; android.util.Log.v("iap
2022-12-22 15:27:22 最后更新
目录开头符号标识
java // 代码中需要输入一个文件的代码,填写路径的开头第一个可以使用符号进行快捷指向路径 // 路径开头为 % 硬盘分区根路径 // 路径开头为 @ 包内资源路径 // 路径开头为 $ 应用安装位置路径
2022-12-22 15:27:22 最后更新
裕语言v5 里的根对象
java 用法: //这是裕语言V5里的根对象,也是所有子对象的父对象,裕语言V5 所有代码的源头命名。 iapp // 根对象的 子对象 // 字符管理对象 iapp.zf // 数据
2022-12-22 15:27:22 最后更新
资源管理对象
java // 资源管理对象,与代码根对象不同,主要的作用是获取项目内相关资源的ID // 资源管理对象的 根对象 zy 或 iapp.zy // 获取 strings.xml 内的名称为 a 字符串 s a = z
2022-12-22 15:27:22 最后更新
类模块对象的创建
java // myu 类模块需要先创建对象 cj 或 iapp.cj // 创建 abc.myu 类模块的对象,同时会调用 abc.myu 类模块的构造 ff lei() s abc = cj.abc() //
2022-12-22 15:27:22 最后更新
修饰符
java // 全局;在变量或 方法前加上后可使用 文件名.方法或变量名 进行访问。 qj // 私有;在变量或 方法前加上后,方法或变量名仅供当前文件访问。 sy // 固定;申明 变量 并赋值后,其值不可改变。其
2022-12-22 15:27:22 最后更新
自定义application
java 在 AndroidManifest.xml 中自定义 application name 类一定要 extends i.app.applicationMain
2022-12-22 15:27:22 最后更新
s 数据类型
java 用法: // 推断类型 //说明:根据首次赋值的数据来推断变量类型。推断类型 无法作为方法的申明参数变量使用。 // 字符串型(String) s d = "nihao" string d2 =
2022-12-22 15:27:22 最后更新
myu 类模块
java // 创建一个 abc.myu 源码文件,内容如下: // 创建 模块变量 a并赋值 s a = "NiHao" s aa = "" qj s aaa = "全局变量" // 用java申明变量 jav
2022-12-22 15:27:22 最后更新
ff 方法
java // 以 ff 开头 + 可选:修饰符 + 可选:方法返回类型 + 方法名 ( 参数 可选:强制参数类型 ) ff abc() { gj.sc("这是 无返回数据,无参数 的方法") }
2022-12-22 15:27:22 最后更新
数组类型
java 用法: // 申明一个字符串数组 s sz1 = { "abc", "def", "g" } // 申明一个字符串数组 string sz4 = { "abc", "def", "g" } // 获取
2022-12-22 15:27:22 最后更新
数组列表类型
java 用法: // 申明一个字符串的数组列表 alist lb1 = cj.alist() // 申明一个类模块的数组列表,提前创建一个类模块 mk.myu alist l
2022-12-22 15:27:22 最后更新
哈希表类型
java 用法: // 申明一个字符串的数组列表 hmap map1 = cj.hmap() // 申明一个类模块的数组列表,提前创建一个类模块 mk.m
2022-12-22 15:27:22 最后更新
// 或 /* */ 注释
java 用法: //单行注释 / 这是多行注释 /
2022-12-22 15:27:22 最后更新
gj.sc 输出
java 用法: // 可以输出数据 gj.sc("1314")
2022-12-22 15:27:22 最后更新
rg 如果判断
java 用法: s a = 2 rg a == 1 { gj.sc("等于1") } ,a == 2 { gj.sc("等于2") } , { gj.sc("等于其他") } 支持运算符(
2022-12-22 15:27:22 最后更新
xh 循环
java 用法: //这将循环99次 s a = 99 // 单个表达式循环 xh a 0 { gj.sc(a) a = a 1 } //这将循环9次,使用 a 让变量每次减少1 s a = 9
2022-12-22 15:27:22 最后更新
yc 异常
java // 无异常日志 yc{ gj.sc("执行正常代码") },{ gj.sc("如果发生异常,将被执行") } // 有异常日志 yc{ gj.sc("被执行代码") },(e){
2022-12-22 15:27:22 最后更新
st.*() 获取视图控件
java 用法: //如,获取文本控件对象 // 输入控件的ID s wb = st.wb(zy.id.wb1) gj.sc(wb) s wb2 = st.wb(zy.id.wb2) // 获取控件的原对象
2022-12-22 15:27:22 最后更新
gj.xc 新线程
java 用法: gj.xc() { gj.sc("新线程里执行代码") } 说明: 启用新线程,去执行一些需要执行很久的代码。比如把下载文件,获取网页源码,大量的文件操作,可以放入新线里执行。这里线程的概念,启用
2022-12-22 15:27:22 最后更新
gj.jmxc 界面线程上运行
java 用法: // 对应V3.0 线程更新界面 gj.jmxc() { gj.sc("界面线程上运行代码") } // 界面线程 上对视图进行操作 // 启用一个新线程 gj.xc() {
2022-12-22 15:27:22 最后更新
gj.ts 提示
java 用法: // 该方法需要手机开放应用的通知权限 // 第一个参数为 需要被提示的内容 gj.ts("你好") // 或 第二个参数为显示时长 1代表正常,2代表短暂 gj.ts("你好", 1)
2022-12-22 15:27:22 最后更新
wj.wj 获得文件对象
java 用法: // 获取文件对象 s f = wj.wj("%a.txt") // 输出完整文件路径 gj.sc(f.getAbsolutePath())
2022-12-22 15:27:22 最后更新
wj.cz 文件是否存在
java 用法: // 文件是否存在 s a = "%abc.zip" s b = wj.cz(a) // 文件夹是否存在 s a = "%abc" s b = wj.cz(a) //返回 true 或 fal
2022-12-22 15:27:22 最后更新
wj.sc 删除文件
java 用法: // 删除文件 s a = "%abc.zip" s b = wj.sc(a) // 文件夹删除,并删除子文件夹 s a = "%abc" s b = wj.sc(a, true) //返回
2022-12-22 15:27:22 最后更新
wj.dx 文件大小
java 用法: s a = "%abc.zip" s b = wj.dx(a) //返回 文件 或 文件夹 的大小 gj.sc(b)
2022-12-22 15:27:22 最后更新
wj.dqwb 读取文本
java 用法:(将读取SD卡根目录的abc.txt文件里面的内容) s a = "%abc.txt" s c = wj.dqwb(a) s a = "%abc.txt" s b = "utf8" s c = wj.
2022-12-22 15:27:22 最后更新
wj.xrwb 写入文本
java 用法:(将文本数据写入至SD卡根目录的abc.txt文件里面) s a = "%abc.txt" s b = "我是一个txt文件的内容" s d = wj.xrwb(a, b) s a = "%abc.txt
2022-12-22 15:27:22 最后更新
wj.fz 复制文件
java 用法: s a = "%abc.txt" s b = "%abc2.txt" s d = wj.fz(a, b) //设置重复不覆盖 s c = false s d = wj.fz(a, b, c)
2022-12-22 15:27:22 最后更新
wj.lb 文件夹与文件列表
java 用法: // 注意 lb l是字母L的小写, 为拼音首字母 lb=列表 s a = "%dir" //获取文件夹与文件列表 s b = wj.lb(a) // 循环数组 xh s c, b {
2022-12-22 15:27:22 最后更新
wj.czwj 查找文件
java 用法: // 文件名过滤,开头与结尾的为任意字符 s gl = { ".txt", "abc", "abc" } // 获取一个 File 对象数组 s lb = wj.czwj("%dir",
2022-12-22 15:27:22 最后更新
wj.zy 转移文件
java 用法: s a = "%abc.txt" s b = "%abc2.txt" s d = wj.zy(a, b) //设置重复不覆盖 s c = false s d = wj.zy(a, b, c)
2022-12-22 15:27:22 最后更新
wj.hqml 获取目录路径
java 用法: s a = "%dir" s d = wj.hqml(a) //返回 绝对路径 gj.sc(d)
2022-12-22 15:27:22 最后更新
wj.jy 解压zip文件
java 用法: // 目标ZIP s a = "%a.zip" // 只解压部分文件 s b = "b.txt" // 解压到指定目录 s c = "%dir" // 重复是否覆盖 s d = true
2022-12-22 15:27:22 最后更新
wj.ys 压缩zip文件
java 用法: // 目标文件夹路径 s a = "%dir" // 压缩到ZIP的路径 s b = "%a.zip" // 解压文件,重复不覆盖 s d = wj.ys(a, b) //返回 压缩的
2022-12-22 15:27:22 最后更新
wj.dk 打开文件
java 用法: s a = "%abc.apk" wj.dk(a) //无返回
2022-12-22 15:27:22 最后更新
wj.lx 文件类型
java 用法: s a = "%abc" s b = wj.lx(a) //返回一个整数,1为文件 2为文件夹 1为不存在
2022-12-22 15:27:22 最后更新
zf.th 替换字符
java 用法: s a = "123456789" s b = "2" s c = "0" s d = zf.th(a, b, c) //返回 替换后的字符 gj.sc(d) //支持正则表达式 s d
2022-12-22 15:27:22 最后更新
zf.qc 取出字符
java 用法: s a = "123456789" s b = "23" s c = "78" s d = zf.qc(a, b, c) //返回 取出后的字符 gj.sc(d) s b = 2 s c
2022-12-22 15:27:22 最后更新
zf.fg 分割字符
java 用法: s a = "12,34,56,789" s b = "," s d = zf.fg(a, b) // 循环数组 xh s e, d { gj.sc(e) } // 支持正则表达式
2022-12-22 15:27:22 最后更新
zf.cx 从头查询字符位置
java 用法: s a = "123456789" s b = "56" s d = zf.cx(a, b) //返回 查询的字符位置 gj.sc(d) // 设置查询的起始位置,从位置 2 开始查询 s
2022-12-22 15:27:22 最后更新
zf.dc 从尾倒查询字符位置
java 用法: s a = "123456789" s b = "56" s d = zf.dc(a, b) //返回 查询的字符位置 gj.sc(d) // 设置查询的起始位置,从位置 2 开始查询 s
2022-12-22 15:27:22 最后更新
zf.cd 获取字符长度
java 用法: s a = "123456789" s d = zf.cd(a) //返回 字符的长度 gj.sc(d)
2022-12-22 15:27:22 最后更新
zf.qctwkg 去除头尾空格
java 用法: s a = " 123456789 " s d = zf.qctwkg(a) //返回 字符的将去除头尾空格 gj.sc(d)
2022-12-22 15:27:22 最后更新
zf.zhxx 转换为小写
java 用法: s a = "aBcDefGh" s d = zf.zhxx(a) //返回 字符的将转换为小写 gj.sc(d)
2022-12-22 15:27:22 最后更新
zf.zhdx 转换为大写
java 用法: s a = "aBcDefGh" s d = zf.zhdx(a) //返回 字符的将转换为大写 gj.sc(d)
2022-12-22 15:27:22 最后更新
zf.sjs 生产范围随机数
java 用法: s a = 1000 s b = 9999 s d = zf.sjs(a, b) gj.sc(d)
2022-12-22 15:27:22 最后更新
gj.zt 暂停代码
java // 创建线程 gj.xc(){ // gj.zt(以毫秒为单位,1秒=1000毫秒) gj.zt(1000) gj.sc("1秒后") gj.zt(3000) gj.sc("3秒后") }
2022-12-22 15:27:22 最后更新
数组
java 用法: s sz = { "a", "b", "c", "d" } s sz2 = { 1, 2, 3, 4 } s sz3 = cj.string5 // 循环数组 xh s e, sz { g
2022-12-22 15:27:22 最后更新
wl.hq 获取网页源码
java 用法: // 需要注意的是 wl.hq 需要放入线程中执行; // 创建线程 gj.xc(){ // 网址 s a = "https://m.baidu.com" // post提交的数据,对应
2022-12-22 15:27:22 最后更新
wl.hqjson 获取源码并且提交json内容
java 用法: // 需要注意的是 wl.hqjson 需要放入线程中执行; // 创建线程 gj.xc(){ // 网址 s a = "https://m.baidu.com" // post提交的数
2022-12-22 15:27:22 最后更新
wl.xz 下载文件
java 用法: // 创建线程 gj.xc(){ s a = "https://m.baidu.com/static/index/plus/plus_logo.png" s b = "%plus_logo.png"
2022-12-22 15:27:22 最后更新
wl.fw 访问网页
java 用法: s a = "https://m.baidu.com" wl.fw(a)
2022-12-22 15:27:22 最后更新
gj.tz 跳转界面
java 用法: // 跳转 abc.iyu 界面 gj.tz("abc") // 或 gj.tz(abc.lei) //或 根据包名+类名 跳转 com.iapp.abc 界面,访问 com.iapp 包的
2022-12-22 15:27:22 最后更新
sj.hqtz 获取跳转的数据
java 用法: // 当跳转界面后,可以再跳转后的界面进行获取相关数据 // 根据 name 来获取它的值 s name1 = sj.hqtz("name1") gj.sc(name1) // 直接获取 Bu
2022-12-22 15:27:22 最后更新
st.tc 弹窗界面
java 用法: s tb = zy.t.i s bt = "标题" s nr = "内容" s an1 = "按钮1" s an2 = "按钮2" s an3 = "按钮3" // 无按钮 s tc1 =
2022-12-22 15:27:22 最后更新
gj.gb 关闭界面
java 用法: // 关闭当前界面 gj.gb()
2022-12-22 15:27:22 最后更新
gj.xszm 显示桌面
java 用法: // 显示桌面 gj.xszm()
2022-12-22 15:27:22 最后更新
gj.mtbf 媒体播放
java 用法: // 输入媒体数据源 // 本地媒体,支持格式 3gp,mp3,mp4,mkv,wav,ogg,ts,aac s mt = gj.mtbf("%abc.mp3") // 网络媒体,支持协议 http
2022-12-22 15:27:22 最后更新
gj.ftz 发送通知
java 用法: s tsbt = "提示标题" s bt = "标题" s test = "内容" s icon = zy.t.i // 点击通知后跳转到 abc.iyu 界面 s iyu = abc.lei /
2022-12-22 15:27:22 最后更新
st.xfc 悬浮窗
java 用法: s v = 视图控件 s k = 200 s g = 200 s x = 100 s y = 100 // 创建并显示悬浮窗 s xfc = st.xfc(v, k, g, x, y) //
2022-12-22 15:27:22 最后更新
列表适配器的操作
java 用法: // 获取列表控件 s lb = st.lb(zy.i.lb1) // 获取列表适配器 // 输入界面对象(item.iyu),输入布局资源 s lbspq = lb.lbspq(item.lei
2022-12-22 15:27:22 最后更新
xt.fsdx 发送短信
java 用法: s a = "10086" s b = "0" xt.fsdx(a, b) 注意:测试时只显示syso日志,不直接 发送短信,打包即可。
2022-12-22 15:27:22 最后更新
xt.bddh 拨打电话
java 用法: s a = "10086" xt.bddh(a) 注意:测试时只显示syso日志,不直接 拨出号码,打包即可。
2022-12-22 15:27:22 最后更新
xt.sj 当前时间
java 用法: s a = 0 s b = xt.sj(a) gj.sc(b) 说明: 第一个参数为时间类型 数字类型 0:20140707 09:10:08 1:2014/07/07 09:10:
2022-12-22 15:27:22 最后更新
获取屏幕相关分辨率
java 用法: //获取屏幕宽度 s k = xt.pm().k //获取屏幕高度 s g = xt.pm().g //获取顶部状态栏高度 s ztl = xt.pm().ztl // 状态栏 false
2022-12-22 15:27:22 最后更新
xt.dkyy 打开app应用
java 用法: xt.dkyy("com.iapp") //或 带有指定类名的启动 xt.dkyy("com.iapp", "com.iapp.MakeiApp")
2022-12-22 15:27:22 最后更新
xt.yylb 获取app列表
java 用法: // 输入获取是否包含系统应用 s sz = xt.yylb(false) xh s app, sz { // 包名 gj.sc(app.bm) // 图标 gj.sc(app.tb) /
2022-12-22 15:27:22 最后更新
xt.xzyy 卸载应用
java 用法: xt.xzyy("com.iapp") 说明: 输入应用包名
2022-12-22 15:27:22 最后更新
wl.scwj 上传文件
java 用法: s a = "http://abc.com/upfile.php" s b = { "filename=iApp我的应用.apk", "test=非常好的应用哦" } s c = { "%abc/iApp.a
2022-12-22 15:27:22 最后更新
动态创建控件
java 用法: // 创建文本控件 wb wb = st.wb() // 设置ID 也可以不设置ID wb.id(10087) // 设置宽高 1为最大,2为自适应 wb.kg(2, 2) // 其他的设置
2022-12-22 15:27:22 最后更新
gj.txcl 图像处理
java 用法: s t = gj.txcl("%1.jpg") // 是否开启编辑图像后更新对象;true时如你对图像进行了裁剪,再次裁剪则以上次裁剪的基础进行继续裁剪。以及裁剪后可直接保存图像;false时图像编辑后,再
2022-12-22 15:27:22 最后更新
xt.jqbxr 剪切板写入文本
java 用法: s a = "nihao" xt.jqbxr(a) 说明: 可用于复制到剪切板,其他应用可获取到此数据。
2022-12-22 15:27:22 最后更新
xt.jqbhq 剪切板获取文本
java 用法: s a = xt.jqbhq() gj.sc(a) 说明: 可获取剪切板数据,得到其他地方写入的剪切板数据。
2022-12-22 15:27:22 最后更新
xt.sbxm 设备休眠
java 用法: // 设置为不休眠 xt.sbxm(false) 说明: 设置后手机将不休眠,不锁屏。默认为 true 需要休眠。注意需要权限 android.permission.WAKE_LOCK
2022-12-22 15:27:22 最后更新
视频播放
java 用法: // 获取视频控件 s sp1 = st.sp(zy.id.sp1) // 输入媒体数据源 3gp、MP4、avi s mt = sp1.zrsp("%abc.mp4") // 网络媒体,支持
2022-12-22 15:27:22 最后更新
加载界面
java 用法: // 获取一个线性布局 s xxbj = st.xxbj(zy.i.xxbj1) // 设置要被加载的界面 与 界面的布局资源,值为数组可传入多个 s iyus = { item.lei } s
2022-12-22 15:27:22 最后更新
数据转换
java 用法: s a = 123 s b = 123.12 s c = "abc" // 转换为字符串 s zfc = sj.zh(b).zstring() // 转为布尔型 s brx = sj.zh
2022-12-22 15:27:22 最后更新
设备信息
java 用法: // 设备SDK s sdk = xt.sbxx().sdk // 设备版本 s bb = xt.sbxx().bb // 设备品牌 s pp = xt.sbxx().pp // 设备
2022-12-22 15:27:22 最后更新
xt.ycxnjp 强制隐藏虚拟键盘
java 用法: // 隐藏虚拟键盘 xt.ycxnjp()
2022-12-22 15:27:22 最后更新
wl.xzgl 下载管理
java 用法: s a = "%down/temp" s b = "%down/save" //并发线程上限数量(1为默认,1为单任务,N为多任务)线程数量过多可能造成卡顿 s c = 1 s d = 250
2022-12-22 15:27:22 最后更新
wl.xzglq 下载管理器
java 用法: // 临时文件存放路径 s a = "%down/temp" // 下载文件存放路径 s b = "%down/save" //同时下载任务 s c = 3 //单任务开启线程的上限;比如你同
2022-12-22 15:27:22 最后更新
wl.web web服务器
java 用法: // web服务器开启后,可用浏览器进行访问你的站点 //本机访问地址 http://127.0.0.1:8888/iyuhelpV5.0.txt //局域网访问地址 http://局域网IP:88
2022-12-22 15:27:22 最后更新
wl.tjz 套接字 socket
java 用法: // 需要启用线程 gj.xc(){ // 创建服务端 // 输入服务端口,服务端超时限制(指定时间内无新连接则关闭服务器,0为无限制),客户端超时限制(已连接的客户端指定时间内未通信则关闭,0为无限制
2022-12-22 15:27:22 最后更新
wl.sjb 用户数据报协议 udp
java 用法: // 需要启用线程 gj.xc(){ // 输入本地服务端的端口 s sjb = wl.sjb(6666)(cp,dp,bs,ip,dk){ // cp 数据报协议对象 // dp 接收数据对象
2022-12-22 15:27:22 最后更新
zf.zzbds 正则表达式
java 用法: //字符串 s a = "qqqq123456eee" //正则表达式 s b = "(az+)(\\d+)" //更多参数 s c = 0 // 获取正则表达式对象 s zz = z
2022-12-22 15:27:22 最后更新
xt.gn 设备功能操作
java 用法: s gn = xt.gn() // 闪光灯 需要权限 android.permission.CAMERA // 闪光灯开启 gn.sgd() // 闪光灯停止 gn.sgdtz()
2022-12-22 15:27:22 最后更新
xt.qxgl 权限管理
java 用法: //判断写入权限是否已授权 s qxgl = xt.qxgl() s xr = qxgl.qx("android.permission.WRITE_EXTERNAL_STORAGE") gj.sc("写入权
2022-12-22 15:27:22 最后更新
sj.sjk 数据库操作
java 用法: //连接一个私有数据库,如果不存在将自动新建 //输入数据库文件名 s sjk = sj.sjk("iapp.db") //连接一个公共数据库,如果不存在将自动新建 //输入数据库文件名 s s
2022-12-22 15:27:22 最后更新
sj.md5 获取md5吗
java 用法: // 输入 File对象,获取文件的md5 // 获取文件对象 s f1 = wj.wj("%a.txt") // 根据文件对象获取md5 s b1 = sj.md5(f1) gj.sc(b1)
2022-12-22 15:27:22 最后更新
动画操作
java 用法: // 创建动画对象 s dh = gj.dh() // 渐变透明度动画,1 代表不透明,0代表透明;还可以设置0.5等半透明 s jbtm = dh.jbtm(1, 0) // 持续时长 jbt
2022-12-22 15:27:22 最后更新
zf.json json数据解析
java 用法: //解析json数据 s text = "{\"id\":1, \"name\":\"xiaobai\", \"age\":16}" s jo = zf.json(text) // 获取根json对
2022-12-22 15:27:22 最后更新
utb toolbar工具栏设置
java 用法: //设置自定义的工具栏 为当前界面的工具栏 //输入Toolbar工具栏的 控件id或控件对象 s gjl = st.gjlbj(zy.i.gjlbj1).gjl() // 设置左按钮可用 gjl
2022-12-22 15:27:22 最后更新
st.tctx 弹窗提醒
java 用法: //无按钮弹出提醒 //输入控件对象或ID,输入字符,输入显示时长(值0 1 2) st.tctx(zy.i.xxbj1, "ni hao", 0) //有按钮弹出提醒 //输入控件对象可设
2022-12-22 15:27:22 最后更新
滑动窗体控制
java 用法: // 获取滑动窗体 s hdct1 = st.hdct(zy.i.hdct1) //绑定标签布局,绑定后滑动界面时标签布局会跟随运动,需要注意 标签布局 和 滑动窗体 的子项数量应一致,新增子项时也需
2022-12-22 15:27:22 最后更新
st.tccd 弹出菜单
java 用法: // 代码自定义菜单 // 输入菜单绑定的控件对象或ID s tccd = st.tccd(zy.i.xxbj1)(mi){ // 触发选择后 s id = mi.getItemId() rg
2022-12-22 15:27:22 最后更新
动态设置事件
java 用法: // 获取一个编辑框控件对象 s bjk = st.bjk(zy.i.bjk1) // 下面以编辑框控件对象为例,动态设置常用监听事件 // 动态设置单击触屏事件 // 简
2022-12-22 15:27:22 最后更新
自定义控件
java 新增控件:在 添加控件 滑动到底部,点击 添加新控件 例,输入: 控件名:线性的控件 完整类名:android.widget.LinearLayout 代码相关操作: // 根据控件ID 来获取自定义控件对象
2022-12-22 15:27:22 最后更新
更多代码正在测试中,会逐步开放!
java
2022-12-22 15:27:22 最后更新