Android系統修改彙總(MTK)
以下都是基於Android 6.0 的程式碼去修改的!!!
十四、將桌面workspace、hotseat 大小調整 放大一半 ,
這個要根據自己的需求來制定
workspace.setPadding(padding.left/2, padding.top/2, padding.right/2,
padding.bottom);
hotseat.setPadding(edgeMarginPx + padding.left/2, 0,
edgeMarginPx + padding.right/2,
2 * edgeMarginPx);
十三、隱藏Launcher3 桌面介面 上面的 搜尋欄
packages\apps\Launcher3\src\com\android\launcher3\Launcher.Java
//mSearchDropTargetBar.addView(mQsb); 註釋掉這一行
就行
十二、修改Launcher3 appall app選單列表背景透明度
\packages\apps\Launcher3\src\com\android\launcher3\allapps\AllAppsContainerView.java
mContainerView.setBackground(background);
//mRevealView.setBackground(background.getConstantState().newDrawable());
mAppsRecyclerView.updateBackgroundPadding(bgPadding);
mAdapter.updateBackgroundPadding(bgPadding);
mContainerView.getBackground().setAlpha(20);
packages\apps\Launcher3\src\com\android\launcher3\op09\AllAppsContainerView.java
mContainerView.setBackground(null);
//mRevealView.setBackground(background.getConstantState().newDrawable());
十一、長按電源鍵 只顯示 關機 一項
我們知道長按Power鍵會彈出選項,如 關機、 重啟、飛航模式。現在想只保留一項 關機 ;
frameworks/base/core/res/res/values/config.xml
搜尋 config_globalActionsList
<string-array translatable="false" name="config_globalActionsList">
<item>power</item>
</string-array>
以下是參考 ,需要新增的放在上面這個數組裡面就是了 :
<item>power</item>關機選項
<item>bugreport</item>錯誤報告選項
<item>airplane</item>飛航模式選項
<item>silent</item>靜音振動鈴聲選項
<item>restart</item>重啟選項
<item>lockdown</item>鎖屏選項
<item>screencapture</item>截圖、錄製選項
<item>users</item>使用者選項
十、無法寫入sn號,需要把這個 巨集 開啟,這個去掉註釋,讓寫的barcode生效,barcode就是SN,不然都是預設的123456789ABCDEF
vendor/mediatek/proprietary/bootable/bootloader/lk/app/mt_boot/mt_boot.c
九、launcher focus_indicator 桌面 頁面 顯示錶示 (就是桌面上那小白點),在設定系統字型大小後和在app_app介面螢幕旋轉 回到all_app 介面會顯示出來 ,bug,讓它不顯示:
+++ b/packages/apps/Launcher3/src/com/android/launcher3/Launcher.java
@@ -138,6 +138,10 @@ import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.concurrent.atomic.AtomicInteger;
+import android.hardware.SensorManager;
+
+import android.content.pm.ResolveInfo;
+import android.os.IBinder;
/**
* Default launcher application. onCreate()裡面新增
@@ -656,7 +660,47 @@ public class Launcher extends Activity
showFirstRunActivity();
showFirstRunClings();
}
+
+ IntentFilter mInrentFilter = new IntentFilter() ;
+ mInrentFilter.addAction("android.intent.action.CONFIGURATION_CHANGED");
+ registerReceiver(screenOrientationChangedReceiver,mInrentFilter) ;
+
+ mOrientationListener = new OrientationEventListener(this,
+ SensorManager.SENSOR_DELAY_NORMAL) {
+ @Override
+ public void onOrientationChanged(int orientation) {
+ }
+ };
+
+ if (mOrientationListener.canDetectOrientation()) {
+ setPageIndicatorVisble();
+ mOrientationListener.enable();
+ } else {
+ setPageIndicatorVisble();
+ mOrientationListener.disable();
+ }
}
+
+ /// R add hide Visble ndicator ///#Switching language#Screen rotation/// 2017-3-2 09:34:26
+ private void setPageIndicatorVisble(){
+ if(isAppsViewVisible()){
+ if (mPageIndicators != null){
+ mPageIndicators.setAlpha(0f);
+ }
+ } else {
+ if (mPageIndicators != null) {
+ mPageIndicators.setAlpha(1f);
+ }
+ }
+ }
+
+ /// R add Monitor#Screen rotation/// 2017-3-2 09:34:32
+ private BroadcastReceiver screenOrientationChangedReceiver=new BroadcastReceiver() {
+ @Override
+ public void onReceive(Context context, Intent intent) {
+ setPageIndicatorVisble();
+ }
+ };
@Override
public void onSettingsChanged(String settings, boolean value) {
@@ -2344,6 +2388,7 @@ public class Launcher extends Activity
if (mLauncherCallbacks != null) {
mLauncherCallbacks.onDestroy();
}
+ unregisterReceiver(screenOrientationChangedReceiver);
}
public DragController getDragController() {
@@ -5468,6 +5513,7 @@ public class Launcher extends Activity
}
return false;
}
}
diff --Git a/packages/apps/Launcher3/AndroidManifest.xml
b/packages/apps/Launcher3/AndroidManifest.xml
index a3d5ec0..20e7d4d 100755
--- a/packages/apps/Launcher3/AndroidManifest.xml
+++ b/packages/apps/Launcher3/AndroidManifest.xml
@@ -68,6 +68,7 @@
<uses-permission android:name="com.android.launcher3.permission.WRITE_SETTINGS" />
<uses-permission android:name="com.android.launcher3.permission.RECEIVE_LAUNCH_BROADCASTS" />
<uses-permission android:name="com.android.launcher3.permission.RECEIVE_FIRST_LOAD_BROADCAST" />
+ <uses-permission android:name="android.permission.CHANGE_CONFIGURATION" />
<!-- M: hide apps activity requires this permission to get package size. -->
<uses-permission android:name="android.permission.GET_PACKAGE_SIZE"/>
<!-- M: ALSP02141215, android security patch. -->
八、Workspace 介面大小修改;hotseat 介面大小修改
diff --git a/packages/apps/Launcher3/src/com/android/launcher3/DeviceProfile.java
b/packages/apps/Launcher3/src/com/android/launcher3/DeviceProfile.java
index ebb19cc..0ed0ad0 100755
--- a/packages/apps/Launcher3/src/com/android/launcher3/DeviceProfile.java
+++ b/packages/apps/Launcher3/src/com/android/launcher3/DeviceProfile.java
@@ -414,7 +414,7 @@ public class DeviceProfile {
lp.gravity = Gravity.CENTER;
Rect padding = getWorkspacePadding(isLayoutRtl);
workspace.setLayoutParams(lp);
- workspace.setPadding(padding.left, padding.top, padding.right, padding.bottom);
+ workspace.setPadding(padding.left/2, padding.top/2, padding.right/2, padding.bottom);
workspace.setPageSpacing(getWorkspacePageSpacing(isLayoutRtl));
// Layout the hotseat
@@ -432,8 +432,8 @@ public class DeviceProfile {
lp.gravity = Gravity.BOTTOM;
lp.width = LayoutParams.MATCH_PARENT;
lp.height = hotseatBarHeightPx;
- hotseat.setPadding(edgeMarginPx + padding.left, 0,
- edgeMarginPx + padding.right,
+ hotseat.setPadding(edgeMarginPx + padding.left/2, 0,
+ edgeMarginPx + padding.right/2,
2 * edgeMarginPx);
} else {
七、修改碟符名稱資訊、型號資訊
index
b20ecaa..f92828b 100755
--- a/device/hiteq/hiteq8783_tb_m/full_hiteq8783_tb_m.mk
+++ b/device/hiteq/hiteq8783_tb_m/full_hiteq8783_tb_m.mk
@@ -55,7 +55,7 @@ TRUSTY_PROJECT ?= hiteq8783_tb_m
#CHIVIN
PRODUCT_BRAND := GP8PRO
-CHIVIN_PRODUCT := GP8_PRO
+CHIVIN_PRODUCT := Aura_TELPAD_GP8_PRO_tablet
CHIVIN_VERSION := GP8_PRO_V01.00.01 #micheal modify version
#CHIVIN
diff --git a/packages/apps/Settings/src/com/android/settings/DeviceInfoSettings.Javab/packages/apps/Settings/src/com/android/settings/DeviceInfoSettings.java
index a964aed..bf11928 100755
--- a/packages/apps/Settings/src/com/android/settings/DeviceInfoSettings.java
+++ b/packages/apps/Settings/src/com/android/settings/DeviceInfoSettings.java
@@ -134,7 +134,7 @@ public class DeviceInfoSettings extends SettingsPreferenceFragment implements In
findPreference(KEY_BUILD_NUMBER).setEnabled(true);
findPreference(KEY_KERNEL_VERSION).setSummary(getFormattedKernelVersion());
- findPreference(KEY_DEVICE_MODEL).setSummary("Aura_TELPAD-GP8-PRO-tablet");
+ findPreference(KEY_DEVICE_MODEL).setSummary(SystemProperties.get("ro.product.model"));
if (!SELinux.isSELinuxEnabled()) {
String status = getResources().getString(R.string.selinux_status_disabled);
@@ -155,7 +155,7 @@ public class DeviceInfoSettings extends SettingsPreferenceFragment implements In
// Remove Equipment id preference if FCC ID is not set by RIL
removePreferenceIfPropertyMissing(getPreferenceScreen(), KEY_EQUIPMENT_ID,
PROPERTY_EQUIPMENT_ID);
diff
--git a/frameworks/av/media/mtp/MtpServer.cpp b/frameworks/av/media/mtp/MtpServer.cpp
index 470d6ca..91eb0c9 100755
--- a/frameworks/av/media/mtp/MtpServer.cpp
+++ b/frameworks/av/media/mtp/MtpServer.cpp
@@ -500,7 +500,7 @@ MtpResponseCode MtpServer::doGetDeviceInfo() {
property_get("ro.product.model", prop_value, "MTP Device");
//string.set(prop_value);
- string.set("Aura_GP8_PRO_tablet"); ///R add 2017-2-27 21:38:22
+ string.set("Aura_SP8_PRO_tablet"); ///R add 2017-2-27 21:38:22 碟符名稱
mData.putString(string); // Model
string.set("1.0");
mData.putString(string); // Device Version
六、修改距離感應的閾值Update-hiteq8783_tb_m.dts-threshold
diff
--git a/kernel-3.18/arch/arm64/boot/dts/hiteq8783_tb_m.dts b/kernel-3.18/arch/arm64/boot/dts/hiteq8783_tb_m.dts
index 7ac604a..ea78285 100644
--- a/kernel-3.18/arch/arm64/boot/dts/hiteq8783_tb_m.dts
+++ b/kernel-3.18/arch/arm64/boot/dts/hiteq8783_tb_m.dts
@@ -1,4 +1,3 @@
-
/dts-v1/;
#include "mt6753.dtsi"
@@ -92,8 +91,8 @@ [email protected] {
power_vol = <0>;
als_level = <1 2 5 10 20 30 40 80 200 300 400 600 1000 1600 2000>;
als_value = <80 400 800 1200 1800 2000 2300 2300 12000 12000 12000 48000 48000 72000 81920 81920>;
- ps_threshold_high = <90>;
- ps_threshold_low = <70>;
+ ps_threshold_high = <300>;
+ ps_threshold_low = <140>;
is_batch_supported_ps = <0>;
is_batch_supported_als = <0>;
};
注:值比ps_threshold_high 高,黑屏,值比ps_threshold_low 低,亮屏
通話介面 為避免 臉部貼近螢幕 而 設計 黑屏 ,是最好的列子。
五、鬧鐘中的倒計時;設定1秒後;當到達設定的時間後;要超過4秒作用才會提示響鈴提醒;設2秒倒計時就會3秒提示;設3秒就2秒提示;5秒後;即時提示;
index
c7bf61c..170b536 100755
--- a/packages/apps/DeskClock/src/com/android/deskclock/timer/TimerFragment.java
+++ b/packages/apps/DeskClock/src/com/android/deskclock/timer/TimerFragment.java
@@ -123,6 +123,13 @@ public class TimerFragment extends DeskClockFragment implements OnSharedPreferen
final boolean visible = Utils.getTimeNow() % TIME_PERIOD_MS < SPLIT;
final boolean toggle = mVisible != visible;
mVisible = visible;
+
+ final TimerObj mTimer_up = getCurrentTimer();
+ /// R: add Prompt
+ if (mTimer_up.mTimeLeft <= 0 ) {
+ updateTimerState(mTimer_up, Timers.TIMES_UP);
+ }
+
for (int i = 0; i < mAdapter.getCount(); i++) {
final TimerObj t = mAdapter.getTimerAt(i);
四、鈴聲音量調節時;調節到最小後;再調大;還是沒有聲音
diff --git a/packages/apps/Settings/src/com/mediatek/audioprofile/SeekBarVolumizer.java
b/packages/apps/Settings/src/com/mediatek/audioprofile/SeekBarVolumizer.java
old mode 100644
new mode 100755
index 3b52c18..fa24e40
--- a/packages/apps/Settings/src/com/mediatek/audioprofile/SeekBarVolumizer.java
+++ b/packages/apps/Settings/src/com/mediatek/audioprofile/SeekBarVolumizer.java
@@ -58,6 +58,7 @@ public class SeekBarVolumizer implements OnSeekBarChangeListener, Handler.Callba
private final Receiver mReceiver = new Receiver();
private final Observer mVolumeObserver;
private String mKey;
+ private String mCurrentKey;//add by steven on 20170215
private boolean mProfileIsActive = false;
private int mOriginalStreamVolume;
@@ -81,6 +82,8 @@ public class SeekBarVolumizer implements OnSeekBarChangeListener, Handler.Callba
mStreamType = streamType;
mKey = profileKey;
+ // add by steven on 20170215
+ mCurrentKey = mProfileManager.getActiveProfileKey();
//mMaxStreamVolume = mAudioManager.getStreamMaxVolume(mStreamType);
mMaxStreamVolume = mProfileManager.getStreamMaxVolume(mStreamType);
mSystemVolume = mAudioManager.getStreamVolume(mStreamType);
@@ -412,6 +415,9 @@ public class SeekBarVolumizer implements OnSeekBarChangeListener, Handler.Callba
}
}
+ // add by steven on 20170215
+ private static final String GENERAL_PREF_KEY = "mtk_audioprofile_general";
+
/**
* When click the "Ok" button, set the volume to system.
*/
@@ -429,6 +435,11 @@ public class SeekBarVolumizer implements OnSeekBarChangeListener, Handler.Callba
+ mLastProgress);
setVolume(mStreamType, mLastProgress, false);
} else {
+ // add by steven on 20170215
+ if (GENERAL_PREF_KEY.equals(mCurrentKey)&&!mProfileManager.isActiveProfile(mCurrentKey)) {
+ mProfileManager.setActiveProfile(mCurrentKey);
+ }
+
if (!isSilentProfileActive()) {
Log.d("@M_" + TAG, "saveVolume: " + mStreamType
+ " not Active, Revert system Volume "
三、修改藍芽預設名稱:
藍芽名稱未按要求設定;現在為Android BT; Setting---->Bluetooth---->這裡的字:“ANDROID BT ” 修改為:HaHa
diff --git a/system/bt/btif/src/btif_dm.c b/system/bt/btif/src/btif_dm.c
old mode 100644new mode 100755
index f7b9ed4..2da5800
--- a/system/bt/btif/src/btif_dm.c
+++ b/system/bt/btif/src/btif_dm.c
@@ -195,7 +195,7 @@ static BOOLEAN btif_dm_inquiry_in_progress = FALSE;
/************************************************************************************
** Static variables
************************************************************************************/
-static char btif_default_local_name[DEFAULT_LOCAL_NAME_MAX+1] = {'\0'};
+static char btif_default_local_name[DEFAULT_LOCAL_NAME_MAX+1] = "HaHa";
/******************************************************************************
二、修改預設開啟wif、bluetooth
diff --git a/frameworks/base/packages/SettingsProvider/res/values/defaults.xml b/frameworks/base/packages/SettingsProvider/res/values/defaults.xml
old mode 100644
new mode 100755
index daa22c4..0a7584b
--- a/frameworks/base/packages/SettingsProvider/res/values/defaults.xml
+++ b/frameworks/base/packages/SettingsProvider/res/values/defaults.xml
@@ -36,7 +36,7 @@
<bool name="def_haptic_feedback">true</bool>
<bool name="def_bluetooth_on">false</bool> // 預設開啟藍芽 true false
- <bool name="def_wifi_display_on">false</bool>
+ <bool name="def_wifi_display_on">true</bool>
<bool name="def_install_non_market_apps">false</bool>
<bool name="def_package_verifier_enable">true</bool>
<!-- Comma-separated list of location providers.
@@ -47,7 +47,7 @@
<bool name="assisted_gps_enabled">true</bool>
<bool name="def_netstats_enabled">true</bool>
<bool name="def_usb_mass_storage_enabled">true</bool>
- <bool name="def_wifi_on">false</bool>
+ <bool name="def_wifi_on">true</bool>
<!-- 0 == never, 1 == only when plugged in, 2 == always -->
<integer name="def_wifi_sleep_policy">2</integer>
<bool name="def_networks_available_notification_on">true</bool>
一、修改預設字型
diff --git a/frameworks/base/core/java/android/content/res/Configuration.java
b/frameworks/base/core/java/android/content/res/Configuration.java
old mode 100644
new mode 100755
index 0d41748..e7b20fa
--- a/frameworks/base/core/java/android/content/res/Configuration.java
+++ b/frameworks/base/core/java/android/content/res/Configuration.java
@@ -830,7 +830,7 @@ public final class Configuration implements Parcelable, Comparable<Configuration
* Set this object to the system defaults.
*/
public void setToDefaults() {
- fontScale = 1;
+ fontScale = 1.15f; //normal value is 1
mcc = mnc = 0;
locale = null;
userSetLocale = false;
1、launcher的佈局太居中,要想兩邊拉伸
<\packages\apps\Launcher2\res\values\dimens.xml>
<dimen name=" apps_customize_pageLayoutPaddingLeft">40dp</dimen>
<dimen name=" apps_customize_pageLayoutPaddingRight">40dp</dimen>
apps tab欄的寬度( Launcher2icon 數目、大小)
\packages\apps\Launcher2\res\layout-sw720dp\workspace.xml>
launcher:cellCountX="10"
launcher:cellCountY="6"
相關推薦
Android系統修改彙總(MTK)
以下都是基於Android 6.0 的程式碼去修改的!!! 十四、將桌面workspace、hotseat 大小調整 放大一半 , 這個要根據自己的需求來制定 workspace.setPadding(padding.left/
Android系統應用開發(六)Android framework系統預設設定修改
launcher 總結: 1、launcher的佈局太居中,要想兩邊拉伸 <\packages\apps\Launcher2\res\values\dimens.xml> <dimen name="apps_customize_pageLayo
Android系統啟動流程(一)解析init進程啟動過程
option 寫入 android change failed miss 通知 target sna 前言 作為“Android框架層”這個大系列中的第一個系列,我們首先要了解的是Android系統啟動流程,在這個流程中會涉及到很多重要的知識點,這個系列我們就來一一講解它們
Android7.1 刪除下拉通知欄中的系統圖標(mtk)
在frameworks/base/packages/systemui/res/values/config.xml這個檔案中有如下配置: <string name="quick_settings_tiles_default" translatable="false"> wifi,bt
Android系統啟動流程(一)解析init程序啟動過程
前言 作為“Android框架層”這個大系列中的第一個系列,我們首先要了解的是Android系統啟動流程,在這個流程中會涉及到很多重要的知識點,這個系列我們就來一一講解它們,這一篇我們就來學習init程序。 1.init簡介 init程序是An
Android系統啟動流程(二)解析Zygote程序啟動過程
前言 上一篇文章我們分析了init程序的啟動過程,啟動過程中主要做了三件事,其中一件就是建立了Zygote程序,那麼Zygote程序是什麼,它做了哪些事呢?這篇文章會給你這些問題的答案。 1.Zygote簡介 在Android系統中,DVM(D
Android系統啟動流程(四)Launcher啟動過程與系統啟動流程
相關文章 Android系統架構與系統原始碼目錄 Android系統啟動流程(一)解析init程序啟動過程 Android系統啟動流程(二)解析Zygote程序啟動過程 Android系統啟動流程(三)解析SyetemServer程序啟動過程 前言
Android系統啟動流程(三)解析SyetemServer程序啟動過程
相關文章 Android系統架構與系統原始碼目錄 Android系統啟動流程(一)解析init程序啟動過程 Android系統啟動流程(二)解析Zygote程序啟動過程 前言 上一篇我們學習了Zygote程序,並且知道Zygote程序啟動了SyetemServ
Hook android系統呼叫研究(一)
一、Android核心原始碼的編譯環境 系統環境:Ubuntu 14.04 x64bit Android系統版本:Android 4.4.4 r1 Android核心版本:android-msm-hammerhead-3.4-kitkat-mr1 手機裝置:Nexus
Android系統應用開發(九)遮蔽狀態列下拉
網上關於遮蔽狀態列的文章搜到不少,但都是針對某個應用,或者鎖屏狀態,才能遮蔽狀態列的下拉,而我的需求是不管任意狀態都遮蔽狀態列下拉,百度到的也可能版本不一樣,說的一些檔案都找不到,搜到一篇文章,自己修改了一個方法,然後OK了,具體如下: 檔案位置:frameworks
Android多渠道打包彙總(六)—— 美團的多渠道打包方式
1. 原理 大家都知道,apk檔案其實可以看做是一個壓縮包,我們把一個Android應用包當作zip檔案包進行解壓,然後發現在簽名生成的目錄下(META-INF)新增一個空檔案不需要重新簽名。利用這個機制,該檔案的檔名就是渠道名。這種方式不需要重新簽名等步驟,
Android系統應用開發(四)系統語言以及新增字型庫
1.如何向android的setting語言列表中新增一門語言 第一種:修改配置檔案 位置:build/target/product/languages_full.mk| languages_small.mk,這兩個檔案裡頭,有PRODUCT_LOCALES := en_U
Android多渠道打包彙總(四)—— 為什麼要進行多渠道打包
1. 什麼是多渠道包? 渠道包就是要在安裝包中新增渠道資訊,也就是channel,對應不同的渠道,例如:小米市場、360市場、應用寶市場等 2. 為什麼要提供多渠道包? 我們要在安裝包中新增不同的標識,應用在請求網路的時候攜帶渠道資訊,方便後臺做運營統
一步步淺析Android系統導航欄(NavigationBar)
Android手機可分為有導航欄以及沒導航欄兩種,一般有物理按鍵的機器不會帶有導航欄,而沒有物理按鍵的機器則基本會帶,比如華為的手機基本都是帶導航欄的。 導航欄是如何載入到桌面上?是如何實現與物理按鍵相同的功能的呢?帶著種種疑問,我們來read the fuc
Android系統預設Home(Launcher)的啟動過程小結
http://blog.csdn.net/happy08god/article/details/24265167 Android系統開機,各個應用是如何載入並被顯示到桌面上的呢?帶著這份好奇,閱讀了在 AndroidManifest.xml 會
android底層修改media曲線(MTK)
修改media聲音曲線 一、聲音調節 ①通過audio tuning調節 聲音值得範圍為0~255,volume的值也可決定聲音的大小,最大值為172,該值太大會出現破音。 ②如果需要從程式碼角度就獲得相應的曲線,需要修改 vendor/mediatek/propriet
Android實戰——第三方服務之Bmob後端雲的增刪改查、上傳文件、獲取文件、修改密碼(二)
tid blank 生成 src 上傳圖片 放置 第三方 b數 net 第三方服務之Bmob後端雲的增刪改查、上傳文件、獲取文件、修改密碼(二) 事先說明:這裏的一切操作都是在集成了BmobSDK之後實現的,如果對Bmob還不了解的話,請關註我第一篇Bmob文章 步
Android 攔截WebView請求,並加入或修改引數(GET)
今天遇到一個需求,H5內部呼叫登入請求,然後手機端給他拼接使用者的ID及其他訊息 這個WebView提供了方法shouldInterceptRequest 下面程式碼,只是簡單demo,請求方式是get mWebView.setWebViewClient(new WebViewClien
android hardware 簡述(Android系統原始碼情景分析 筆記)
轉自 https://blog.csdn.net/u013377887/article/details/52965988 1.Android原始碼開發的C可執行原始檔一般存在external目錄下 2 Android的幾層框架. &n
android系統功能呼叫(Notification、廣播開機自啟動、A應用啟動B應用)
首先,我來一個整體概括:新建一個app,設定開機自動啟動,然後建立一個notification,當用戶點選notification時,啟動另一個應用程式,好了,廢話多說,讓我們來看程式碼吧! java文件 private Button button; int