編輯:關於Android編程
在Android中啟動JAVA程序其實有很多種方式,現總結如下
一、在Android應用程序中發送Intent啟動Android應用程序
這個方式最簡單,最常用。在此不在累述。關於Intent的更多內容請閱讀《Intent技術簡介》
二、在shell控制台通過am命令發送Intent來啟動Android應用程序
在Android的shell控制台通過am命令發送Intent來啟動Android應用程序
關於此的詳細內容請參考《Android命令am詳解》
三、在shell控制台直接通過davlikvm命令啟動一個JAVA程序。
該方式有個天生的缺點,即在其中,很多Android的JNI無法調用。因為Android的很多JNI其實是需要手動注冊的。
關於請參考《基本Dalvik VM調用》
四、在shell控制台直接通過運行app_process程序啟動一個JAVA程序
在app_process程序中,他會對Android的JNI進行手動注冊的,能很好的使用Android的API,因此通過運行app_process程序啟動一個JAVA程序,是一個比較完美的方式。app_process程序是一個C程序,它的源碼位於frameworks\base\cmds\app_process。
關於它的使用請參考《Android命令am詳解》以及shell腳本frameworks\base\cmds\am\am和frameworks\base\cmds\pm\pm
am腳本文件如下: www.2cto.com
# Script to start "am" on the device, which has a very rudimentary
# shell.
#
base=/system
export CLASSPATH=$base/framework/am.jar
exec app_process $base/bin com.android.commands.am.Am "$@"
pm腳本文件如下:
# Script to start "pm" on the device, which has a very rudimentary
# shell.
#
base=/system
export CLASSPATH=$base/framework/pm.jar
exec app_process $base/bin com.android.commands.pm.Pm "$@"
CLASSPATH指定了你的程序的位置,com.android.commands.pm.Pm則說明了程序的入口為com.android.commands.pm.Pm,即入口函數main()所在的類,"$@"就是傳遞給main()函數的參數,只是這裡"$@"本身又是個shell傳入的參數而已
需要注意的是CLASSPATH中的文件必須是dalvik文件格式的,關於此的轉換請參考《基本Dalvik VM調用》當然CLASSPATH中的文件可以是apk文件,只是你的apk中至少應該有個擁有main()入口函數的類。
直接上效果圖 功能特色: 1、可以設置刮開後顯示文字或圖片 2、可以統計已刮開區域所占百分比 下面是源碼:= MV) { // 二次貝塞爾,實現平滑曲線;cX,
在使用eclipse進行安卓java的編程的時候,有時候我們會遇到這樣的問題:那就是無故彈出aapt.exe停止工作的提示,雖然程序不會崩潰,但是這個提示經常彈出很是煩人
接觸了這麼久的View,總不能一直停留在View裡,現在開始呢,就要學習一個新的知識點:SurfaceView,實際上SurfaceView與View的原理都差不多,只是
今天我們一起通過一個小例子來學習一下使用PULL解析器解析XML文件。 (1)首先我們放一個文件名為beauties.xml的XML文件到assets目錄下,文件內容如下