私はPlacesを使用して、ユーザーが検索バーで何かを検索したときにユーザーに提案を取得しています。
私が使用しているコードは次のとおりです。
// Obtain browser key from https://code.google.com/apis/console
String key = "key=" + context.getString(R.string.google_maps_key);
String input="";
try {
input = "input=" + URLEncoder.encode(place[0], "utf-8");
} catch (UnsupportedEncodingException e) {
DLog.d(e);
}
// place type to be searched
String types = "types=geocode";
// Sensor enabled
String sensor = "sensor=false";
String language = "language=it";
// Building the parameters to the web service
String parameters = input+"&"+types+"&"+sensor+"&"+key + "&" + language;
// Output format
String output = "json";
// Building the url to the web service
String url = "https://maps.googleapis.com/maps/api/place/queryautocomplete/"+output+"?"+parameters;
try{
// Fetching the data from we service
data = downloadUrl(url);
他にもコードはありますが、これが必要な部分だと思います。ただし、Android Studioから起動するとかなりうまく機能しますが、署名付きAPKをインストールするとまったく機能しません。
マップでも同じ問題が発生しましたが(空白のままです)、SHA1キーとパッケージ名をGoogle Console APIに配置すると、正常に機能します。しかし、場所はまだそうではありません。
それがそのように機能する理由のアイデアはありますか?ありがとう:)
その理由は、Googleコンソールでデバッグキーとリリースキーの両方のSHA1を追加する必要があるためです。
私が使用した:
keytool -list -v -keystore /Users/fil/.android/debug.keystore
android_sdkのplatform-toolsfoulderから(ただし、私はMacを使用していますが、Linuxでは異なる場合があります)、デバッグキーを取得します。次に、同じですが、リリースキーを使用します。
その後、APIと認証フォルダに「Androidアプリケーションのキー」としてSHA1;パッケージの両方を挿入します。
また、場所専用のサーバーキーも作成しました。
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다