- 开始
- Demo, 调试运行
- Hello World
- 与vue交互
- 常用api
- 支持库(超强)
- 热更新
- 打包
- 远程部署
- 与java交互
- Q&A - 常见问题
- UI设计
- 【API文档】:
- Overview - 综述
- Tip - 阅读说明
- Click - 基于坐标的操作
- 开始 - 基于控件的操作
- Click - 基于控件的操作
- UiSelector - 查找控件
- UiObject - 控件
- App - 应用
- Canvas - 画布
- Console - 控制台
- Crypto - 加解密与消息摘要
- Device - 设备
- Dialogs - 对话框
- Engines - 脚本引擎
- Events - 事件与监听
- Floaty - 悬浮窗
- Files - 文件系统
- Globals - 一般全局函数
- Http - HTTP
- Images - 图片与图色处理
- Keys - 按键模拟
- Media - 多媒体
- Modules - 模块
- Sensors - 传感器
- Shell - Shell命令
- Storages - 本地存储
- Threads - 多线程
- Timers - 定时器
- UI - 用户界面
- Work with Java - 调用Java API
用JS任意控制手机上的APP
与Java或Android交互#
1. 直接使用Android的API#
举例: 接受广播包
const IntentFilter = android.content.IntentFilter;
const BroadcastReceiver = android.content.BroadcastReceiver;
var filter = new IntentFilter();
filter.addAction("android.net.conn.CONNECTIVITY_CHANGE"); // 监听网络变化
// 替换为其他的广播事件
var receiver = new BroadcastReceiver({
onReceive: function(context, intent) {
console.log('监听到广播包: 网络变化');
console.log(intent);
}
});
context.registerReceiver(receiver, filter);
2. 加载Jar包#
path
<string> jar文件路径
加载目标jar文件,加载成功后将可以使用该Jar文件的类。
// 加载jsoup.jar到内存
runtime.loadJar("./jsoup.jar");
// 使用jsoup解析html类
importClass(org.jsoup.Jsoup);
log(Jsoup.parse(files.read("./test.html")));
(jsoup是一个Java实现的解析Html DOM的库,可以在Jsoup下载)
3. 加载Dex包(path)#
path
<string> dex文件路径
加载目标dex文件,加载成功后将可以使用该dex文件的类。
因为加载jar实际上是把jar转换为dex再加载的,因此加载dex文件会比jar文件快得多。可以使用Android SDK的build tools的dx工具把jar转换为dex。