在机顶盒ROM研发过程中,有时为了完成某一需求,需要在framework中添加系统接口,所以本篇文章就简单介绍一下在framework中添加系统接口的方法。在framework添加接口大致可分为两类:在原生Service中添加和在定制的Service中添加,本篇文章基于Android4.4.2系统,进行简单介绍。
一、知识准备 1.1、电视机屏幕宽高的获取以Amlogic905代码为例,机顶盒所连接电视机相关信息存储在节点"/sys/class/amhdmitx/amhdmitx0/edid"中,使用cat /sys/class/amhdmitx/amhdmitx0/edid命令,查看得该节点内容如下:
root@p201_iptv:/ # cat /sys/class/amhdmitx/amhdmitx0/edid
Rx Brand Name: PHL
Rx Product Name: PHILIPS
Physcial size(cm): 52 x 29
Manufacture Week: 1
Manufacture Year: 2015
EDID Verison: 1.3
EDID block number: 0x1
blk0 chksum: 0x2c
Source Physical Address[a.b.c.d]: 1.0.0.0
native Mode f1, VIC (native 16):
ColorDeepSupport 2
31 16 20 5 19 4 2 3 32 22 18 6 7 1
Audio {format, channel, freq, cce}
{1, 1, 7, 7}
{10, 7, 6, 0}
Speaker Allocation: 1
Vendor: 0xc03
MaxTMDSClock1 290 MHz
SCDC: 0
RR_Cap: 0
LTE_340M_Scramble: 0
checkvalue: 0x2cc80000
1.2、电视机屏幕尺寸的计算
由上述内容可知,我们需要的就是通过Physcial size(cm): 52 x 29(即屏幕的宽高),来计算出屏幕的对角线尺寸。具体计算公式为:
(int)(Math.sqrt(height*height +weight*weight)/2.54 +0.5)
1.3、Binder通信
framework层供外部调用的接口都是由Binder通信来实现的,简单关系如下:
原创文章 11获赞 0访问量 2526
关注
私信
展开阅读全文
作者:解梦者