1. 程式人生 > >MTK android 常用修改點

MTK android 常用修改點

1. *#06#等關鍵碼判斷檔案

SpecialCharSequenceMgr.java

2.音效 ControlPanelEffect.java 3.版本號修改 bulid/core/build_id.mk 4.預設牆紙修改 framework/base/core/res/res/ drawable-nodpi/default_wallpaer.jpg 5.其他牆紙修改 package/apps/Launcher2/res/drawable-nodpi/ wallpaper_01.jpg 6.音訊引數調整 mediatek/custom/commin/cgen/inc/audio/mt6575_phone/audio_volume_custom_default.h mediatek/custom/commin/cgen/inc/audio_volume_custom_default.h 7.機器型號直接修改
build/tools/buildinfo.sh #ro.product.model = 公司內部手機名 #ro.product.name = 手機正式名稱 #ro.product.device = 採用的裝置名稱 #ro.product.board = 採用的處理器 #ro.build.product = 舊程式碼,等同於裝置名稱 #ro.custom.build.version = 編譯版本號 8.公司基本命令修改 target_build.sh   usr_build.sh 注意修改相關機型名 9.主make檔案常用配置      a.  語言           mediatek/config/ pd715
/ProjectConfig.mk           #MTK_PRODUCT_LOCALES=zh_CN en_US es_ES zh_TW  #什麼語言放在前面就是預設什麼語言       b.輸入法           DEFAULT_INPUT_METHOD=com.sohu.inputmethod.sogou.SogouIME           MTK_LATINIME_SUPPORT = yes#開啟yes 搜狗輸入法不起作用,開啟no搜狗輸入法起作用.           MTK_INPUTMETHOD_PINYINIME_APP = yes#用搜狗輸入法,一般no        c.通話3秒自動屏滅           CUSTOM_NO_INCALL_SCREEN_OFF = yes        d.全域性巨集定義           AUTO_ADD_GLOBAL_DEFINE_BY_NAME        e.開關機logo定義目錄           BOOT_LOGO =  pda700
 f.來電歸屬地            MTK_PHONE_NUMBER_GEODESCRIPTION = yes          e.重力感測器                MTK_ACCELEROMETER_SUPPORT = yes 10.常用預設配置檔案           framework/base/packages/SettingsProvider/res/values/defaults.xml           a.屏滅時間  def_screen_off_timeout    60000(60s)  -1(永不)           b.預設時間格式 time_12_24           c.背光等級 def_screen_brightness           d: 螢幕切換 def_accelerometer_rotation 11.字型,字型檔更換 framworks/base/data/fonts/ DroidSansFasllback.ttf 12.如果現實有誤,除字型檔外需要注意的地方是安卓字型相關解析 external\harfbuzz\src\ harfbuzz-myanmar.c 13.藍芽一般修改      a .去掉wireless input             刪除 <category android:name="android.intent.category.LAUNCHER" />      b.藍芽裝置預設名稱修改           framworks\base\core\jni\Android_bluetooth_common.h           #define BTMTK_ANDROID_DEFAULT_LOCAL_NAME "ANDROID BT"       c. buluetooth HostName(藍芽改名)           mediateck/config/common/custom.conf           bluetooth.HostName =  VENERA 907        14.桌面預設預設修改           package/apps/Launcher2/res/ xml_sw600dp/default_workspace.xml            launcher:packageName=" com.google.android.youtube
           launcher:className=" com.google.android.youtube.HomeActivity" 15.記憶體容量大小            mediatek/build/tools/ptgen/ MT6575/partition_table_MT6575.xls 16.Music引數位置修改            packages/apps/MusicFX/src/com/musicfx/ControlPanelEffect.java 17.鈴聲修改           frameworks/base/data/sounds/ AudioPackage2.xml           指定拷貝方式 18.全域性系統配置             mediatek/config/ pd700/system.prop         a.預設時區修改             persist.sys.timezone = Asia/Shanghai          b.設定嚮導預設關閉              ro.setupwizard.mode=DISABLED          c.螢幕解析度              ro.sf.lcd_density=160 19.開關機動畫          verdor/mediatek/ pd700/artifacts/out/target/product/ pd700/system/media/bootanimation.zip           verdor/mediatek/ pd700/artifacts/out/target/product/ pd700/system/media/shutanimation.zip 注意關機動畫和關機鈴聲需要在 system.pro 加入 ro.operator.optr=CUST 20.開關機鈴聲         verdor/mediatek/ pd700/artifacts/out/target/product/ pd700/system/media/bootaudio.mp3         verdor/mediatek/ pd700/artifacts/out/target/product/ pd700/system/media/shutaudio.mp3       並確認frameworks/base/core/java/com/android/internal/app/ShutdownThread.java 中 283行 mShutOffAnimation 的初始值為true 21.預設提示/鬧鐘/ring鈴聲      build/target/product/core.mk    ro.config.notification_sound= Proxima.ogg \ 
    ro.config.alarm_alert= Alarm_Classic.ogg \ 
    ro.config.ringtone= Elves.mid 22.工程指令修改等    mediatek/packages/apps/EngineerMode/src/com/mediatek/engineermode/EngineerModeRecevier.java    mediatek/packages/apps/FactoryMode/src/com/mediatek/factorymode/FactorymodeReceiver.java 23.輸入法佈局相關修改     package/inputmethods/LatinIME/java/res/下 24.WAP相關      a.wap主頁不顯示導航以及yahoobookmark           packages/apps/Bcore\mt_devs.c 開啟巨集 CONFIG_MTK_USB_UNIQUE_SERIALrowser/src/com/android/browser/BrowserFeatureOption.java 25.uboot logo           mediatek\custom\common\lk\logo\ pda700_wsvga\pda700_wsvga_kernel.bmp (./mk r dr  >> system.img) 
          mediatek\custom\common\lk\logo\ pda700_wsvga\pda700_wsvga_uboot.bmp (./mk uboot >> logo.bin) 
