質問編集履歴

2

g

2021/08/28 15:41

投稿

cunwe
cunwe

スコア65

test CHANGED
@@ -1 +1 @@
1
- dGeolocation APIを使おうとしたらReferenceError
1
+ Geolocation APIを使おうとしたらReferenceError
test CHANGED
File without changes

1

んっh

2021/08/28 15:41

投稿

cunwe
cunwe

スコア65

test CHANGED
@@ -1 +1 @@
1
- Geolocation APIを使おうとしたらReferenceError
1
+ dGeolocation APIを使おうとしたらReferenceError
test CHANGED
@@ -6,7 +6,7 @@
6
6
 
7
7
  ## 現状
8
8
 
9
- そこで調べてみると地図と言えばGoogleと思ってGoogle Maps APIを使うものだと思っていましたが、どうやらこちらの[Geolocation API](https://www.w3.org/TR/geolocation/)というのが位置取得などができて便利そうで使おうかと思い、[こちらの記事](https://syncer.jp/how-to-use-geolocation-api)を参考に進めています。そこでGoogle Apps Scriptのgsファイルに先程の記事にあった以下のコードを書いたところ`ReferenceError: navigator is not defined`と言われてしまいました。[こちらの私の前の質問](https://teratail.com/questions/354518)で[Web Speech API](https://wicg.github.io/speech-api/)を用いた際はAPIを使う際にgsファイルに書くことなどなかったのですがReffernce Errorが出るということは何か書かなきゃいけないのでしょうか?知見をお持ちの方、教えていただけますと幸いです。
9
+ そこで調べてみると地図と言えばGoogleと思ってGoogle Maps APIを使うものだと思っていましたが、どうやらこちらの[Geolocation API](https://www.w3.org/TR/geolocation/)というのが位置取得などができて便利そうで使おうかと思い、[こちらの記事](https://syncer.jp/how-to-use-geolocation-api)を参考に進めています。そこで以下のコードを書いたところ`ReferenceError: navigator is not defined`と言われてしまいました。[こちらの私の前の質問](https://teratail.com/questions/354518)で[Web Speech API](https://wicg.github.io/speech-api/)を用いた際はAPIを使う際にgsファイルに書くことなどなかったのですがReffernce Errorが出るということは何か書かなきゃいけないのでしょうか?if文の書き方などは[こちら](https://developer.mozilla.org/ja/docs/Web/API/Geolocation_API/Using_the_Geolocation_API)を参照しました。知見をお持ちの方、いただけますと幸いです。
10
10
 
11
11
 
12
12
 
@@ -14,29 +14,31 @@
14
14
 
15
15
  ```
16
16
 
17
- // Geolocation APIに対応している
17
+ function geoFindUser() {
18
18
 
19
- if( navigator.geolocation )
19
+ //getCurrentPositionメソッドで現在地を取得
20
20
 
21
- {
21
+ if ('geolocation' in navigator){
22
22
 
23
- // 現在位置を取得できる場合の処理
23
+ navigator.geolocation.getCurrentPosition(
24
24
 
25
- alert( "あなたの端末では、現在位置を取得することができます。" ) ;
25
+ //現在地の取得に成功した場合の処理
26
26
 
27
- }
27
+ function(position) {
28
28
 
29
+ //データを変数にして整理(position.coords.latitude/longitudeが座標)
29
30
 
31
+ var lat = position.coords.latitude;
30
32
 
31
- // Geolocation APIに対応していない
33
+ var lng = position.coords.longitude;
32
34
 
33
- else
35
+ Logger.log(lat,lng);
34
36
 
35
- {
37
+ }
36
38
 
37
- // 現在位置を取得できない場合の処理
39
+ )
38
40
 
39
- alert( "あなたの端末では、現在位置を取得できません。" ) ;
41
+ }
40
42
 
41
43
  }
42
44