1.机器型号,机器盘符的修改位置
alps/build/tools/buildinfo.sh 编译后会在alps/out/target/product/s88m/system/build.prop下生成。
2.蓝牙名称修改位置
alps/device/mediatek/common/custom.conf。
3.Build Number的修改位置
alps/build/tools/buildinfo.sh的echo “ro.build.display.id=$BUILD_DISPLAY_ID”
4.开机logo的修改位置
alps/vendor/mediatek/proprietary/booktable/bootloader/lk/dev/logo/wsvga/的wsvga_uboot.bmp(第一屏),wsvga_kernel.bmp(第二屏)。怎么寻到这个位置的,根据alps/vendor/mediatek/proprietary/bootable/bootloader/lk/project/s88m.mk下的BOOT_LOGO := wsvga。
5.APN配置修改
alps/device/mediatek/common/appns-conf.xml。
6.Single-SIM(单卡)
alps/device/discovery/s102m/ProjectConfig.xml
[Triple SIM]:
CUSTOM_MODEM = mt8735_sp_lwg_tsts
GEMINI=yes
MTK_GEMINI_ENHANCEMENT=yes
MTK_DT_SUPPORT=no
MTK_SHARE_MODEM_SUPPORT=3
MTK_SHARE_MODEM_CURRENT=3
MTK_GEMINI_3SIM_SUPPORT=yes
[Dual SIM]:
CUSTOM_MODEM = mtk6735_65t_m_lwg_dsds
GEMINI=yes
MTK_GEMINI_ENHANCEMENT=yes
MTK_DT_SUPPORT=no
MTK_SHARE_MODEM_SUPPORT=2
MTK_SHARE_MODEM_CURRENT=2
MTK_GEMINI_3SIM_SUPPORT=no
[Single SIM]:
CUSTOM_MODEM = mtk6735_65t_m_lwg_dsds
GEMINI=no
MTK_GEMINI_ENHANCEMENT=no
MTK_DT_SUPPORT=no
MTK_SHARE_MODEM_SUPPORT=2
MTK_SHARE_MODEM_CURRENT=1
MTK_GEMINI_3SIM_SUPPORT=no
7.alps/device/discovery/s102m/ProjectConfig.xml/下CUSTOM_MODEM = s102_FAJUE8735_TB_M_3G18_4G13720。
8.屏修改
alps/kernel-3.18/arch/arm64/configs/s102m_debug_defconfig
alps/kernel-3.18/arch/arm64/configs/s102m_defconfig
CONFIG_CUSTOM_KERNEL_LCM修改
9.8321平台
1.预置动画/铃声
alps/vendor/mediatek/proprietary/custom/t10q/system/media
alps/vendor/mediatek/proprietary/custom/t10q/system/app/app.mk
2.gms包app增减
alps/devices/discovory/t10q/gms.mk
3.配modern
alps/device/discovery/t10q/ProjectConfig.mk
4.增删apk
alps/device/mediatek/mt6580/device.mk
5.图标大小
android_src\frameworks\base\core\res\res\values\Dimens.xml中有个 app_icon_size
6.默认壁纸修改
8783_6.0/device/discovery/m104/overlay/frameworks/base/core/res/res/drawable-
7.短信默认铃声
在alps/device/discovery/m104/device.mk添加如下内容
PRODUCT_PROPERTY_OVERRIDES := \
ro.com.android.dateformat=MM-dd-yyyy \
ro.config.ringtone=Ring_Synth_04.ogg \
ro.config.notification_sound=SMS_1.mp3 \
ro.config.alarm_alert=Alarm_Classic.ogg
ro.config.ringtone 默认铃声
ro.config.notification_sound 默认提示音
ro.config.alarm_alert 默认闹铃
8.sound¬ification下的general下的vibrate等默认开启关闭修改
frameworks/base/media/java/com/mediatek/audioprofile/AudioProfileManager
9.settings->Display->sleep的默认休眠时间修改
framaworks/base/packages/SettingsProvider/res/values
30000
10 wifi direct默认名称修改
frameworks/opt/net/wifi/service/java/com/android/server/wifi/p2p/WifiP2pServiceImpl.java的WifiP2pServiceImpl()方法。
11 email签名
packages/apps/Email/provider_src/com/android/email/activity/setup/AccountSettingsUtils.java的
12device/discovery/t10q/android.hardware.telephony.gsm.xml
13音量修改
frameworks/base/media/java/android/media/AudioSystem.java
闹钟,来电音量修改
frameworks/base/media/java/com/mediatek/audioprofile/AudioProfileManager.java
音量的最大值设置
frameworks/base/services/core/java/com/android/server/audio/AudioService.java
14语言添加
device/discovery/m104/full_m104.mk
15 照相机的制造商,机型修改
package/apps/Gallery2/src/com/android/gallery3d/data/MediaDetails.java下的setExifData()
16去掉关机动画
device/discovery/m104/system.prop下的去掉ro.operator.optr=CUST
17如何将带源码的APK预置进系统?
1)在packages/app下面以需要预置的APK的 名字创建一个新文件夹,以预置一个名为Test的APK为例
2)将Test APK的Source code拷贝到Test文件夹下,删除/bin和/gen目录
3)在Test目录下创建一个名为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 := Test
include $(BUILD_PACKAGE)
4)打开文件device\mediatek\common\device.mk
将Test添加到PRODUCT_PACKAGES里面。
PRODUCT_PACKAGES += Test
5)重新build整个工程
18修改默认输入法
DatabaseHelper.java
private static final String defaultEnableInputMethods = “com.google.android.inputmethod.latin/com.android.inputmethod.latin.LatinIME:com.google.android.apps.inputmethod.hindi/.HindiInputMethodService”;
loadSecureSettings(SQLiteDatabase db)方法添加如下内容
loadSetting(stmt, Settings.Secure.ENABLED_INPUT_METHODS,defaultEnableInputMethods); //enabled
loadSetting(stmt, Settings.Secure.DEFAULT_INPUT_METHOD,defaultEnableInputMethods);//默认输入法
19 LOCAL_PRIVILEGED_MODULE := true
20.时区修改time_zones_by_country
21.单双卡配置
[Dual SIM]:
CUSTOM_MODEM = mtk6735_65t_m_lwg_dsds
GEMINI=yes
MTK_GEMINI_ENHANCEMENT=yes
MTK_DT_SUPPORT=no
MTK_SHARE_MODEM_SUPPORT=2
MTK_SHARE_MODEM_CURRENT=2
MTK_GEMINI_3SIM_SUPPORT=no
[Single SIM]:
CUSTOM_MODEM = mtk6735_65t_m_lwg_dsds
GEMINI=no
MTK_GEMINI_ENHANCEMENT=no
MTK_DT_SUPPORT=no
MTK_SHARE_MODEM_SUPPORT=2
MTK_SHARE_MODEM_CURRENT=1
MTK_GEMINI_3SIM_SUPPORT=no
22 频率
vendor/mediatek/proprietary/bootable/bootloader/lk/dev/lcm/JD9364_HUAZHENG/JD9364_HUAZHENG.c的params->dsi.PLL_CLOCK
kernel-3.18/drivers/misc/mediatek/lcm/JD9364_HUAZHENG/JD9364_HUAZHENG.c的params->dsi.PLL_CLOCK
23 cts测试注意事项
把failed的数改成notExcuted的数,notExcuted的数改成failed的数。
result="fail"替换为result=“notExecuted”
24屏修改位置
/vendor/mediatek/proprietary/bootable/bootloader/lk/project/m104.mk
/kernel-3.18/arch/arm64/configs/m104_defconfig
/vendor/mediatek/proprietary/bootable/bootloader/lk/dev/lcm/JD9365BC_IPS_BODA
26 音量的最大值修改
vendor/mediatek/proprietary/custom/m104/cgen/cfgdefault/audio_ver1_volume_custom_default
27 屏幕亮度的最大值修改
/frameworks/base/core/res/res/values/config.xml的config_screenBrightnessSettingMaximum
28 mtklog:##3646633##
29新建项目:./mk_project_64.sh add m107
30.system.prop文件目录/device/discovery/m104/system.prop
31.SD卡槽软件屏蔽其正常功能
修改的位置
把/kernel-3.18/arch/arm64/boot/dts/mt6735.dtsi的compatible = "mediatek,mt6735-mmc注释掉
32.USB接口软件屏蔽其正常功能
(1)USB充电功能去掉
/kernel-3.18/drivers/misc/mediatek/usb20/mt6735/usb20.c的bool mt_usb_is_device(void)函数返回为false
(2)OTG去掉
/kernel-3.18/arch/arm64/configs/m104_defconfig的CONFIG_USB_MTK_OTG=yes的yes去掉
33.默认墙纸修改
/device/discovery/m104/overlay/frameworks/base/core/res/res/drawable-sw720dp-nodpi
/device/discovery/m104/overlay/frameworks/base/core/res/res/drawable-sw600dp-nodpi
/device/mediatek/common/overlay/tablet/frameworks/base/core/res/res/drawable-sw600dp-nodpi
34.去掉安全模式
/frameworks/base/services/core/java/com/android/server/wm/WindowManagerService.java中的detectSafeMode()方法把 mSafeMode = menuState > 0 || sState > 0 || dpadState > 0 || trackballState > 0 || volumeDownState > 0;这一行设置为 mSafeMode=false
35.system的内存修改
/device/mediatek/build/build/tools/ptgen/MT6735M
/device/discovery/m107/BoardConfig.mk的BOARD_MTK_SYSTEM_SIZE_KB :=
36 DDR修改
vendor/mediatek/proprietary/bootable/bootloader/preloader/custom/m104/inc/custom_MemoryDevice.h
vendor/mediatek/proprietary/bootable/bootloader/preloader/tools/emigen/MT6735
37.git checkout -b 新分支名 老分支名(这种写法的意思为基于老分支创建新的分支)
38.配置文件
/kernel-3.18/arch/arm64/configs/m107_defconfig
39.电池曲线修改
/8735_6.0/kernel-3.18/arch/arm64/boot/dts/m107_bat_setting.dtsi
40.git命令使用
1)git config --global user.name “Your Name”
2)git config --global user.email “Your Email”
3)git init 用于初始化当前所在目录的项目
4)创建.gitignore文件,提交时会忽略该文件里面的项目文件
5)git status 查看项目状态
6)git add .或者git add -A添加修改过的文件
7)git commit -m "Message"提交
8)git branch查看当前所在分支
9)git checkout切换分支
10)git branch 分支名 :在branch下新建分支
11)git checkout -b 新分支名 分支名:在分支下创建子分支,并切换到子分支。
12)git log得到commit历史
13)git checkout 历史序列号 文件名 :还原文件到历史版本
14) git reset –hard 回退到历史版本
15)git show commit --name-only查看某次commit修改了那些文件
41.M版make -j8命令编译经常卡死或者编译报ERROR: Cannot launch Jack server错误的解决办法
在命令终端输入cat .jack
Server settings
SERVER=true
SERVER_PORT_SERVICE=8072
SERVER_PORT_ADMIN=8073
SERVER_COUNT=1
SERVER_NB_COMPILE=4
SERVER_TIMEOUT=60
SERVER_LOG=KaTeX parse error: Expected '}', got 'EOF' at end of input: {SERVER_LOG:=SERVER_DIR/jack-KaTeX parse error: Expected 'EOF', got '}' at position 24: …ORT_SERVICE.log}̲ JACK_VM_COMMA…{JACK_VM_COMMAND:=java}
Internal, do not touch
SETTING_VERSION=2
把SERVER=true 改成SERVER=false
42.编译突然莫名奇妙出现错误make: *** [out/target/common/obj/APPS/Phone_intermediates/classes-full-debug.jar] error 41
只需输入以下的命令即可:
$ make clobber (删除所有配置所编译输出的结果文件)
$ make
43.重力感应方向修改
kernel-3.18/arch/arm64/boot/dts/m104.dts
44.摄像头的颜色调整
kernel3.18/drivers/misc/mediatek/imgsensor/src/mt6735/camera_project/m107/gc2355_mipi_raw_1lane/gc2355mipi_Sensor.c中修改字符SENSOR_OUTPUT_FORMAT_RAW_Gb中”Gb“可改为”G“,”R“,“Gr”
45.摄像头方向调整sensor 安装角度
vendor/mediatek/proprietary/custom/mt6735/hal/D1/imgsensor_metadata/gc2355_mipi_raw/config_static_metadata.sensor.gc2355mipiraw.h
vendor/mediatek/proprietary/custom/mt6735/hal/D1/imgsensor_metadata/gc2355_mipi_raw/config_static_metadata.project.camera.gc2355mipiraw.h
vendor/mediatek/proprietary/custom/m107/hal/imgsensor_metadata/common/config_static_metadata_common.h
vendor/mediatek/proprietary/custom/mt6735/hal/D1/imgsensor_metadata/common/config_static_metadata_common.h
46.TP校正
kernel3.18/drivers/misc/mediatek/mach/mt6735/m107/touchpanel/GT9XXTB_hotknot/tpd_custom_gt9xx.h
47.摄像头方向180度调整
后摄修改:
kernel3.18/drivers/misc/mediatek/imgsensor/src/mt6735/camera_project/m107/hm5040_mipi_raw/hm5040mipiraw_Sensor.h
write_cmos_sensor(0x0101,0x03);//flip+mirror
.sensor_output_dataformat = SENSOR_OUTPUT_FORMAT_RAW_Gb
前摄修改:
kernel3.18/drivers/misc/mediatek/imgsensor/src/mt6735/camera_project/m107/gc2355_mipi_raw_1lane/gc2355mipi_Sensor.c
write_cmos_sensor(0x17,0x17);//14
48.LCM的rotation修改
MTK_LCM_PHYSICAL_ROTATION
vendor/mediatek/proprietary/bootable/bootloader/lk/project/m107.mk
kernel-3.18/arch/arm64/configs/m107_defconfig
device/discovery/m107/ProjectConfig.mk
49.设置jdk环境变量
sudo gedit ~/.profile
sudo gedit ~/.bashrc
手动切换jdk
sudo update-alternatives --config java
50.修改喇叭左右声道串音的问题
vendor/mediatek/proprietary/custom/m107/hal/audioflinger/audio/Audio_Customization_Common.h的#define ENABLE_STEREO_SPEAKER
51.查找亮度值
cd /sys/class/leds/lcd-backlight/brightness
52.删out下的logo
out/target/product/m104/obj/BOOTLOADER_OBJ/build-m104/dev/logo
out/target/product/m104/logo.bin
53.工厂模式 ##34685##
54.mtklog:##3646633##
55.报错Unfortunately,the process android.process.acore has stopped
把out下的UserDictionaryProvider.apk删掉重编译
56.下载的所有应用默认保存到sd卡
修改/frameworks/base/data/etc/platform.xml 添加WRITE_EXTERNAL_STORAGE media_rw
57.android 4.2 camera驱动添加
添加 mediatek\custom\common\kernel\imgsensor
添加mediatek\custom\common\kernel\imgsensor/src/kd_sensorlist.h
添加mediatek\custom\common\kernel\imgsensor/inc/kd_imgsensor.h
添加 mediatek\custom\common\hal\imgsensor
添加mediatek\custom\common\hal\imgsensor/src/sensorlist.cpp
添加mediatek/config/s301_nand_hvga/ProjectConfig.mk
添加mediatek/custom/s301_nand_hvga/kernel/camera/camera/kd_camera_hw.c
如果前后摄camera相同,设置cameraid需要在mediatek/custom/common/kernel/imgsensor/gc032b_yuv/gc032byuv_Sensor.c的UINT32 GC032BGetSensorID(UINT32 *sensorID)的sensorID=((GC032B_read_cmos_sensor(0xf0)<< 8)|GC032B_read_cmos_sensor(0xf1))后+1;
58.禁止所有apk安装
frameworks/base/services/core/java/com/android/server/pm/PackageManagerServie.java的copyApk注释掉
或者注释掉installPackageAsUser();
59.SystemUI的通知列表修改
ActivatableNotificationView.java
ExpandableNotificationRow.java
60.禁止下拉状态栏滑动
修改StatusbarWindowView.java的onInterceptTouchEvent() return intercept修改为return true
一、Ubuntu下Android编译环境搭建
ubuntu 经典桌面
sudo apt-get install gnome-session-fallback
右键终端
sudo apt-get install nautilus-open-terminal
root登陆
转载于:http://blog.csdn.net/yimiyangguang1314/article/details/7534911
ubuntu12.04默认是不允许root登录的,在登录窗口只能看到普通用户和访客登录。以普通身份登陆Ubuntu后我们需要做一些修改,
普通用户登录后,修改系统配置文件需要切换到超级用户模式,在终端窗口里面输入: sudo -s.然后输入普通用户登陆的密码,回车即可进入 root用户权限模式.
然后执行: gedit /etc/lightdm/lightdm.conf. 修改配置文件
[SeatDefaults]
allow-guest=false
autologin-user=root
autologin-user-timeout=0
autologin-session=lightdm-autologin
user-session=ubuntu
greeter-session=unity-greeter
然后我们启动root帐号:
sudo passwd root
根据提示输入roott帐号密码。
重启ubuntu,不需要手动输入root用户名密码,系统会自动进入root用户。
补充:gedit /etc/lightdm/lightdm.conf
user-session=ubuntu —> user-session=gnome-classic
修改后,系统将默认登录到gnome classic界面,如果不需要特效则是gnome-fallback,对应登录窗口的选项gnome classic(no effects)
1.更新源
sudo apt-get update
安装必要的软件环境
sudo apt-get install flex bison gperf libsdl-dev libesd0-dev libwxgtk2.8-dev build-essential zip curl libncurses5-dev zlib1g-dev ibsdl1.2-dev libc6-dev-i386 g+±multilib lib32z1-dev lib32ncurses5-dev libx11-dev libxml2-utils git-core gnupg libc6-dev lib32ncurses5-dev ia32-libs x11proto-core-dev lib32z-dev libgl1-mesa-dev g+±multilib mingw32 tofrodos liblzo2-dev uuid-dev lib32readline-gplv2-dev gcc-4.4 g+±4.4 make xsltproc wine
gawk
rm /usr/bin/gcc
ln -s /usr/bin/gcc-4.4 /usr/bin/gcc
rm /usr/bin/g++
ln -s /usr/bin/g+±4.4 /usr/bin/g++
安装 sun-java6-jdk
在 tools 下找到 jdk-6u18-linux-i586.bin 文件; 开启终端,到想要安装的目录下运
行
$ ./jdk-6u18-linux-i586.bin(运行时注意 jdk-6u18-linux-i586.bin 的实际路径)
进行安装 ;
设置环境变量
$ vim ~/.profile
在.profile 文件的最后新增或添加变量,如下:
JAVA_HOME=/home/infotm/infodroid_release/jdk1.6.0_18
JRE_HOME=$JAVA_HOME/jre
export ANDROID_JAVA_HOME=$JAVA_HOME
export CLASSPATH=.:JAVAHOME/lib: JAVA_HOME/lib:JAVA
H
OME/lib:JRE_HOME/lib:$CLASSPATH
export JAVA_PATH=JAVAHOME/bin: JAVA_HOME/bin:JAVA
H
OME/bin:JRE_HOME/bin
export PATH=PATH: PATH:PATH:JAVA_PATH
蓝色字符的部分是 JDK6 安装所在目录;保存后,同步更新即可;
$source ~/.profile
另外一些必要的使用工具要安装,如Beyond Compare、minicom等
二、MTK平台常用编译命令
1、列出所有有效的项目
./makeMtk listp 或./mk listp
2、清除和编译整个项目
./makeMtk <porject_name> new 或 ./mk <project_name> n #编译完一次后可不带项目名,项目名纪录在makeMtk.ini文件中
3、清除相关编译文件
./makeMtk <porject_name> clean 或 ./mk <project_name> c
4、重新编译整个项目
./makeMtk <project_name> remake 或 ./mk <project_name> r
5、编译单独的模块
./makeMtk <porject_name> remake(new) preloader 或 ./mk r(n) pl
./makeMtk <porject_name> remake(new) uboot 或 ./mk r(n) ub
./makeMtk <porject_name> remake(new) kernel 或 ./mk r(n) k
./makeMtk <porject_name> remake(new) android 或 ./mk r(n) dr
6、当修改kernel相关代码时,要使用此命令
./mk n® kernel ./mk bootimage
7.编译ota包
./mk otapackage
以上命令加参数-opt=TARGET_BUILD_VARIANT=user为编译release版本,不加为debug版本,释放给客户的软件必须加此参数。加 -t参数可以将编译时的信息全部打印在终端中。同时释放客户的软件要编译ota包。
具体参数可使用命令 ./mk -h 查看。
三、常用硬件配置更改
第一步:改mediatek/config/pro/address.xml
1.触摸屏配置
mediatek/config/$(pro)/ProjectConfig.mk
CUSTOM_KERNEL_TOUCHPANEL=GSL2682 SSD253X #zt622x #GT928
后面为兼容的TP型号,此项一般不用改,除非增加TP型号
2.摄像头配置
mediatek/config/$(pro)/ProjectConfig.mk
以下所配置的名称必须和代码目录名相同,
kernel代码目录为mediatek/custom/common/kernel/imgsensor
hal代码目录为mediatek/custom/common/hal/imgsensor
其相关参数配置一般在相关项目下的对应目录,如mediatek/custom/d88/hal/imgsensor
此宏为hal层camera代码配置,要配置的摄像头代码都要写上
CUSTOM_HAL_IMGSENSOR=gc2235_mipi_raw gc0339_mipi_raw
此宏为hal层后置备用摄像头配置,如果不做兼容可以为空
CUSTOM_HAL_MAIN_BACKUP_IMGSENSOR=
此宏为hal层后置摄像头配置,双摄时必须配置
CUSTOM_HAL_MAIN_IMGSENSOR=gc2235_mipi_raw
此宏为hal层前置备用摄像头配置,如果不做兼容可以为空
CUSTOM_HAL_SUB_BACKUP_IMGSENSOR=
此宏为hal层前置摄像头配置,双摄时必须配置
CUSTOM_HAL_SUB_IMGSENSOR=gc0339_mipi_raw
此宏为kernel层camera代码配置,要配置的摄像头代码都要写上
CUSTOM_KERNEL_IMGSENSOR=gc2235_mipi_raw gc0339_mipi_raw
此宏为kernel层后置备用摄像头配置,如果不做兼容可以为空
CUSTOM_KERNEL_MAIN_BACKUP_IMGSENSOR=
此宏为kernel层后置摄像头配置,双摄时必须配置
CUSTOM_KERNEL_MAIN_IMGSENSOR=gc2235_mipi_raw
此宏为kernel层前置备用摄像头配置,如果不做兼容可以为空
CUSTOM_KERNEL_SUB_BACKUP_IMGSENSOR=
此宏为kernel层前置摄像头配置,双摄时必须配置
CUSTOM_KERNEL_SUB_IMGSENSOR=gc0339_mipi_raw
3.Modem配置
mediatek/config/$(pro)/ProjectConfig.mk
Modem目录在custom/common/modem
此宏配置的modem名称必须和custom/common/modem下的某一modem目录名称相同
CUSTOM_MODEM=discovery82_tb_jb5_hspa
现在我们的机器一般做的都是2G全频段,即850、900、1900、2100,但3G频段需要根据客户需求来选择。
D85D为:
band1:2100 band2:1900 band5:850 band8:900
D85为(D85只支持两个频段):
discovery89_tb_jb2_md1_hspa 900_2100
mt6589_md1_hspa_band156 850_2100
注意:Modem配置必须正确
4.DDR配置
mediatek/$(pro)/preloader/inc/custom_MemoryDevice.h
现有机型一般作1G或512M的DDR,软件配置如下,将需要的打开,不需要的注释掉
//1GB DDR3
#define BOARD_ID MT8382_EVB_P2
#define CS_PART_NUMBER[0] COMMON_DDR3_1024MB
//512MB DDR3
//#define BOARD_ID MT8382_EVB_P3
//#define CS_PART_NUMBER[0] COMMON_DDR3_512MB
L1
alps/bootable/bootloader/preloader/custom/$(pro)/inc/custom_MemoryDevice.h根据需要修改
注意:DDR配置必须正确
四、客制化部分更改
1.更改机器型号为XXX
mediatek/config/$(pro)/ProjectConfig.mk中更改一行PRODUCT_MODEL = XXX
更改版本号
mediatek/config/$(pro)/ProjectConfig.mk中更改一行
MTK_BUILD_VERNO = XXX
更改自定义版本号
mediatek/config/KaTeX parse error: Expected group after '_' at position 52: …UILD_VERNO=D85D_̲(shell date +%Y%m%d)
2更改盘符为XXX
打过盘符补丁后,在mediatek/config/$(pro)/system.prop中增加一行
ro.partition.label=XXX
3.更改蓝牙名为XXX
拷贝mediatek/config/common/custom.conf到相应项目mediatek/config/$(pro)/下更改项目下的custom.conf中bluetooth.HostName = XXX
4.更改默认语言
如改为繁体中文,查找语言列表,找到zh_TW 中文 (*)
在mediatek/config/$(pro)/system.prop中增加
persist.sys.language=zh
persist.sys.country=TW
5.更改默认时区
如改为上海,在mediatek/config/$(pro)/system.prop中增加persist.sys.timezone=Asia/Shanghai
6.更改默认开机logo
因为在projectConfig.mk中,BOOT_LOGO=xga,所以可以将mediatek/custom/common/lk/logo/xga拷贝到相应项目下
mediatek/custom/$(pro)/lk/logo/xga,替换第1张logo:xga_uboot.bmp,第2张logo:xga_kernel.bmp,
7.更改默认输入法
在mediatek/config/$(pro)/ProjectConfig.mk中更改DEFAULT_INPUT_METHOD=类名.服务名,如DEFAULT_INPUT_METHOD=com.sohu.inputmethod.sogou.SogouIME
L版本
请在InputMethodManagerService.java 的resetDefaultImeLocked()方法中添加下面code:
if (mCurMethodId != null
&& !InputMethodUtils.isSystemIme(mMethodMap.get(mCurMethodId))) {
return;
}
InputMethodInfo defIm = null;
//+++++++++++++++++++++++++++
if (mMethodList.size() > 0) {
for (InputMethodInfo imi : mMethodList) {
final String imiId = imi.getId();
if(“com.jb.emoji.gokeyboard/com.jb.gokeyboard.GoKeyboard”.equals(imiId)){//其中的输入法名称需要抓log搜索关键字enabled_input_methods
defIm = imi;
}
}
}
//+++++++++++++++++++++++++++
for (InputMethodInfo imi : mMethodList) {
if (defIm == null) {
8.添加APK
不可卸载APK,直接放到vendor/mediatek/(pro)/artifacts/out/target/product/ (pro)/artifacts/out/target/product/(pro)/artifacts/out/target/product/(pro)/system/app下,但是此预置方式APK将不可升级,因为此种方式APK将重新被签名,导致升级时签名错误,所以现改为Android.mk方式预置。若要提库,则放到上一级目录的lib目录下。
可卸载APK放到vendor/mediatek/(pro)/artifacts/out/target/product/ (pro)/artifacts/out/target/product/(pro)/artifacts/out/target/product/(pro)/system/vendor/operate/app下
注意:文件名中不能有空格
Search apk的名字是quicksearch
9.overlay路径
mediatek/custom/$(pro)/resource_overlay/generic/可overlay frameworks和packages中res的xml文件
10.更改浏览器默认主页(可overlay)
packages/apps/Browser/res/values/mtk_strings.xml中更改name=“homepage_base_site_navigation” 对应项的值
L版本:
/packages/apps/Browser/res/values/strings.xml 修改http://www.mtn.co.za
11.加入浏览器书签(可overlay)
a.将预览图片thumb_XXX.png和图标favicon_XXX.ico拷贝到packages/apps/Browser/res/raw/目录下。
b.修改packages/apps/Browser/res/values/bookmarks_icons.xml中的值bookmark_preloads,在后面加上前一步加入的预览图片和图标的名字。
c.修改packages/apps/Browser/res/values/strings.xml中的值bookmarks,在最后加如对应的名称和网址
12.设置默认壁纸(可overlay)
将设为默认壁纸的jpg格式的图片替换以下图片(根据屏幕分辨率) frameworks/base/core/res/res/drawable-sw***dp-nodpi/default_wallpaper.jpg
d85的***为720.d85d的***为768.
13.加入默认壁纸库(可overlay)
a.将壁纸图片拷贝到packages/apps/Laucher2/res/drawable-sw***dp-nodpi/
还另需一张小的预览图片也放到同一目录下
b.在packages/apps/Laucher2/res/values-sw***dp/wallpapers.xml中最后的壁纸后加入新增的壁纸名
(d95)在packages/apps/Laucher2/res/values-sw***dp-nodpi/wallpapers.xml中最后的壁纸后加入新增的壁纸名
14.设置默认动态壁纸(可overlay)
a.在packages/wallpapers/XXX/res/drawable-***/中找到相应的预览图来确定XXX
b.在上一步确定的XXX文件夹下,AndroidManifest.xml中确定动态壁纸的 包名.服务名
c.更改framworks/base/core/res/res/values/config.xml中
包名/.服务名
以上所需要的 包名/.服务名 可以找台debug版机器,将壁纸设置为相应动态壁纸后,通过ADB在机器文件系统路径 /data/system/users/0/wallpaper_info.xml查看
15.去掉GPS功能
a. 在 mediatek/config/$(pro)/ProjectConfig.mk 更改如下两项为no
b. 在 mediatek/config/$(pro)/autoconfig/kconfig/project 中添加
16.更改分区大小
修改 mediatek/build/tools/ptgen/MTXXXX/partition_table.xls中emmc user选项卡对应分区大小
17.为摄像头增加插值,如ov5647 500W插值到800W
a.mediatek/custom/mt6589/hal/imgsensor/ov5647_raw/config.ftbl.ov5647_raw.h中
FTABLE_CONFIG_AS_TYPE_OF_DEFAULT_VALUES(
KEY_AS_(MtkCameraParameters::KEY_PICTURE_SIZE),
SCENE_AS_DEFAULT_SCENE(
ITEM_AS_DEFAULT_(“2560x1920”),
ITEM_AS_VALUES_(
“320x240”, “640x480”, “1024x768”, “1280x960”,
“1600x1200”, “2048x1536”, “2560x1920”,
)
),
)
在数组后面增加一个800W的分辨率 “3264x2448”
b.packages/apps/Camera/res/values/strings.xml中增加一行8M pixels和packages/apps/Camera/res/values/mtk_strings.xml中删除8M pixels,否则插值中会有重复
注意:上步中strings.xml和mtk_strings.xml可overlay,不同摄像头文件存放路径可能不同,如gc0308在mediatek/custom/common/hal/imgsensor/gc0308_yuv,可将文件靠到项目相关路径下,如mediatek/custom/($pro)/hal/imgsensor/gc0308_yuv
18.预置视频,音乐,图片等媒体文件
打入预置媒体补丁,在vendor/mediatek/(pro)/artifacts/out/target/product/ (pro)/artifacts/out/target/product/(pro)/artifacts/out/target/product/(pro)/system下建立mediauser目录,将要预置的媒体资源放在此目录中
19.开机动画,关机动画(连续的png图片)
a.制作bootanimation.zip:新建文件夹part0 part 1 文件desc.txt,part0放第一阶段动画,part1放第二阶段的动画。desc.txt 内容如下
768 1024 30
P 标志符
1 循环次数
0 阶段切换间隔时间
part0 对应目录名
用命令zip -r -0 bootanimation.zip part0 part1 desc.txt,压缩成 bootanimation.zip
b.将bootanimation.zip放入
vendor/mediatek/(pro)/artifacts/out/target/product/ (pro)/artifacts/out/target/product/(pro)/artifacts/out/target/product/(pro)/system/media/
关机动画制作和开机动画一样,只是压缩包的名字改为shutanimation.zip,并且在system.prop中加入ro.operator.optr=CUST
20.开机音乐,关机音乐
开机音乐改名为bootaudio.mp3,关机音乐改名为shutaudio.mp3放入vendor/mediatek/(pro)/artifacts/out/target/product/ (pro)/artifacts/out/target/product/(pro)/artifacts/out/target/product/(pro)/system/media/
注意:其他格式的音频文件要转为mp3格式
21.Email增加默认邮箱,不用设置收发服务器
如增加outlook邮箱,在packages/apps/Email/res/xml/providers.xml增加
22.更改桌面图标排列位置
packages/apps/Launcher2/res/xml-sw600dp/default_workspace.xml
目录要跟据分辨率选择
如1024x600 选择 xml-sw600dp,1024x768 选择 xml-sw720dp
23.默认勾选USB调试
在build/core/main.mk中更改ro.debuggable=1
24.快速开机
frameworks/base/packages/SettingProvider/res/values/mtk_defaults.xml中
25.默认关闭数据连接
mediatek/config/$(pro)/ProjectConfig.mk下的MTK_DEFAULT_DATA_OFF = no这个值来控制的
有MTK_DEFAULT_DATA_OFF=yes即默认关闭
26.时间12小时制和24小时制
a. 修改文件frameworks/base/packages/SettingsProvider/res/values/defaults.xml
增加代码
24
红色标记表示24小时制,也可以改为12(12小时制)
b. 修改文件frameworks/base/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java
找到函数loadSystemSettings (),在函数中增加以下语句:
loadStringSetting(stmt, Settings.System.TIME_12_24, R.string.time_12_24);
27.未知来源
frameworks/base/packages/SettingsProvider/res/values/defaults.xml
false
要默认勾选将false改为true
28.屏保时间
frameworks/base/packages/SettingsProvider/res/values/defaults.xml
60000
29.自动旋转屏幕
frameworks/base/packages/SettingsProvider/res/values/defaults.xml
true
30.默认背光亮度
frameworks/base/packages/SettingsProvider/res/values/defaults.xml
102
31.默认wifi
frameworks/base/packages/SettingsProvider/res/values/defaults.xml
false
32.默认蓝牙
frameworks/base/packages/SettingsProvider/res/values/defaults.xml
false
33.APN
frameworks/opt/telephony/src/java/com/android/internal/telephony/RIL.java
mediatek/frameworks/base/telephony/etc/apns-conf.xml
mediatek/frameworks/base/res/res/values-th/string.xml
mediatek/frameworks/base/res/res/values/string.xml
mediatek/frameworks/base/res/res/values/public.x
ml
33.平板改为手机
build/target/product/$(pro).mk中PRODUCT_CHARACTERISTICS := tablet改为PRODUCT_CHARACTERISTICS := default
34.摄像头旋转方向
mediatek/custom/common/hal/imgsensor/src/cfg_setting_imgsensor.cpp中更改getSensorOrientation()中的值
35.旋转gsensor方向
mediatek/custom/(pro)/kernel/accelerometer/ (pro)/kernel/accelerometer/(pro)/kernel/accelerometer/(相应gsensor)/cust_acc.c中
static struct acc_hw cust_acc_hw = {
};
更改 direction的值,范围0 – 7
36.默认USB连接为MPT
/mediatek/config/discovery89_tb_jb2/ProjectConfig.mk
MTK_MASS_STORAGE=yes
改为
MTK_MASS_STORAGE=no
37.删除 视频播放器APK
/mediatek/config/discovery89_tb_jb2/ProjectConfig.mk
MTK_VIDEOPLAYER_APP=no
MTK_VIDEOWIDGET_APP=no
MTK_VIDEO_FAVORITES_WIDGET_APP=no
38.预置桌面文件夹
请参考如下代码修改default_workspace.xml文件;
<folder
launcher:icon="@drawable/portal_ring_inner_holo"
launcher:screen=“0”
launcher:title="@string/folder_name_format" //文件夹名字可自定义
launcher:x=“0”
launcher:y=“0” >
<favorite //应用快捷方式,只需包名类名即可
launcher:packageName=“com.android.settings”
launcher:className=“com.android.settings.Settings” />
39.如何编译单双卡版本
参照补丁
40.D85D如何编译Gsensor 或 Gsensor+Msensor软件
如果是G+M:
CUSTOM_KERNEL_ACCELEROMETER=mc3xxx #mc32x0
CUSTOM_KERNEL_MAGNETOMETER=mc64xx
如果是G:D85D默认的
CUSTOM_KERNEL_ACCELEROMETER=mc32x0 #mc3xxx
CUSTOM_KERNEL_MAGNETOMETER= #mc64xx
41.如何删除系统自带的铃声中的某些特定铃声;如何将一个铃声设置为默认铃声
[SOLUTION]
1.添加、删除系统自带的铃声
==》找到frameworks/base/data/sounds/audioPackage2.mk
把你需要的文件路径写在:system/media/audio/ringtones/路径
例如,添加一首铃声Buyecheng.mp3
在AudioPackage2.mk文件的
PRODUCT_COPY_FILES+=/
$(LOCAL_PATH)/ringtones/Buyecheng.mp3:system/media/audio/ringtones/Buyecheng.mp3
然后把Buyecheng.mp3文件放置在frameworks/base/data/sounds/ringtones/Buyecheng.mp3
删除反之。
2.系统默认的来电铃声
==》build/target/product/core.mk
ro.config.ringtone=Buyecheng.mp3
默认铃声是统一在build/target/product/core.mk文件中设置,其中ro.config.notification_sound表示通知的默认铃声,ro.config.ringtone表示语音来电和视频来电的铃声,若希望语音来电和视频来电分开设置,请参考FAQ08273 [Audio Profile]如何设置视频来电铃的默认铃声:
PRODUCT_PROPERTY_OVERRIDES:=/
ro.config.notification_sound=Proxima.ogg/
ro.config.alarm_alert=Alarm_Classic.ogg/
ro.config.ringtone=Backroad.ogg
42.隐藏无线输入设备。
wireless 在mediatek/packages/apps/bluetooth/profiles/hid/AndriodManfest.xml注释掉 <categoryandroid:name=“android.intent.category.LAUNCHER” />
wireless 在mediatek/packages/apps/build/AndriodManfest.xml注释掉
43.删除apk窗口小部件(如何关闭yahoo 天气的窗口小部件)
[SOLUTION]
1.请确认下面目录下是否有weather的apk:
vendor/mediatek/xxx/artifacts/out/target/product/xxx/system/app/
MtkWeatherWidget.apk
MtkWeatherProvider.apk
MtkWeatherSetting.apk
如果有,请删除3个apk,后面的步骤可以省略,原因是vendor 下面out目录中的apk会默认编译到。
如果步骤1中不存在apk,请修改下面的内容
mediatek/config/xxx/ProjectConfig.mk 文件
MTK_WEATHER_WIDGET_APP=yes修改为no
MTK_WEATHER_PROVIDER_APP=yes修改为no
再确认下build/target/product/common.mk文件
PRODUCT_PACKAGES+=MtkWeatherWidget //删除此定义,确保不会添加这个packages
例如删除search.在build/target/product/common.mk中删除QuickSearchBox/
但是要做一个备份
44.删除设置向导
mediatek/config/xxx/ProjectConfig.mk中把MTK_OOBE_APP= yes改为no
45.删除第三方apk
删除vendor/mediatek/pro/artifacts/out/target/product/pro/system/vendor/operator/app/$(name).apk
46.删除发掘自带的apk
注释掉build/target/projuct/$(pro).mk中对应的apk
47.修改UA参数
How to modify Browser UA profile URL for JB.MP, JB2.MP, JB3.MP
[SOLUTION]
UA position:
mediatek/config/xxx/custom.conf
Modification:
Add your UA profile URL into the filed “browser.UAProfileURL” or modify the existed one.
Example:
browser.UAProfileURL = xxxxxx
48.更改默认声音大小
frameworks/base/media/java/android/media/AudioManager.java
49.更改翻译
一般更改package和framework下的各语言目录下的string.xml和mtk_string.xml文件,视具体情况而定
50.更改默认字体大小
frameworks/base/core/java/android/content/res/Configuration.java
public void setToDefaults() {
fontScale = 1; //0.9小 1.0普通 1.1大 1.15超大
…
}
字体大小定义在
51.更改无线显示在对方机器的名称
frameworks/base/wifi/java/android/net/wifi/p2p/WifiP2pService.java
private String getPersistedDeviceName() {
…
if (deviceName == null) {
…
return “Android_” + id.substring(0,4); //此句改为return “xxxx”
}
return deviceName;
}
52.更改setting->audio默认属性
mediatek/frameworks/base/media/audio/java/com/mediatek/audioprofile/AudioProfileManager.java
视情况修改
53.更改语音控制默认语言
mediatek/frameworks/base/voicecommand/cfg/voicelanguage.xml
<DefaultLanguage ID=“简体中文” //更改为所需语言
现MTK只支持简体中文、繁体中文、English,做国外客户软件全部默认为English
54.增加邮件签名
packages/apps/Email/emailcommon/src/com/android/emailcommon/provider/Account.java
55.USB相关名称修改
参考MTK online FAQ USB名称修改系列
56.修改device
首先需要做备份。在rootdir/build/tools/buildinfo.sh下更改echo"ro.product.device=∗∗∗"57.更改多媒体音量最大值在 rootdir/build/tools/buildinfo.sh下更改echo "ro.product.device=***"57.更改多媒体音量最大值在rootdir/build/tools/buildinfo.sh下更改echo"ro.product.device=∗∗∗"
57.更改多媒体音量最大值在rootdir/custom/$pro/cgen/inc中修改audio_ver1_volume_custom_default.h中的#define VER1_AUD_VOLUME_MEDIA /
安卓支持的语言
languages_full.mk
projectconfig.mk是mtk的apk
common.mk是安卓的apk
58/修改亮度图标的半亮度值:在$rootdir/frameworks/base/core/res/res/values/config.xml中修改config_screenBrightnessSettingDefault
60/关机的reboot改为restart
$rootdir/frameworks/base/core/res/res/values/strings.xml修改
Reboot
PTP就是product model