转自:http://my.oschina.net/zhang3/blog/16100
找了一找,显示信号对应的图片是:
stat_sys_signal_null.png
查找一下这个图片在其它地方有没有:
3 | ./base/docs/html/images/icon_design/stat_sys_signal_null.png |
4 | ./base/core/res/res/drawable-mdpi/stat_sys_signal_null.png |
5 | ./base/core/res/res/drawable-hdpi/stat_sys_signal_null.png |
再找找哪里用到了这个图片:
2 | ./base/services/java/com/android/server/status/StatusBarPolicy.java: null, com.android.internal.R.drawable.stat_sys_signal_null, 0, 0); |
3 | ./base/services/java/com/android/server/status/StatusBarPolicy.java: mPhoneData.iconId = com.android.internal.R.drawable.stat_sys_signal_null; |
找到了两处,其实是同一个文件,打开来看看吧:
01 | private final void updateSignalStrength() { |
06 | if (!hasService() && !mServiceState.isEmergencyOnly()) { |
08 | if (Settings.System.getInt(mContext.getContentResolver(), |
09 | Settings.System.AIRPLANE_MODE_ON, 0 ) == 1 ) { |
10 | mPhoneData.iconId = com.android.internal.R.drawable.stat_sys_signal_flightmode; |
11 | } else if ( mModemPowerState == ModemPowerTracker.PowerState.TURNED_ON ) { |
12 | mPhoneData.iconId = com.android.internal.R.drawable.stat_sys_signal_init; |
14 | mPhoneData.iconId = com.android.internal.R.drawable.stat_sys_signal_null; |
16 | mService.updateIcon(mPhoneIcon, mPhoneData, null ); |
这处代码看起来像是3G信号。
2 | mPhone = (TelephonyManager)context.getSystemService(Context.TELEPHONY_SERVICE); |
3 | mPhoneData = IconData.makeIcon( "phone_signal" , |
4 | null , com.android.internal.R.drawable.stat_sys_signal_null, 0 , 0 ); |
5 | mPhoneIcon = service.addIcon(mPhoneData, null ); |
这个应该是电话信号了