An easy way to get system available features.
1
2
3
4
5
6
7
private void dumpSystemFeatures () {
FeatureInfo [] features = this . getPackageManager (). getSystemAvailableFeatures ();
for ( FeatureInfo f : features ) {
Log . i ( LOGTAG , "dumpSystemFeatures f" + f );
}
}
Have a glance at the result
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
I / MainActivity ( 13514 ): dumpSystemFeatures fFeatureInfo { 40 d74fd0 android . hardware . wifi fl = 0x0 }
I / MainActivity ( 13514 ): dumpSystemFeatures fFeatureInfo { 40 d75048 android . hardware . location . network fl = 0x0 }
I / MainActivity ( 13514 ): dumpSystemFeatures fFeatureInfo { 40 d750d8 android . hardware . nfc fl = 0x0 }
I / MainActivity ( 13514 ): dumpSystemFeatures fFeatureInfo { 40 d75150 com . google . android . feature . GOOGLE_BUILD fl = 0x0 }
I / MainActivity ( 13514 ): dumpSystemFeatures fFeatureInfo { 40 d751f0 android . hardware . location fl = 0x0 }
I / MainActivity ( 13514 ): dumpSystemFeatures fFeatureInfo { 40 d75270 android . hardware . sensor . gyroscope fl = 0x0 }
I / MainActivity ( 13514 ): dumpSystemFeatures fFeatureInfo { 40 d75300 android . hardware . screen . landscape fl = 0x0 }
I / MainActivity ( 13514 ): dumpSystemFeatures fFeatureInfo { 40 d75390 android . hardware . screen . portrait fl = 0x0 }
I / MainActivity ( 13514 ): dumpSystemFeatures fFeatureInfo { 40 d75420 android . hardware . wifi . direct fl = 0x0 }
I / MainActivity ( 13514 ): dumpSystemFeatures fFeatureInfo { 40 d754a8 android . hardware . usb . accessory fl = 0x0 }
I / MainActivity ( 13514 ): dumpSystemFeatures fFeatureInfo { 40 d75530 android . hardware . bluetooth fl = 0x0 }
I / MainActivity ( 13514 ): dumpSystemFeatures fFeatureInfo { 40 d755b0 android . hardware . touchscreen . multitouch . distinct fl = 0x0 }
I / MainActivity ( 13514 ): dumpSystemFeatures fFeatureInfo { 40 d75660 android . hardware . microphone fl = 0x0 }
I / MainActivity ( 13514 ): dumpSystemFeatures fFeatureInfo { 40 d756e8 android . hardware . sensor . light fl = 0x0 }
I / MainActivity ( 13514 ): dumpSystemFeatures fFeatureInfo { 40 d75770 android . hardware . camera . autofocus fl = 0x0 }
I / MainActivity ( 13514 ): dumpSystemFeatures fFeatureInfo { 40 d75800 android . software . live_wallpaper fl = 0x0 }
I / MainActivity ( 13514 ): dumpSystemFeatures fFeatureInfo { 40 d75890 android . hardware . camera . flash fl = 0x0 }
I / MainActivity ( 13514 ): dumpSystemFeatures fFeatureInfo { 40 d75918 android . hardware . telephony fl = 0x0 }
I / MainActivity ( 13514 ): dumpSystemFeatures fFeatureInfo { 40 d75998 android . software . sip fl = 0x0 }
......
##The Other way
You can also use adb shell
to get into the shell of your device and the use pm list features
to get the available features of a device.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
root @android :/ # pm list features
feature: reqGlEsVersion = 0x20000
feature: android . hardware . bluetooth
feature: android . hardware . camera
feature: android . hardware . camera . autofocus
feature: android . hardware . camera . flash
feature: android . hardware . camera . front
feature: android . hardware . faketouch
feature: android . hardware . location
feature: android . hardware . location . gps
feature: android . hardware . location . network
feature: android . hardware . microphone
feature: android . hardware . nfc
feature: android . hardware . screen . landscape
feature: android . hardware . screen . portrait
feature: android . hardware . sensor . accelerometer
feature: android . hardware . sensor . compass
feature: android . hardware . sensor . gyroscope
feature: android . hardware . sensor . light
feature: android . hardware . sensor . proximity
feature: android . hardware . telephony
feature: android . hardware . telephony . gsm
feature: android . hardware . touchscreen
feature: android . hardware . touchscreen . multitouch
feature: android . hardware . touchscreen . multitouch . distinct
feature: android . hardware . touchscreen . multitouch . jazzhand
feature: android . hardware . usb . accessory
feature: android . hardware . usb . host
feature: android . hardware . wifi
feature: android . hardware . wifi . direct
feature: android . software . live_wallpaper
feature: android . software . sip
feature: android . software . sip . voip
feature: com . cisco . anyconnect . permissions . patch . htc
feature: com . htc . android . rosie . widget
feature: com . htc . lockscreen . fusion
feature: com . nxp . mifare
For a detailed understanding of use-filter,please read this post http://developer.android.com/guide/topics/manifest/uses-feature-element.html
###Others