关闭

关闭

关闭

封号提示

内容

首页 A31_Android内容定制说明文档V1.1 20130123.pdf

A31_Android内容定制说明文档V1.1 20130123.pdf

A31_Android内容定制说明文档V1.1 2013012…

上传者: csy10841054 2013-06-25 评分 0 0 0 0 0 0 暂无简介 简介 举报

简介:本文档为《A31_Android内容定制说明文档V1.1 20130123pdf》,可适用于IT/计算机领域,主题内容包含ConfidentialAllwinnerAllwinnerAllwinnerAllwinnerTechnologyTechnologyTechno符等。

ConfidentialAllwinnerAllwinnerAllwinnerAllwinnerTechnologyTechnologyTechnologyTechnologyCO,CO,CO,CO,LtdLtdLtdLtdCopyrightAllwinnerTechnologyAllRightsReservedAAAAAndroidAndroidAndroidAndroid方案定制文档VVVVConfidentialAllwinnerAllwinnerAllwinnerAllwinnerTechnologyTechnologyTechnologyTechnologyCO,CO,CO,CO,LtdLtdLtdLtdCopyrightAllwinnerTechnologyAllRightsReservedRevisionRevisionRevisionRevisionHistoryHistoryHistoryHistoryVersionVersionVersionVersionDateDateDateDateSectionSectionSectionSectionPagePagePagePageChangesChangesChangesChangesVInitialversionConfidentialAllwinnerAllwinnerAllwinnerAllwinnerTechnologyTechnologyTechnologyTechnologyCO,CO,CO,CO,LtdLtdLtdLtdCopyrightAllwinnerTechnologyAllRightsReserved目录概述启动Logo修改Boot阶段的logoAndroidInitLogoAndroidBootAnimation设备相关信息修改设备型号及软件版本修改USB相关信息修改预装APK预装到systemapp目录预装到systempreinstall目录预设桌面方案自定义按键配置KEY硬件相关驱动与硬件的对应关系Android键值功能映射WIFI配置USBWIFI的配置SDIOWIFI配置LCDPanel配置打包配置文件修改屏驱动扩展及调试TouchPanel配置打包配置文件修改Android层的配置修改touch驱动使用说明GSensor的配置方法打包配置文件修改Android层配置修改Camera的配置方法打包配置文件修改Android层的配置修改Camera参数配置震动马达的配置震动马达典型电路打包配置文件修改Android层配置修改Boot电池充电图标配置说明打包配置文件修改电池图标修改ConfidentialAllwinnerAllwinnerAllwinnerAllwinnerTechnologyTechnologyTechnologyTechnologyCO,CO,CO,CO,LtdLtdLtdLtdCopyrightAllwinnerTechnologyAllRightsReservedRecovery功能的使用Recovery功能说明键值的查看按键选择功能使用ConfidentialAllwinnerAllwinnerAllwinnerAllwinnerTechnologyTechnologyTechnologyTechnologyCO,CO,CO,CO,LtdLtdLtdLtdCopyrightAllwinnerTechnologyAllRightsReserved概述该文档用于介绍A环境Android部分的方案定制方法包含了常用模块的定制介绍。ConfidentialAllwinnerAllwinnerAllwinnerAllwinnerTechnologyTechnologyTechnologyTechnologyCO,CO,CO,CO,LtdLtdLtdLtdCopyrightAllwinnerTechnologyAllRightsReserved启动LogoLogoLogoLogo修改BBBBootootootoot阶段的logologologologo位置:licheetoolspackchipssuniwbootbootfsosshowbootlogobmp根据小机屏幕分辨率大小定制Logo图片的大小替换即可。AndroidAndroidAndroidAndroidInitInitInitInitLogoLogoLogoLogo位置:androiddevicesoftwinnerfiberxxinitlogorle通过pc端工具制作而成的文件制作过程:将logo图片转化成bpp或bppbmp图片打开LogoGen目录下的BmpConvert工具按照《BMPConvertUserManualdoc》文档说明来生成所需的initlogorle文件说明:framebuffer使用ARGB的格式。BMPConvertUserManualdoc文档存放于LogoGen目录。logoGen路径:licheetoolstoolswinLogoGenLogoGenAndroidAndroidAndroidAndroidBootBootBootBootAnimationAnimationAnimationAnimation位置:androiddevicesoftwinnerfiberxxmediabootanimationzipbootanimation格式:bootanimationzip包含partpart文件夹和desctxt文件partpart文件夹里面放的是动画拆分的图片格式为png或jpgdesctxt格式:ppartppart说明:为宽度为高度为帧数即每秒播放动画帧第一项p为标志符第二项为循环次数为只播放次0为无限循环第三项为两次循环之间间隔的帧数第四项为对应的目录名(图片放在desctxt中目录名指定的目录中目录中按字符顺序播放)打包格式要求:windows使用winrar打包选择ZIP格式压缩标准要选“储存”linux下ziprbootanimationzip*linux命令使用指定压缩等级为最低等级stored即只归档不压缩否则可能由于包格式问题引起动画显示为黑屏。打包完之后发到指定目录(fiberxxxmedia)修改其权限值:chmodbootanimationzipConfidentialAllwinnerAllwinnerAllwinnerAllwinnerTechnologyTechnologyTechnologyTechnologyCO,CO,CO,CO,LtdLtdLtdLtdCopyrightAllwinnerTechnologyAllRightsReserved设备相关信息修改设备型号及软件版本修改在编译后生成的androidouttargetproductfiberxxsystembuildprop文件中记录了设置中的显示信息常用的信息(设置>关于设备)如下:型号>roproductmodel固件版本>roproductfirmwareAndroid版本>robuildversionrelease版本号>robuilddisplayid修改方法:源码中修改androiddevicesoftwinnerfiberxxfiberxxmk添加如下:修改固件版本为VPRODUCTPROPERTYOVERRIDES=roproductfirmware=V修改设备型号为ONDAMID等效于在buildprop文件中修改roproductmodel=ONDAMIDPRODUCTMODEL:=ONDAMID注意:设备型号中应该全部为英文字符不能出现中文可以有空格USBUSBUSBUSB相关信息修改第一次开机flash盘符的修改:在androiddevicesoftwinnerfiberxxinitsunirc中‘formatuserdata’shell命令后后面接格式化用的盘符如:formatuserdataONDAMID格式化flash盘符为ONDAMID当打开USB设备后即可在电脑上看到给盘符用户格式化flash盘符修改:修改androiddevicesoftwinnerfiberxxfiberxxmk文件的roudisklable=FIBER属性。连接电脑时显示驱动的修改:如修改设备连接电脑时电脑显示驱动为“ONDAMIDUSBDriver”则在sysconfigfex文件中修改如下:mscfeaturevendorname="ONDAMID"productname="USBDriver"设备序列号的修改:默认设备序列号为""该序列号主要在豌豆夹手机精灵上有显示设备的序列号最好为英文大写字母(A~F)及数字的组合在sysconfigfex文件中:ConfidentialAllwinnerAllwinnerAllwinnerAllwinnerTechnologyTechnologyTechnologyTechnologyCO,CO,CO,CO,LtdLtdLtdLtdCopyrightAllwinnerTechnologyAllRightsReservedusbfeatureserialnumber=""ConfidentialAllwinnerAllwinnerAllwinnerAllwinnerTechnologyTechnologyTechnologyTechnologyCO,CO,CO,CO,LtdLtdLtdLtdCopyrightAllwinnerTechnologyAllRightsReserved预装APKAPKAPKAPK预装apk安装有两种方法可以安装到systemapp目录下也可以安装到systempreinstall目录下。预装到systemappsystemappsystemappsystemapp目录预装的APK存放位置在androiddevicesoftwinnerfibercommonprebuildapk目录下将需要预装的APK文件放在该目录下面并修改目录下的Androidmk文件在文件末端添加如下:include$(CLEARVARS)LOCALMODULE:=xxxapkLOCALMODULETAGS:=optionalLOCALCERTIFICATE:=PRESIGNEDLOCALMODULECLASS:=APPSLOCALSRCFILES:=$(LOCALMODULE)include$(BUILDPREBUILT)对该apk进行声明声明后编译系统才会对该apk进行编译。可以修改fibercommonmk或fiberxxmk文件添加如下:PRODUCTCOPYFILES=xxx如果该apk包含有lib则需要将lib库拷贝到devicesoftwinnerfibercommonprebuildapklib目录下并按照同样的方法修改里面的Androidmk文件优点:对启动速度无影响(影响第一次烧录后启动速度)缺点:对于apk中有lib库文件的应用预装在该目录后不能正常使用该应用预装到systempreinstallsystempreinstallsystempreinstallsystempreinstall目录预装的APK存放位置在devicesoftwinnerfibercommonprebuildpreinstallapk目录下将需要预装的APK文件放在该目录下面并修改目录下的Androidmk文件在文件末端添加如下:include$(CLEARVARS)LOCALMODULE:=xxxapkLOCALMODULETAGS:=optionalLOCALCERTIFICATE:=PRESIGNEDLOCALMODULEPATH:=$(TARGETOUT)preinstallLOCALMODULECLASS:=APPSLOCALSRCFILES:=$(LOCALMODULE)include$(BUILDPREBUILT)需要对该apk进行声明可以修改fibercommonmk或fiberxxmk文件添加如下:ConfidentialAllwinnerAllwinnerAllwinnerAllwinnerTechnologyTechnologyTechnologyTechnologyCO,CO,CO,CO,LtdLtdLtdLtdCopyrightAllwinnerTechnologyAllRightsReservedPRODUCTCOPYFILES=xxx优点:在系统烧录后第一次启动进入系统之后才会安装这些应用不影响开机时间可以有效解决预装apk(带lib库)不能使用的问题。缺点:安装之前会做标志位如安装过程中出现异常则其余应用不会自动安装。ConfidentialAllwinnerAllwinnerAllwinnerAllwinnerTechnologyTechnologyTechnologyTechnologyCO,CO,CO,CO,LtdLtdLtdLtdCopyrightAllwinnerTechnologyAllRightsReserved预设桌面方案目前桌面使用google默认的Launche源码位置为androidpackagesappsLauncher桌面的快捷方式在androidpackagesappsLauncherresxmldefaultworkspacexml文件中修改:<appwidgetlauncher:packageName="comgooglegeniegeniewidget"widgetpackagenamelauncher:className="comgoogle…MiniWidgetProvider"widgetclassnamelauncher:screen=""第几屏launcher:x=""xy坐标launcher:y=""launcher:spanX=""widget占用xy的格数launcher:spanY=""><favoritelauncher:packageName="comandroidcamera"apkpackagenamelauncher:className="comandroidcameraCamera"apkactivityclassnamelauncher:screen=""第几屏launcher:x=""xy坐标launcher:y="">favorite项为桌面快捷方式appwidget项为widget的设置其各项的意义如上面标注所示ConfidentialAllwinnerAllwinnerAllwinnerAllwinnerTechnologyTechnologyTechnologyTechnologyCO,CO,CO,CO,LtdLtdLtdLtdCopyrightAllwinnerTechnologyAllRightsReserved自定义按键配置KEYKEYKEYKEY硬件相关目前KEY检测使用了ADC转换的原理实现的由于该原理的限制所以不能区分组合键(功能键不包括电源键)按照目前公版原理图V的电压变化可以区分一档所以最多可以实现个键驱动与硬件的对应关系Key的驱动实现文件位置:licheelinuxdriversinputkeyboardswkeyboardc实现原理:通过检测电压值的数字量来区分当前是第几个按键:Vmodestaticunsignedcharkeypadmapindex={,,,,,,,,key,个,,,,,,,key,个,,,,,,,key,个,,,,,,key,个,,,,,,key,个,,,,,,key,个,,,,,,,,,,key,个,,,,,,,,,,,,,key,个}按键对应的键值:staticunsignedintsuniscankeycodesKEYMAXCNT={ConfidentialAllwinnerAllwinnerAllwinnerAllwinnerTechnologyTechnologyTechnologyTechnologyCO,CO,CO,CO,LtdLtdLtdLtdCopyrightAllwinnerTechnologyAllRightsReserved=KEYVOLUMEUP,=KEYVOLUMEDOWN,=KEYMENU,=KEYENTER,=KEYHOME,=KEYRESERVED,=KEYRESERVED,=KEYRESERVED,=KEYRESERVED,=KEYRESERVED,=KEYRESERVED,=KEYRESERVED,=KEYRESERVED,}当有按键事件时通过以上两次映射将最终的键值上报:scancode=keypadmapindexkeyvalxfinputreportkey(sunikbddev,suniscankeycodesscancode,)inputsync(sunikbddev)AndroidAndroidAndroidAndroid键值功能映射映射文件为androiddevicesoftwinnerfiberxxswkeyboardkl举例如下:keyHOMEWAKEkeyBACKWAKEkeyMENUWAKEDROPPEDkey后面的数字为驱动中上报的键值后面为对应的功能自定义按键时仅需要将前面的映射值和后面的功能对应起来即可(WAKEDROPPED:唤醒屏幕但是这个按键不会发给当前应用程序WAKE:唤醒屏幕但是这个按键需要发送给应用程序后面不加的代表没有唤醒功能)注:如果仅想快速地匹配按键请按照培训测验题目第一道题的做法来实现快速配置(进入adbshell用getevent命令获取按键映射值重填sunikeyboardkl文件)ConfidentialAllwinnerAllwinnerAllwinnerAllwinnerTechnologyTechnologyTechnologyTechnologyCO,CO,CO,CO,LtdLtdLtdLtdCopyrightAllwinnerTechnologyAllRightsReservedWIFIWIFIWIFIWIFI配置USBUSBUSBUSBWIFIWIFIWIFIWIFI的配置配置文件:sysconfigfex根据硬件原理图配置‘USB控制标志’和‘wifipara’部分前者标志usbvcc电平控制引脚及逻辑后者标志是wifi配置项举例如下:USB控制标志usbcusb一般用于otg功能usbused=usbporttype=usbdetecttype=usbidgpio=port:PA<><><default><default>usbdetvbusgpio=port:PA<><><default><default>usbdrvvbusgpio=port:PA<><><default><>usbrestrictgpio=port:PH<><><default><>usbhostinitstate=usbrestricflag=usbrestricvoltage=usbrestriccapacity=USB控制标志usbcusb打开用于usbwifiusbused=usbporttype=usbdetecttype=usbidgpio=usbdetvbusgpio=usbdrvvbusgpio=此处不用配置wifi电源在驱动中会做控制usbrestrictgpio=usbhostinitstate=必须置为代表此usb接口供wifi使用和wifi电源状态由wifi驱动控制设置为则该电平无法动态控制一直保持初始化电平状态usbrestricflag=ConfidentialAllwinnerAllwinnerAllwinnerAllwinnerTechnologyTechnologyTechnologyTechnologyCO,CO,CO,CO,LtdLtdLtdLtdCopyrightAllwinnerTechnologyAllRightsReservedUSB控制标志usbcusb根据原理图决定是否需要打开usbused=usbporttype=usbdetecttype=usbidgpio=usbdetvbusgpio=usbdrvvbusgpio=usbrestrictgpio=usbhostinitstate=usbrestricflag=wificonfigurationwifisdcidSDC,SDC,SDC,SDCwifiusbcidUSB,USB,USBwifiusbctypeEHCI(speed),OHCI(speed)wifimodselnone,bcm,bcm(wifibt),rtlas(wifibt),rtles(SME),rtlcu,rtleuwifiparawifi配置项wifiused=使用wifiwifisdcid=wifiusbcid=使用USB控制器wifiusbctype=为EHCIUSB接口wifimodsel=选用usb接口的rtleuwifipower="axpaldo"共有三组USBUSB用于OTGUSBUSB用于HOSTwifi可以使用USB或USBwifiused标志平台是否使用wifiwifiusbcid标志wifi使用哪一组usbwifiusbctype标志usb接口支持的版本wifimodsel标志选用哪一款wifi模组wifipower标志wifiVCC是哪个axppin控制可根据自己的硬件原理图情况来配置该部分Android层配置默认在androiddevicesoftwinnerfiberxxxBoardConfigmk文件中有以下配置:#WifiConfiguration#realtekwifisupportBOARDWIFIVENDOR:=realtekrealtekwifi配置总开关ifeq($(BOARDWIFIVENDOR),realtek)WPASUPPLICANTVERSION:=VERXConfidentialAllwinnerAllwinnerAllwinnerAllwinnerTechnologyTechnologyTechnologyTechnologyCO,CO,CO,CO,LtdLtdLtdLtdCopyrightAllwinnerTechnologyAllRightsReservedBOARDWPASUPPLICANTDRIVER:=NLBOARDWPASUPPLICANTPRIVATELIB:=libdrivercmdrtlBOARDHOSTAPDDRIVER:=NLBOARDHOSTAPDPRIVATELIB:=libdrivercmdrtl#SWBOARDUSRWIFI:=rtlcu#BOARDWLANDEVICE:=rtlcuSWBOARDUSRWIFI:=rtleu选用rtleuBOARDWLANDEVICE:=rtleu选用rtleu#SWBOARDUSRWIFI:=rtles#BOARDWLANDEVICE:=rtles#SWBOARDUSRWIFI:=rtlas#BOARDWLANDEVICE:=rtlas#SWBOARDUSRWIFI:=rtlau#BOARDWLANDEVICE:=rtlauendifSWBOARDUSRWIFI和BOARDWLANDEVICE是标志选用哪一款wifi模组这两个宏会直接影响到hardwarelibhardwarelegacy下的wific的编译。默认在androiddevicesoftwinnerfiberxxxinitsunircmk文件中有以下配置:#realtekwifiservice#realtekwifistaserviceservicewpasupplicantsystembinwpasupplicantiwlanDnlcdatamiscwifiwpasupplicantconfedatamiscwifientropybinclassmainsocketwpawlandgramwifiwifidisabledoneshot#realtekwifistappconcurrentserviceserviceppsupplicantsystembinwpasupplicantippDnlcdatamiscwifippsupplicantconfedatamiscwifientropybinNiwlanDnlcdatamiscwifiwpasupplicantconfclassmainsocketwpawlandgramwifiwifidisabledoneshot以上是为wifi开启wpasupplicant服务。ConfidentialAllwinnerAllwinnerAllwinnerAllwinnerTechnologyTechnologyTechnologyTechnologyCO,CO,CO,CO,LtdLtdLtdLtdCopyrightAllwinnerTechnologyAllRightsReservedSDIOSDIOSDIOSDIOWIFIWIFIWIFIWIFI配置配置文件:sysconfigfex根据硬件原理图来确定sdiowifi使用哪一组sdio卡接口按照如下配置(以mmc为例):mmcparasdcused=sdcdetmode=sdiowifi没有热插拔请配置检测模式为sdcbuswidth=sdcclk=port:PG<><><><default>sdccmd=port:PG<><><><default>sdcd=port:PG<><><><default>sdcd=port:PG<><><><default>sdcd=port:PG<><><><default>sdcd=port:PG<><><><default>sdcdet=sdcusewp=sdcwp=sdcisio=sdio卡的标志sdcregulator="none"wificonfigurationwifisdc

职业精品

用户评论

0/200
    暂无评论

精彩专题

上传我的资料

热门资料

资料评价:

/42
2下载券 下载 加入VIP, 送下载券

意见
反馈

返回
顶部