1ï¼å ±äº«åéï¼å åï¼
2ï¼ç®¡é
3ï¼handleæºå¶
runOnUiThread(Runnable)
view.post(Runnable)
android è¿ç¨å çæ¶æ¯é©±å¨æºå¶---Handler,MessageQueue,Runnable,Looper
LooperåMessageçå¤çæºå¶:é¦å å¨ä¸»çº¿ç¨ä¸å建äºä¸ä¸ªhandler对象,ç®çæ¯ä¸ºäºå¤çä»å线ç¨åéè¿æ¥çæ¶æ¯,ç¶åå½å线ç¨æåéæ¶æ¯çéæ±æ¶ä¼ä½¿ç¨Message对象,æ¶æ¯é¦å ä¼è¢«åå¨å¨Message queueæ¶æ¯éåä¸,主线ç¨è¿æä¸ä¸ªLooperæ¶æ¯è½®è¯¢å¨,ä¼å¾ªç¯éåæ¶æ¯éåä¸çæ¶æ¯,å½åç°æ¶æ¯çæ¶åä¼åéæ¶æ¯ç»handlerå¤ç(æ´æ°uiçæä½),handlerè°ç¨handleMessageå¤çå®åå°Message置为null以便åæ¶.
2è¿ç¨é´çéä¿¡
è¿ç¨é´çéä¿¡ï¼
bindæºå¶ï¼IPC->AIDL)
linuxçº§å ±äº«å å
boradcast
Activityä¹é´å¯ä»¥éè¿intentæ¥ä¼ éæ°æ®
3.å®åç»æè¿ç¨å ç§æ¹å¼
1)使ç¨ActivityManagerä¸çrestartPackage(String packname)æ¹æ³,è¿éæ¸ åæ件éé¢è¦é ç½®æé
2)android.os.process.killProcess(int pid)åªè½ç»æ¢æ¬ç¨åºçè¿ç¨
3)System.exit()
4)å¨android2.2çæ¬ä¹ååä¸è½å使ç¨restartPackage()æ¹æ³ï¼èåºè¯¥ä½¿ç¨killBackgroundProcesses()æ¹æ³,åæ¶åºè¯¥é ç½®æé
5)å©ç¨åå°è°ç¨forceStopPackageæ¥ç»æ6)使ç¨Linuxæ令kill -9