自分の位置を取得してGoogleマップに表示する必要があるアプリを作りたいです。http://wiki.phonegap.com/w/page/16494764/PhoneGap%20Geolocation%20Sample%20Applicationのコードを使用しました。phonegap 2.0.0 を使用して Android 2.2 向けに開発しています。エミュレータ2.2を使用しています。
Phonegap からすべてを正しくインストールし、マップ用の Google Api3 キーを取得しました。http://maps.google.com/maps/api/staticmap?center= (ここにキーを配置します) の後にキーを配置します。アプリを起動すると、CMD を使用して座標を送信します。Telnet Localhost 5554、ジオフィックスなど。アプリを起動すると、次のエラーが表示されます: Cant retrieve position Error[object PositionError].
もうエラーは発生しません (HighAccuracy を有効にしました)。しかし、それも何も示していません。だから私はグーグルマップで何か間違ったことをしたか、何かを忘れたと思います。
誰でも私を助けることができますか?左上隅に疑問符が表示されます。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta name="viewport" content="width=device-width; height=device-height; user-scalable=no" />
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
<title>Beer Me</title>
<link rel="stylesheet" href="/master.css" type="text/css" media="screen" />
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=true"></script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js"></script>
<script type="text/javascript" charset="utf-8" src="cordova-2.0.0.js"></script>
<script type="text/javascript">
function loader() {
var state = document.readyState;
if (state == 'loaded' || state == 'complete') {
run();
} else {
if (navigator.userAgent.indexOf('Browzr') > -1) {
setTimeout(run, 250);
} else {
document.addEventListener('deviceready',run,false);
}
}
}
function run() {
var imageUrl = "http://maps.google.com/maps/api/staticmap?sensor=false¢er=" + latitude + ',' + longitude +
"&zoom=14&size=300x400&markers=color:blue|label:S|" + latitude + ',' + longitude;
console.log("imageUrl-" + imageUrl);
$("#map").remove();
$(document.body).append(
$(document.createElement("img")).attr("src", imageUrl).attr('id', 'map')
);
var fail = function(e) {
alert('Can\'t retrieve position.\nError: ' + e);
};
navigator.geolocation.getCurrentPosition(imageUrl, fail,{ enableHighAccuracy: true });
}
</script>
</head>