Android預安裝軟件&adb命令&編譯源碼

1.預安裝軟件:

將eclipse下的工程文件夾FactoryTest複製到

android\platform\packages\apps\

在FactoryTest目錄下創建一個名爲 Android.mk的文件,內容如下:

LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := optional
LOCAL_SRC_FILES := $(call all-subdir-java-files)
LOCAL_PACKAGE_NAME := FactoryTest
include $(BUILD_PACKAGE)

添加

LOCAL_MODULE_PATH := $(TARGET_OUT_DATA_APPS)

讓app可以被卸載


打開文件

android\platform\device\mediatek\mt8658sdk\device.mk

將 FactoryTest 添加到 PRODUCT_PACKAGES 裏面

重新 build 整個工程

目錄下,然後編譯android源碼再燒錄就可以完成

當然,在該下刪除apk也可以實現去掉預裝軟件,這應該就是很多精簡rom包實現的原理


2.編譯android源碼

進入android源碼根目錄下

rm $OUT/system $OUT/data $OUT/obj/APPS -rf
source build/envsetup.sh 
make p_w_picpath


3.燒錄

將編譯得到的out/mt8658sdk/bin/mt8658_bl_linux.bin拷貝至U盤根目錄下的 UPG文件夾下

連接串口,重啓機器,進入命令行

輸入upg開始燒錄

燒錄完成後手動重啓,或者輸入reset重啓


4.模擬器訪問本地服務器

模擬器訪問本地服務器時,不是127.0.0.1也不是localhost

網上很多文章說10.0.2.2 是模擬器設置的特定ip,類似於本地的127.0.0.1

我試過在模擬器播放我本地apache服務器,本地訪問127.0.0.1完全沒問題,但是在模擬器上不能訪問127.0.0.1和10.0.2.2,然後網上有篇文章說是機器的ip,我按照方法沒有獲取到ip,但是我嘗試用本地主機的局域網ip試試,結果就可以了


5.adb命令

這才發現adb命令的強大,這裏只是記錄一下這幾天用到的幾個

adb devices    查看當前已連接的android設備

adb connect 10.19.255.102:5555    連接android設備,ip是設備的ip,端口號爲默認的5555

adb disconnect 10.19.255.102:5555

adb shell    進入adb命令行

am start -n com.android.settings/com.android.settings.Settings    進入android系統設置

am start -a android.intent.action.VIEW -d http://10.19.255.59/    用瀏覽器打開制定網頁

adb install <-r> D:\\FactoryTest.apk    強制安裝apk

adb shell rm /data/app/<*.apk>

adb push 文件路徑 手機中的路徑    拷貝文件到android設備中

adb pull 手機中文件名 電腦路徑    拷貝文件到電腦中

am start -a android.intent.action.CALL -d tel:10086    撥打電話

am start -a android.intent.action.VIEW geo:0,0?q=beijing    啓動google map直接定位到北京



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章