固件制作中常见问题
来源:互联网 发布:软件版权和著作权 编辑:程序博客网 时间:2024/04/29 17:48
默认语言以及model number修改路径:main4_3g_herpa/android/device/samsung/w30/w30.mk;
linux内核启动logo(开机第一眼看到的):main4_3g_herpa/kernel/drivers/video/logo;
png格式的图片转换成ppm格式的方法:
pngtopnm linuxlogo.png > linuxlogo.pnm
pnmquant 224 linuxlogo.pnm > linuxlogo224.pnm
pnmtoplainpnm linuxlogo224.pnm > linuxlogo224.ppm
开机android logo:/main4_3g_herpa/android/device/magiclab/common/inhouse_app/apk/logo
开机铃声:
开机文件类型必须是.ogg或者.wav格式的,如果需要有开机音乐,就在/system/media/audio/ui/添加poweron.ogg或poweron.wav文件。不添加则为不需开机音乐。
添加固件APK:/main4_3g_herpa/android/device/magiclab/common/inhouse_app/apk/app
zImage位置:/main4_3g_herpa/kernel/arch/arm/boot
kernel version修改路径:/main4_3g_herpa/kernel/scripts/mkcompile_h
修改静态壁纸:/main4_3g_herpa/android/packages/apps/Launcher2/res/xml下:
./packages/apps/Launcher2/res/xml/default_workspace.xml
./packages/apps/Launcher2/res/drawable-hdpi/ic_launcher_herpapage.png
./packages/apps/Launcher2/res/drawable-mdpi/ic_launcher_herpapage.png
./packages/apps/Launcher2/res/values/strings.xml
voiceDial翻译问题:android/packages/apps/VoiceDialer/src/com/android/voicedialer/CommandRecognizerEngine.java
Data roaming缺省值设置:android/packages/apps/Phone/src/com/android/phone/setting.java
// lijin
android.content.SharedPreferences share =getApplicationContext().getSharedPreferences("auto_sync_config.xml", 0);
String value = share.getString("m_checked", "");
if ("1" == value) {
mButtonDataRoam.setChecked(mPhone.getDataRoamingEnabled());
}else{
share.edit().putString("m_checked", "1").commit();
mButtonDataRoam.setChecked(false);
}
bluetooth卷标修改:main4_3g_herpa/android/external/bluetooth/bluez/src/main.c
Build number修改:/main4_3g_herpa/android/build/tools/buildinfo.sh
默认待机时间设置:android/frameworks/base/packages/SettingsProvider/res/values/default.xml
修改系统时区:/main4_3g_rspi12141201po/android/device/samsung/w30/system.prop
打包方法:. build/envsetup.sh launch w22ref-user make otapackage -j4
修改浏览器默认主页:android/packages/apps/Browser/res/values/strings.xml
修改浏览器标签:android/packages/apps/Browser/res/raw和android/packages/apps/Browser/res/values/bookmarks_icons.xml以及android/packages/apps/Browser/res/values/strings.xml
铃声存放位置:android/frameworks/base/data/sounds----》out/target/product/w22ref/obj/PACKAGING/target_files_intermediates/w22ref-target_files-eng.lijin/SYSTEM/media/audio/
----》out/target/product/w22ref/system/media/audio/
修改默认壁纸:frameworks/base/core/res/res/drawable-large-nodpi/default_wallpaper.jpg和frameworks/base/core/res/res/drawable-xlarge-nodpi/default_wallpaper.jpg
修改静态壁纸:packages/apps/Launcher2/res/drawable-nodpi/和packages/apps/Launcher2/res/drawable-sw600dp-nodpi/和packages/apps/Launcher2/res/values/wallpaper.xml和packages/apps/Launcher2/res/values-sw600dp/wallpaper.xml
修改system大小方法:android/device/samsung/w30/BoardConfig.mk中修改BOARD_SYSTEMIMAGE_PARTITION_SIZE的大小。
修改音量:android/frameworks/base/media/java/android/media/AudioManager.java
ssh使用方法:ssh ramos1@192.168.1.162 password:1
登录服务器:smb://192.168.1.6/
亮度调节:kernel/drivers/video/backlight/pwm_bl.c
去掉语音通话功能,只保留数据业务:android/frameworks/base/core/res/res/values/config.xml 中 <bool name="config_voice_capable">false</bool>
修改DDR频率:uboot/include/config/smdk4412.h 中 #define CONFIG_CLK_BUS_DMC_200_400
烧错DDR恢复:运行uboot_2GDDR/sd_fuse/smdk4412/sd_fuse.sh /dev/sdc;连接串口,按开机键,在命令行输入:mmc erase boot 1 0 0
新闻与天气apk:GenieWidget.apk
--------------------------------------------------------------------
Apktool命令:
apktool d XXX.apk PATH //反编译XXX.apk到文件夹PATH
apktool b PATH //从文件夹PATH重建apk到PATH\dist\out.apk
---------------------------------------------------------------------
设置安装google市场apk使能:frameworks\base\packages\SettingsProvider\res\values\defaults.xml
UA profile 修改位置:android/frameworks/base/core/java/android/webkit/FrameLoader.java和android/frameworks/base/core/res/res/values/config.xml
(<string name="config_useragentprofile_url" translatable="false">http://www.fly-phone.ru/UAP/Fly_IQ360_3G.xml</string>)
修改自己的UA String 主要改动有两个文件。packages\apps\Browser\src\com\android\browser\BrowserSettings.java和packages\apps\Browser\res\values\strings.xml。
输入法和语言中去掉其他语言:packages/apps/Settings/src/com/android/settings/inputmethod/InputMethodAndSubtypeEnabler.java和
Download中添加确定键:android/packages/providers/DownloadProvider/ui/src/com/android/providers/downloads/ui/DownloadList.java中
wifi direct名修改:frameworks/base/core/res/res/values/strings.xml
修改Spelling correction语言:packages/inputmethods/LatinIME/java/res/xml/spellchecker.xml
apns(MMC GPRS)修改:android/development/data/etc/apns-conf.xml
**********************************************************************************
Setting中Accounts&sync中switch default设置:/packages/apps/Settings/src/com/android/settings/accounts/ManageAccountsSettings.java中添加:
import android.content.SharedPreferences;
import android.content.Context;
setDefaultSync(getActivity());
public static void setDefaultSync(Context context) {
SharedPreferences share = context.getSharedPreferences("auto_sync_config.xml", 0);
String value = share.getString("auto_sync", "");
if ("1" == value) {
return;
}
share.edit().putString("auto_sync", "1").commit();
ContentResolver.setMasterSyncAutomatically(false);
}
*************************************************************************
Mms setting中缺省自动删除短信:packages/apps/Mms/src/com/android/mms/util/Recycler.java中DEFAULT_AUTO_DELETE = true
android 如何修改默认时间格式 .
1. 修改文件alps\frameworks\base\packages\SettingsProvider\res\values\defaults.xml
增加代码<string name="time_12_24" translatable="false">24</string>
红色标记表示24小时制,也可以改为12(12小时制)
2. 修改文件
alps\frameworks\base\packages\SettingsProvider\src\com\android\providers\settings\DatabaseHelper.java
找到函数loadSystemSettings (),在函数中增加以下语句:
loadStringSetting(stmt, Settings.System.TIME_12_24, R.string.time_12_24);
另:代码中时根据各国的当地的习惯设置默认值的,具体各国各地的参考文件为:external\icu4c\data\locales,中文参考zh.txt文件中的DateTimePatterns,但是我改了没有效果。上面的方案修改后则会所有国家和地区默认的时间格式都为24小时制了。
修改音量:frameworks/base/media/java/android/media/AudioManager.java
图片修改制造商:android/packages/apps/Gallery2/src/com/android/gallery3d/ui/DialogDetailsView.java
samsung增加删除语言:/main4_flay/android/build/target/product/locales_full.mk
and android/build/target/product/languages_full.mk
(注:语言是是:w30.mk + full_base.mk + locales_full.mk + languages_full.mk)
浏览器添加壁纸:packages/apps/Browser/res/raw/和android/packages/apps/Browser/res/values/bookmarks_icons.xml
浏览器默认主页:/home/lijin/mydroid/main4_flay/android/packages/apps/Browser/res/values/string.xml
API报38错误解决方法:make update-api TARGET_PRODUCT=full_smdk4x12
注意:修改开机动画时压缩文件需在windows下采用存储方式压缩方能生效。
在linux中压缩方法:
将bootanimation制作为.zip压缩文件。命令:zip-r -X -Z store bootanimation part1/*.png part2/*.png desc.txt(示例中的图片是png格式)。
android启动动画需要一个bootanimation.zip, bootanimation.zip 放在 /system/media 目录下,动画是由系列图片连续刷屏实现的.
bootanimation.zip文件是zip压缩文件,压缩方式要求是存储压缩,包含一个文件和两个目录:
e
1.动画属性描述文件:desc.txt
2.第一阶段动画图片目录:part0
3.第二阶段动画图片目录:part1
desc.txt文件内容:
480 427 30
p 1 0 part0
p 0 10 part1
desc.txt文件分析:
480 427 30
宽 高 帧数
p 1 0 part0
标志符 循环次数 阶段切换间隔时间 对应目录名
p 0 10 part1
标志符 循环次数 阶段切换间隔时间 对应目录名
==================
标志符:
必须是: p
循环次数:
0 : 表示本阶段无限循环
阶段切换间隔时间:
单位是一个帧的持续时间,比如帧数是30,那么帧的持续时间就是1秒/30 = 33.3毫秒。
阶段切换间隔时间期间开机动画进程进入休眠,把CPU时间让给初始化系统使用。
也就是间隔长启动会快,但会影响动画效果。
part0和part1目录内包含的是两个动画的系列图片,图片为PNG格式。
系列图片文件的加载刷新按文件名的名称排序。
boot.img是正常启动的镜像,由header+kernel(不带ramdisk的uImage)+ramdisk.img构成。
adb shell里面ls提示opendir failed, Permission denied 没有权限,需要adb root,adb remount一下就可以了
修改default_workspace.xml后,如何显示修改后的内容。
修改default_workspace.xml后, ./mk 项目名 mm packages/apps/launcher2 也就是编译你修改的模块,然后用USB连接手机,用adb命令删除手机中的数据,我的操作是这样的:
1. adb shell
2.cd data/data/com.android.launcher2 (进入对应的数据区域)
3.rm -r databases (删除数据)
4.运行out\target\product\项目名\system\app下面刚编译生成的launcher2.apk
按照以上步骤,就可以快速验证自己修改的问题了,我昨天就是这样修改桌面的。
添加删除驱动程序:kernel/arch/arm/config/w30_android_defconfig
原因:Ubuntu 11.10的gcc 4.6版本太高了,android编译需要gcc 4.4
解决办法:更换gcc、g++版本4.6为4.4
sudo apt-get install gcc-4.4
sudo apt-get install g++-4.4
sudo rm -rf /usr/bin/gcc /usr/bin/g++
sudo ln -s /usr/bin/gcc-4.4 /usr/bin/gcc
sudo ln -s /usr/bin/g++-4.4 /usr/bin/g++
sudo apt-get install g++-4.4-multilib
想知道目前我的 shell 环境中, 有多少变量啊?!呵呵!我们可以利用两个指令来查阅,分别是 env 与 export
adb shell之后getevent可以查看input子系统的使用情况。
反汇编指令:arm-none-linux-gnueabi-objdump -D u-boot > u-boot.lds
修改lcd显示密度:device/rockchip/rk30/device.mk 中ro.sf.lcd_density=320 (out/target/product/rk30sdk/system/build.prop中ro.sf.lcd_density=240)
linux只是一个kernel,位置存放在/boot/vmlinuz*;/lib/modules/3.0.0-32-generic/kernel/中。
修改ubuntu语言:/usr/default/locale
intel:
修改喇叭音量:etc/parameter-framework/Settings/Audio/AudioConfigurableDomains.xml中的Path="/Audio/CIRRUS/SOUND_CARD/MIXER/SPEAKERPHONE_LINE/AUDIO_SERIAL_PORT_SOURCE/VOLUME">和 Path="/Audio/CIRRUS/SOUND_CARD/MIXER/EAR_SPEAKER_LINE/AUDIO_SERIAL_PORT_SOURCE/VOLUME"的值
修改摄像头方向:etc/camera_profiles.xml
查看UAprofile方法:在平板上输入http://www.useragentstring.com
远程拷贝:scp username@192.168.0.7:/home/files ./
0 0
- 固件制作中常见问题
- eccube网站制作中常见问题
- Winpe制作中常见问题(待整理)
- 如何制作pcDuino量产固件
- 从编译到制作固件
- 视频制作常见问题,mark
- 1.1.4 iPhone系统固件制作教程(Mac)
- 固件升级 android启动 uboot启动 rom制作
- Firefly 3288重新制作android和lubuntu双系统固件
- 全志方案卡启动固件制作原理
- [2.1固件ROM] 【日常课题组】ME600/MB300 BackFlip后空翻 新手常见问题FAQS!
- 制作嵌入式根文件系统(常见问题详解)
- 制作嵌入式根文件系统(常见问题详解)
- 制作国际化应用程序过程中的常见问题
- patch补丁文件制作 使用和常见问题
- 制作嵌入式根文件系统(常见问题详解)
- patch补丁文件制作 使用和常见问题
- OpenWrt Image Builder 制作带插件的HG255D固件记录
- 你知道吗?世界上绝美神奇的25条路
- 极客Web前端开发资源大荟萃
- iOS网络编程 (第三方开源库)----->AFNetworking
- iOS和android游戏纹理优化和内存优化(cocos2d-x)
- 《35岁以前成功的12条黄金法则》的3个小故事有感
- 固件制作中常见问题
- ON_NOTIFY_REFLECT消息
- Objective C类方法load和initialize的区别
- shell test 用法
- 男人二十岁后应该学会的东西
- ASP.ENT(C#) 条形码生成技术
- ASP.NET(C#)实现点击验证码无刷新…
- 非常牛叉的技术网站
- C# MD5加密算法