{"id":10976,"date":"2021-10-27T22:23:10","date_gmt":"2021-10-27T14:23:10","guid":{"rendered":"https:\/\/www.bookcard.net\/wordpress\/?p=10976"},"modified":"2021-10-27T22:23:10","modified_gmt":"2021-10-27T14:23:10","slug":"android_locationmanager_getbestprovider_null","status":"publish","type":"post","link":"https:\/\/www.bookcard.net\/wordpress\/android_locationmanager_getbestprovider_null\/","title":{"rendered":"Android LocationManager.getBestProvider()\u8fd4\u56deNULL"},"content":{"rendered":"<figure id=\"attachment_10977\" aria-describedby=\"caption-attachment-10977\" style=\"width: 1280px\" class=\"wp-caption alignnone\"><a href=\"https:\/\/www.bookcard.net\/wordpress\/wp-content\/uploads\/2021\/10\/Android_LocationManager_getBestProvider_NULL.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-10977\" src=\"https:\/\/www.bookcard.net\/wordpress\/wp-content\/uploads\/2021\/10\/Android_LocationManager_getBestProvider_NULL.jpg\" alt=\"Android LocationManager.getBestProvider()\u8fd4\u56deNULL\" width=\"1280\" height=\"800\" srcset=\"https:\/\/www.bookcard.net\/wordpress\/wp-content\/uploads\/2021\/10\/Android_LocationManager_getBestProvider_NULL.jpg 1280w, https:\/\/www.bookcard.net\/wordpress\/wp-content\/uploads\/2021\/10\/Android_LocationManager_getBestProvider_NULL-300x188.jpg 300w, https:\/\/www.bookcard.net\/wordpress\/wp-content\/uploads\/2021\/10\/Android_LocationManager_getBestProvider_NULL-768x480.jpg 768w\" sizes=\"auto, (max-width: 1280px) 100vw, 1280px\" \/><\/a><figcaption id=\"caption-attachment-10977\" class=\"wp-caption-text\">Android LocationManager.getBestProvider()\u8fd4\u56deNULL<\/figcaption><\/figure>\n<p>\u300eGPS\u300f\u5168\u7403\u5b9a\u4f4d\u4ee3\u78bc,\u4fc2\u300eeclipse\u300f\u79fb\u904e\u849e\u300eAndroid Studio\u300f, \u767c\u73fegetBestProvider()\u8fd4\u56deNULL. \u6e90\u65bc\u5187\u300e\u6b0a\u9650\u300f , \u800c\u300eAndroid 6\u300f\u5f8c\u8981\u4eba\u624b\u7372\u5f97\u6388\u6b0a, \u5187\u300e\u6b0a\u9650\u300fgetBestProvider()\u6c38\u9060\u8fd4\u56denull. \u4fc2\u7a0b\u5f0f\u555f\u52d5\u6aa2\u67e5\u300e\u6b0a\u9650\u300f, \u82e5\u5187\u300e\u6b0a\u9650\u300f\u63d0\u51fa\u8acb\u6c42\u4f38\u8acb.<\/p>\n<table>\n<tbody>\n<tr>\n<td width=\"575\">string GetBestProvider (Criteria criteria, bool enabledOnly)<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>\u300eGPS\u300f\u5b9a\u4f4d\u4f38\u8acb\u300e\u6b0a\u9650\u300f<\/p>\n<table>\n<tbody>\n<tr>\n<td width=\"575\">&lt;uses-permission android:name=&#8221;android.permission.ACCESS_FINE_LOCATION&#8221;\/&gt;<\/td>\n<\/tr>\n<tr>\n<td width=\"575\">&lt;uses-permission android:name=&#8221;android.permission.ACCESS_COARSE_LOCATION&#8221;\/&gt;<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>\u300e\u6b0a\u9650\u300f<\/p>\n<table>\n<tbody>\n<tr>\n<td width=\"397\">Manifest.permission.ACCESS_FINE_LOCATION<\/td>\n<td width=\"179\">\u9ad8\u7cbe\u5ea6\u5b9a\u4f4d<\/td>\n<\/tr>\n<tr>\n<td width=\"397\">Manifest.permission.ACCESS_COARSE_LOCATION<\/td>\n<td width=\"179\">\u4f4e\u7cbe\u5ea6\u5b9a\u4f4d<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>\u6aa2\u67e5\u300e\u6b0a\u9650\u300f<\/p>\n<table>\n<tbody>\n<tr>\n<td width=\"575\">int coarse = ContextCompat.checkSelfPermission(context, Manifest.permission.ACCESS_COARSE_LOCATION);<\/td>\n<\/tr>\n<tr>\n<td width=\"575\">int fine = ContextCompat.checkSelfPermission(context,Manifest.permission.ACCESS_FINE_LOCATION);<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>\u8fd4\u56de\u503c\u5224\u65b7\u4fc2\u54aa\u7372\u5f97\u300e\u6b0a\u9650\u300f<\/p>\n<table>\n<tbody>\n<tr>\n<td width=\"288\">PackageManager.PERMISSION_GRANTED<\/td>\n<td width=\"288\">\u6709\u300e\u6b0a\u9650\u300f<\/td>\n<\/tr>\n<tr>\n<td width=\"288\">PackageManager.PERMISSION_DENIED<\/td>\n<td width=\"288\">\u5187\u300e\u6b0a\u9650\u300f<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>\u5224\u65b7\u6709\u5187\u300e\u6b0a\u9650\u300f<\/p>\n<table>\n<tbody>\n<tr>\n<td width=\"575\">if(coarse == PackageManager.PERMISSION_DENIED || fine == PackageManager.PERMISSION_DENIED )<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>\u8acb\u6c42\u4f38\u8acb. context\u5fc5\u9700\u4fc2Activity<\/p>\n<table>\n<tbody>\n<tr>\n<td width=\"575\">String permission[] = new String[] { Manifest.permission.ACCESS_COARSE_LOCATION,Manifest.permission.ACCESS_FINE_LOCATION};<\/td>\n<\/tr>\n<tr>\n<td width=\"575\">ActivityCompat.requestPermissions((Activity) context,permission,REQUEST_CODE_GPS);<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>GPS\u6b0a\u9650\u8acb\u6c42\u78bc<\/p>\n<table>\n<tbody>\n<tr>\n<td width=\"575\">public static int REQUEST_CODE_GPS = 156;<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>\u8655\u7406GPS\u6388\u6b0a\u56de\u8abf, \u4fc2MainActivity\u5224\u65b7\u6388\u6b0a<\/p>\n<table>\n<tbody>\n<tr>\n<td width=\"575\">@Override<\/p>\n<p>public void onRequestPermissionsResult(int requestCode,String[] permissions,int[] grantResults){<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>requestCode\u4fc2\u6b0a\u9650\u8acb\u6c42\u78bc<\/p>\n<table>\n<tbody>\n<tr>\n<td width=\"575\">if(requestCode == GPS.REQUEST_CODE_GPS) {\/\/ \u7f85\u76e4\u6b0a\u9650\u8acb\u6c42\u78bc<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>\u5224\u65b7\u300e\u6b0a\u9650\u300f\u4fc2\u54aa\u7372\u5f97<\/p>\n<table>\n<tbody>\n<tr>\n<td width=\"575\">if(grantResults[0] == PackageManager.PERMISSION_GRANTED &amp;&amp;<\/p>\n<p>grantResults[1] == PackageManager.PERMISSION_GRANTED) { \/\/ \u7372\u5f97\u6388\u6b0a<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>\u518d\u6b21\u5b9a\u4f4d<\/p>\n<table>\n<tbody>\n<tr>\n<td width=\"575\">GPS.UpdatesLocation();<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>\u4ea4\u7ffb\u7540onRequestPermissionsResult()\u8655\u7406<\/p>\n<table>\n<tbody>\n<tr>\n<td width=\"575\">\u00a0\u00a0 super.onRequestPermissionsResult(requestCode,permissions,grantResults);<\/p>\n<p>}<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u300eGPS\u300f\u5168\u7403\u5b9a\u4f4d\u4ee3\u78bc,\u4fc2\u300eeclipse\u300f\u79fb\u904e\u849e\u300eAndroid Studio\u300f, \u767c\u73fegetBestPro &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/www.bookcard.net\/wordpress\/android_locationmanager_getbestprovider_null\/\" class=\"more-link\">\u7e7c\u7e8c\u95b1\u8b80 <span class=\"screen-reader-text\">Android LocationManager.getBestProvider()\u8fd4\u56deNULL<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[2],"class_list":["post-10976","post","type-post","status-publish","format-standard","hentry","category-android","tag-android","entry"],"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.bookcard.net\/wordpress\/wp-json\/wp\/v2\/posts\/10976","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.bookcard.net\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.bookcard.net\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.bookcard.net\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.bookcard.net\/wordpress\/wp-json\/wp\/v2\/comments?post=10976"}],"version-history":[{"count":1,"href":"https:\/\/www.bookcard.net\/wordpress\/wp-json\/wp\/v2\/posts\/10976\/revisions"}],"predecessor-version":[{"id":10978,"href":"https:\/\/www.bookcard.net\/wordpress\/wp-json\/wp\/v2\/posts\/10976\/revisions\/10978"}],"wp:attachment":[{"href":"https:\/\/www.bookcard.net\/wordpress\/wp-json\/wp\/v2\/media?parent=10976"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.bookcard.net\/wordpress\/wp-json\/wp\/v2\/categories?post=10976"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.bookcard.net\/wordpress\/wp-json\/wp\/v2\/tags?post=10976"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}