2018年2月8日
使WebView可以调用原生应用的代码,通过注册Event事件的形式
简单的调用方法是:
<button id="btn_test_event">测试事件</button> <script type="text/javascript"> document.getElementById(btn_test_event).onclick = function () { var command = { 'action': 'test' }; Eagle.event(JSON.stringify(command)); } </script> 这其中的Eagle就是客户端指定的addJavascriptInterface(EagleWebInterface.create(this), "Eagle") 而event是指event()这个方法:
@JavascriptInterface public String event(String params) { final String action = JSON.parseObject(params).getString("action"); final Event event = EventManager.getInstance().createEvent(action); Logger.d("event: " + params); if (event != null) { event.setAction(action); event.setDelegate(DELEGATE); event.setContext(DELEGATE.getContext()); event.setUrl(DELEGATE.getUrl()); return event.execute(params); } return null; } ……
阅读全文
2018年2月8日
这是我做一个iOS版本运维App的时候写的代码,记录一下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 let resolveDict = [ "systemName": UIDevice.current.systemName, "systemVersion": UIDevice.current.systemVersion, "identifierForVendor": UIDevice.current.identifierForVendor?.description ?? "", "model": UIDevice.current.model, "localizedModel": UIDevice.current.localizedModel ] do { let json = try JSONSerialization.data(withJSONObject: resolveDict, options: []); let jsonStr = String(data: json, encoding: .utf8); resovler(jsonStr); } catch { rejecter("Get AppInfo error", error.localizedDescription, nil); } ……
阅读全文
2015年9月1日
下载链接 官方网站: developer.android.com/tools/studio
由于官网需要特殊方法才能正常访问,所以,我是从 这里下载 的;
问题汇总 Error:(2) Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.Button.Inverse'
跟踪链接: https://code.google.com/p/android/issues/detail?id=183122 依据#31: 修改app/build.gradle
-compile 'com.android.support:appcompat-v7:23.0.0' +compile 'com.android.support:appcompat-v7:22.2.1' ……
阅读全文
2015年8月19日
参考链接: source.android.com
由于官方提供的参考方法不能使用, 所以我把修改的配置贴了出来
init.hardware.rc on post-fs-data mkdir /data/media 0770 media_rw media_rw chown media_rw media_rw /data/media on init mkdir /mnt/shell/emulated 0771 system sdcard_rw mkdir /mnt/shell/test 0771 system sdcard_rw mkdir /storage/emulated 0775 root root export EXTERNAL_STORAGE /storage/emulated/0 export EMULATED_STORAGE_SOURCE /mnt/shell/emulated export EMULATED_STORAGE_TARGET /storage/emulated # Support legacy paths symlink /storage/emulated/0 /sdcard symlink /storage/emulated/0 /mnt/sdcard symlink /storage/emulated/0 /storage/sdcard0 symlink /mnt/shell/emulated/0 /storage/emulated/0 service sdcard /system/bin/sdcard /data/media /mnt/shell/emulated 1023 1023 disabled on property:dev.bootcomplete=1 start sdcard storage_list.……
阅读全文
2015年8月5日
安装环境
lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 14.04.1 LTS
Release: 14.04
Codename: trusty
……
阅读全文
2015年6月15日
有些时候希望在Github上搜索源代码,包含字符串什么的
Github的响应速度比AndroidXref等等快得多了,值得推荐
https://github.com/search?q=user%3ACyanogenMod+%s&type=Code&ref=searchresults 或者,如果想包含android的源代码:
https://github.com/search?q=user%3ACyanogenMod+user%3Aandroid+%s&ref=searchresults&type=Code 效果如下:
{:target=“brank”}……
阅读全文
2015年5月28日
很久以前,还年轻,不清楚Google Code是不允许托放一些文件(即当网盘来使用) 导致后来Google Code帐号被不知情的情况下,被封了,每次想打开code.google.com上的项目时,要以隐身模式打开,或是退出登录,或是用其他帐号来访问,感觉非常麻烦。
……
阅读全文
2015年5月21日
1. 转发本地端口
转发本地端口到指定端口,如转发80端口到2000
sudo iptables -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 2000
……
阅读全文
2015年5月20日
很喜欢zsh的git aliases,也希望带到其他电脑上使用,或Windows上的Git使用;
于是乎研究了一下Git aliases在Bash下的自动补全,发现确实可行,所以分享一下给大家;
……
阅读全文