公司开发环境是linux, 为了用5+ SDK, 不得不寻找HBuilder以外的方法, 同时项目中需集成第三方SDK, 有本地代码需要本地打包. 此为背景.
假设app名为foo, 不管是在线还是本地打包, 代码目录会被放存储卡的/Android/data/com.foo/apps/foo/www目录下, 所以要实现实时刷新, 只需要解决文件同步和刷新界面的问题.
1. 文件同步
有现成的工具可以使用, adb-sync, google的python脚本用于实现本地某个目录和android某个目录的同步. github地址https://github.com/google/adb-sync
我的用法: 写个小脚本每5秒同步一次
#!/bin/bash
while [ true ]; do
/bin/sleep 5
./adb-sync --delete /media/xxx/app/ /storage/emulated/0/Android/data/com.foo/apps/foo/www/
done
2. 打开5+ runtime的webview调试
本地打包会把chrome调试关闭. 可以在首页加入以下代码:
mui.plusReady(function(){
var webView = plus.android.importClass("android.webkit.WebView");
webView.setWebContentsDebuggingEnabled(true);
});
这样本地打包的也可以用chrome调试了, PS: chrome调试参考http://ask.dcloud.net.cn/article/69
3. webview自动刷新
目前没有找到好的方法, 在chrome调试时手动F5刷新就好了
结论
最终的流程是: 找个顺手的IDE, 编辑代码 -> 保存 -> 切换到chrome -> F5刷新看效果
比不上windows下HBuilder的爽快, 但至少可以在linux下比较快的码代码了, 嗯
2 个评论
要回复文章请先登录或注册
thirteenth
云海帆