How can I check whether the phone has GPS device or not?
I am trying to find piece of code which can tell me whether the android phone has GPS device or not? Most of the samples I am getting in searc开发者_StackOverflowh results are telling whether GPS is enabled or not. What I am interested in is whether Android phone has Physical GPS device or not?
Thanks
Starting with API level 8 (Froyo), you can use the following code:
PackageManager packageManager = mContext.getPackageManager();
boolean hasGPS = packageManager.hasSystemFeature(PackageManager.FEATURE_LOCATION_GPS);
public boolean hasGPSDevice(Context context)
{
final LocationManager mgr = (LocationManager)context.getSystemService(Context.LOCATION_SERVICE);
if ( mgr == null ) return false;
final List<String> providers = mgr.getAllProviders();
if ( providers == null ) return false;
return providers.contains(LocationManager.GPS_PROVIDER);
}
精彩评论