26.開機預設時間 framework/base/services/java/com/android/server/NetworkTimeUpdateService.java //自動校時修改 cust_rtc.h 
rtc-mt6575.h(跟平臺對應檔案)檔案中  27.手機唯一SN顯示      mediatek\platform\mt6577\kernel\ 28.預設字型大小      frameworks\base\core\java\android\content\res\Configuration.java      public void setToDefaults()      fontScale = 1.10f; 1代表預設的大小,1.10f代表大,1.15代表超大// 不一定,高解析度0.9是normal      在/system/build.prop檔案裡面加入


ro.sys.def_font_scale = ?(值可以設定成如:100, 130)

     PS:ro.sys.def_font_scale = 130,即fontScale = 1.3時,相應的字型大小為“大”。 

Settings中系統的字型大小,在/packages/apps/Settings/res/values/arrays.xml 或者 values-sw600dp等檔案中的   arrays.xml ”entryvalues_font_size”這個tag中分別有定義對應的數值,   Small:0.9     Normal:1.0   Large:1.1   Extra Large:1.15   
600dp不同 29.plmn    mediatek\frameworks\base\telephony\etc\spn-conf.xml 30.時間格式修改 frameworks\base\core\res\res\values\donottranslate-cldr.xml 
<string name="numeric_date_format">M/d/yyyy</string> //不同語言不同目錄,不同格式  31.預設音量修改 frameworks\base\media\java\android \media\AudioManager.java 修改DEFAULT_STREAM_VOLUME 陣列  32.pa修改( modem  mediatek\custom\common\modem下目錄 ProjectConfig.mk內指定目錄 如 CUSTOM_MODEM=pd775_hspa 33. 修改移動資料開關預設狀態

\frameworks\base\services\java\com\android\server\ConnectivityService.java
  public boolean getMobileDataEnabled() {
        enforceAccessPermission();
        boolean retVal = Settings.Secure.getInt(mContext.getContentResolver(),
              //  Settings.Secure.MOBILE_DATA, 1) == 1;//資料開關預設開啟
              Settings.Secure.MOBILE_DATA, 0) == 1; //add by boardcon 資料開關預設關閉
        if (DBG) Slog.d(TAG, "getMobileDataEnabled returning " + retVal);
        return retVal;
    } 

