android room定製常見需求或問題 一
1.關機工廠選單鍵測不過
檔案位置
device\sprd\scx20\********\rootdir\prodnv\PCBA.conf
程式碼位置
#please refer to the /bionic/libc/kernel/uapi/linux/input.h
key Menu 0
參照bionic/libc/kernel/uapi/linux/input.h
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define KEY_MENU 139
將keyMenu值設定成 key Menu 139
2.點選緊急電話撥號盤出現112
1.找到緊急撥號介面類名
adb shell dumpsys activity | findstr "mFocus"
結果: mFocusedActivity: ActivityRecord{411aed2 u0 com.android.phone/.EmergencyDialer
t9} mFocusedStack=ActivityStack{dcfd51f stackId=2, 3 tasks} mLastFocusedStack=Acti
vityStack{dcfd51f stackId=2, 3 tasks}
2.找到類的具體位置
********$ find ./ -name "EmergencyDialer.java"
./packages/services/Telephony/src/com/android/phone/EmergencyDialer.java
3.新增巨集控,設定值
EditText mDigits;
if(OptConfig.*********){
mDigits.setText("112");
}
Uri data = getIntent().getData();
if (data != null && (PhoneAccount.SCHEME_TEL.equals(data.getScheme()))) {
String number = PhoneNumberUtils.getNumberFromIntent(getIntent(), this);
if (number != null) {
mDigits.setText(number);
}
}
3.調整緊急撥號介面字母被遮住問題
packages\services\Telephony\src\com\android\phone\EmergencyDialer.java
private EmergencyActionGroup mEmergencyActionGroup;
mEmergencyActionGroup = (EmergencyActionGroup) findViewById(R.id.emergency_action_group);
查詢emergency_action_group在哪個資料夾
**********$ grep -rnws "emergency_action_group" packages/services/Telephony/ --include="*.xml"
packages/services/Telephony/res/layout/emergency_dialer.xml:38: android:id="@+id/emergency_action_group"
修改emergency_dialer.xml檔案
<com.android.phone.EmergencyActionGroup
android:id="@+id/emergency_action_group"
android:layout_height="50dp"
android:layout_width="match_parent"
android:layout_marginTop="10dp"
android:layout_marginBottom="15dp">
4.開機工廠不新增gps
1.找到開機工廠單項測試類名
C:\Users\Administrator>adb shell dumpsys activity | findstr "mFocus"
mFocusedActivity: ActivityRecord{3bf755e u0 com.sprd.validationtools/.itemstes
t.ListItemTestActivity t85}
mFocusedStack=ActivityStack{15d740a stackId=3, 2 tasks} mLastFocusedStack=Acti
vityStack{15d740a stackId=3, 2 tasks}
2.找到類具體位置
************$ find ./ -name "ListItemTestActivity.java"
./packages/apps/ValidationTools/src/com/sprd/validationtools/itemstest/ListItemTestActivity.java
3.在ListItemTestActivity.java找到佈局檔案
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_validation_tools_main);
}
4.找到activity_validation_tools_main.xml位置
***********$ find packages/apps/ValidationTools/ -name "activity_validation_tools_main.xml"
packages/apps/ValidationTools/res/layout/activity_validation_tools_main.xml
5.在activity_validation_tools_main.xml檔案裡找到提供列表內容的類ValidationToolsMainActivity.java
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android
rientation="vertical"
tools:context=".ValidationToolsMainActivity" >
6.找到ValidationToolsMainActivity.java檔案位置
****************$ find packages/apps/ValidationTools/ -name "ValidationToolsMainActivity.java"
./packages/apps/ValidationTools/src/com/sprd/validationtools/ValidationToolsMainActivity.java
7.在ValidationToolsMainActivity.java裡找到載入gps程式碼位置
private void startBackgroundTest() {
mBgTest = new ArrayList<BackgroundTest>();
mBgTest.add(new BackgroundBtTest(this));
mBgTest.add(new BackgroundWifiTest(this));
if (!OptConfig.*************){
mBgTest.add(new BackgroundGpsTest(this));
}
}
5.設定藍芽,wifi,gps的預設開啟與關閉
配置檔案位置:frameworks/base/packages/SettingsProvider/res/values/defaults.xml
bluetooth:<bool name="def_bluetooth_on">false</bool>
wifi:<bool name="def_wifi_on">false</bool>
gps:<string name="def_location_providers_allowed" translatable="false"></string>
6.通過adb命令檢視藍芽的預設值
測試藍芽的預設值步驟
1.adb shell
2.cd data/system
3.cd users
4. cd 0
5.grep -rn bluetiith_on ./
6.結果顯示:./settings_global.xml:15:<setting id="101" name="bluetooth_on" value="0" package="android" />
7.谷歌軟體
在\vendor\google\products\gms.mk PRODUCT_PACKAGES後面跟著的就是要安裝的模組
觀察\vendor\partner_gms\apps\GmsCore裡的 Android.mk 檔案
OCAL_PRIVILEGED_MODULE := true
這個設定表示,GmsCore模組裝入system/priv-app
如果沒有這個設定,模組會裝入system/app
8.LCD亮度預設在70%,
/*(mtk)
修改wifi,gps,Bluetooth 預設關閉Z:\eng\*************\frameworks\base\packages\SettingsProvider\res\values\default.xml
9.修改休眠時間
Z:\eng\************\frameworks\base\packages\SettingsProvider\res\values\default.xml
10.來電音量
Z:\eng\*************\frameworks\base\media\java\android\media\AudioSystem.java DEFAULT_STREAM_VOLUME
def_screen_off_timeout
11.進入開機工廠指令修改:
/device/sprd/scx35/*********/overlay/packages/apps/Dialer/res/values/strings.xml
<string name="open_factoryTest" translatable="false">*#8888#</string>(工廠測試)
<string name="open_engineerMode" translatable="false">*#*#8838#*#*</string>(工程測試)
12.(展訊)
開關機鈴聲 路徑 /vendor/sunvov/****/media/animations_sounds/shutanimation.zip
開關機圖片 路徑 /vendor/mediatek/proprietary/bootable/bootloader/lk/dev/logo/cmcc_hd720/cmcc_hd720_kernel.bmp
開關機動畫在 out\target\product\****\system\media\bootanimation.zip (bootanimation.zip裡的desc.txt檔案)
\shutanimation.zip
開關機圖片 versionTools\image\
goole商店圖示 \packages\apps\SprdLauncher\res\drawable\google_vending.png(packages\apps\SprdLauncher\res\values\array_sunvov.xml)(<string-array name = "app_package">(加這個用別的圖示) </string-array>)
背景圖片對應的編的包 out\target\product\****\obj\APPS\res...
背景圖片所在路徑 \frameworks\base\core\res\res\drawable-nodpi\default_wallpaper.jpg(預設在這,其它的在Launcher3下)cpu頻率和HZ packages/apps/Settings/res/values/strings.xml(CPU_frequency_valu
谷歌應用商店 vendor\google\products\gms.mk GmsCore(谷歌應用商店 )
雙擊home進入最近訪問記錄:device\sprd\scx20\******\overlay\frameworks\base\core\res\res\values\config.xml (<integer name="config_doubleTapOnHomeBehavior">1</integer>)
自動亮度 device/sprd/scx20/******/overlay/frameworks/base/core/res/res/values/config.xml ( <bool name="config_automatic_brightness_available">false</bool>)
新增電話記錄圖示 /packages/apps/Dialer/res/mipmap-hdpi/ic_luncher_calllog_ex.png(mipmap-hdpi,mipmap-mdpi,mipmap-xdpi,mipmap-xxdpi,mipmap-xxxdpi都要對應大小的圖片)
新增視訊圖示 /packages/apps/Gallery2/res/drawable-hdpi/icon_video.png(drawable-hdpi,drawable-mdpi,drawable-xhdpi各種大小的都要新增)
螢幕亮度預設最高 /device/sprd/scx20/***********/overlay/frameworks/base/core/res/res/values/config.xml( <integer name="config_screenBrightnessSettingDefault">255</integer>)
修改wifi直連的名稱 /frameworks/base/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java (wifi_device_name = "***************";)
固定窄屏桌布 packages\apps\Launcher3\src\com\android\launcher3\uti\WallpaperUtils.java(public static Point getDefaultWallpaperSize(Resources res, WindowManager windowManager){....defaultWidth = 480;....})
去掉第三方應用
/vendor/sunvov/***/media/Mediafiles.mk
# PRODUCT_PACKAGES += Facebook \
# Whatsapp \
# Youtube