- Xposed 是什么?
Xposed框架是一款可以在不修改APK的情況下影響程序運行(修改系統(tǒng))的框架服務,基于它可以制作出許多功能強大的模塊,且在功能不沖突的情況下同時運作。目前支持7.0以下的手機系統(tǒng)。
Xposed框架下插件的執(zhí)行是不需要root權限的,但是,但是,但是普通的手機刷入Xposed框架需要root。為什么需要root權限呢?
我們來看下原理:
Android 系統(tǒng)在啟動時,有一個名字叫做“Zygote”的進程,它是android 運行時環(huán)境的核心,所有的其他app進程都需要fork這個 Zygote,然后呢這個Zygote是如何啟動呢?答案是在手機啟動時,執(zhí)行了/init.rc腳本,最后還會執(zhí)行/system/bin/app_process(加載需要的類以及關聯(lián)初始方法)。這里就是Xposed框架執(zhí)行的地方,當你安裝了Xposed框架,一個 extended app_process被拷貝到來了 /system/bin,然后這個'extended startup process' 就會加載 XposedBridge.jar到運行時環(huán)境,即使是在Zygote的main方法被執(zhí)行之前,我們也可以獲取到其上下文,做一些愛做的事(捂臉逃。然后呢,對于任何一個app ,我們都可以hook或者替換掉其中的類或方法或?qū)ο?,還有資源文件,是不是很厲害,哈哈。
知道這里以后,我們便可以開發(fā)自己的插件,具體教程點這里Xposed官方教程 -
ForceTouch是什么?
蘋果的3D Touch知道不?沒錯,就是那個。我能說android在2.0時代就有相應的支持嗎。哈哈,確實有的,來來來,看這里:
在觸摸事件中已經(jīng)有了這個壓力啦,只是我們平常沒有注意到吧。所以趕緊用上吧。MontionEvent的getPressure - 兩者如何結(jié)合?
這里我來說下應用的思路吧:通過xposed插件hook所有應用的所以view的dispatchTouchEvent事件,獲取其中的MontionEvent ,進而獲取到其中的壓力值,進而根據(jù)壓力的變化,在Xposed插件中獲取到該應用的上下文,do anything you want! - 炫酷應用推薦
全能分詞app:https://www.zhihu.com/question/53607540
這里是視頻演示:http://v.youku.com/v_show/id_XMTg2Mzg1MTk5Mg==.html
當然最后的最后是工程的網(wǎng)址:
- BigBang 全能分詞開源
- ForceTouch up,up,up