mtk只需要修改make,MTK_DEFAULT_DATA_OFF=yes

34.分割槽修改

  A 修改分割槽檔案mediatek\build\tools\ptgen\partition_table.xls

  B 修改分割槽標頭檔案mediatek\custom\project\common\partition_define.h

35. 預設照片修改,驅動層修改無效?原因未知
packages\apps\Camera\src\com\android\camera\CameraSetting.java
initialCameraPictureSize 函式中
修改為
if(candidate.equals("640x480"))    {                  SharedPreferences.Editor editor = ComboPreferences                       .get(context).edit();                 editor.putString(KEY_PICTURE_SIZE, candidate);                 editor.apply();                 return;     } 
 
36.logo
mediatek\custom\common\uboot\logo\ 

37.版本號時間自動按時間生成方法
echo "ro.custom.build.version=P730-G-tab-4G-`date +%Y%m%d-%H:%M`" 

38. android 如何修改MTP在PC端顯示的製造商資訊
1. 修改build/tools/buildinfo.sh中的 ro.product.manufacturer 2.frameworks\av\media\mtp\MtpServer.cpp 的doGetDeviceInfo()
property_get("ro.product.manufacturer", prop_value, "unknown manufacturer");
string.set(prop_value);
修改此處的prop_value

39. 72 factory mode 字型變大問題

此現象只在6572平板專案中,非平板是正常的。。
修改了font.mk中
ifeq ($(LCM_WIDTH),800)
        LOCAL_CFLAGS += -DFEATURE_FTM_FONT_24x44
改成
          LOCAL_CFLAGS += -DFEATURE_FTM_FONT_16x28
即可,如果想方便平板和非平板的維護,加個平板控制巨集就好 

40. 72開關機動畫
mediatek/operator/OP02/prebuilt/bootanim/bootanimation

  ??

41.修改按鍵喚醒配置
mediatek/config/m709/mtk-kpd.kl

42. exif
照片資訊裡面加入的標頭檔案資訊
extractExifInfo 

43.預設動態桌布
framework/base/core/res/res/values/config.xml
原來:
<string name="default_wallpaper_component">@null</string>  
現在:
<string name="default_wallpaper_component" translatable="false">com.android.wallpaper/com.android.wallpaper.grass.GrassWallpaper</string>    
如:
com.android.wallpaper 在 AndroidManifest 檔案中的 packagename,
com.android.wallpaper.grass.GrassWallpaper 在 AndroidManifest 檔案中的 service name
需要注意的是:靜態的圖片桌布和動態桌布是兩個不同的系統,載入的時候是完全兩套機制,
靜態圖片通過 launcher 裡面的一個 xml 檔案配置來管理系統預設靜態桌布,
動態桌布則是通過 intent 機制向系統搜尋所有匹配 Activity,
所以,這裡的預設值為 null,而不是那個系統預設靜態桌布的地址,系統是讀 config.xml 檔案的設定。
若為 null 才繼續查詢靜態桌布配置內容。設定之後沒有效果的話,恢復下出廠設定即可。
另外將需要用到第三方動態桌布,提前預置到sytem/app中; 

44. 第一次開機會走的檔案(恢復出廠設定也會走)
packages/apps/Provision/src/com/android/provision/DefaultActivity.java
在這個裡面的oncreate方法裡面新增需要處理第一次開機配置

45.系統啟動預設值修改
如果想修改系統啟動後加載的預設值

修改SettingsProvider預設值,Settings能夠配置Android系統的各種設定,這些設定的預設值都是由frameworks中的SettingsProvider從資料庫中讀取的,那麼第一次開機的時候這些資料都是從哪兒來的呢?

frameworks/base/packages/SettingsProvider/res/values/defaults.xml

這個檔案就是用來儲存Android系統的預設設定

例如:

<integername="def_screen_off_timeout">600000</integer>設定關屏超時時間的預設值

<integername="def_screen_brightness">102</integer>設定亮度的預設值

<boolname="def_install_non_market_apps">false</bool>設定是否允許安裝非Market應用程式的預設值

如果想定義defaults.xml中沒有的,在這裡新增後,需修改

frameworks/base/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java,加入自己的儲存程式碼。