質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

iPhone

iPhoneとは、アップル社が開発・販売しているスマートフォンです。 同社のデジタルオーディオプレーヤーiPodの機能、電話機能、インターネットやメールなどのWeb通信機能の3つをドッキングした機器です。

Q&A

解決済

1回答

672閲覧

位置情報へのアクセス要請ができません

clo.momo

総合スコア27

iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

iPhone

iPhoneとは、アップル社が開発・販売しているスマートフォンです。 同社のデジタルオーディオプレーヤーiPodの機能、電話機能、インターネットやメールなどのWeb通信機能の3つをドッキングした機器です。

0グッド

0クリップ

投稿2018/05/26 15:48

アクセス要請がでません。
それで位置情報が取得できないから自分の位置も表示されません
”これc”と表示されているので、deniedのはずです。

どうすればいいのでしょうか?

おそらくここが原因

Swift

1 //位置情報が無効の場合有効にして! 2 let authorizationStatus = CLLocationManager.authorizationStatus() 3 4 if (authorizationStatus == CLAuthorizationStatus.notDetermined) { 5 locationManager.requestWhenInUseAuthorization() 6 print("これa") 7 } else if (authorizationStatus == CLAuthorizationStatus.restricted) { 8 locationManager.requestWhenInUseAuthorization() 9 print("これb") 10 } else if (authorizationStatus == CLAuthorizationStatus.denied) { 11 locationManager.requestWhenInUseAuthorization() 12 print("これc") 13 } else { 14 print("これd") 15 }

全体のコード

Swift

1// 2// ViewController.swift 3// MapTest 4// 5// Created by masahiro on 2018/05/26. 6// Copyright © 2018年 masahiro. All rights reserved. 7// 8 9import UIKit 10import MapKit 11import CoreLocation 12 13class ViewController: UIViewController ,MKMapViewDelegate,CLLocationManagerDelegate{ 14 @IBOutlet weak var mapView: MKMapView! 15 let locationManager = CLLocationManager() 16 17 override func viewDidLoad() { 18 super.viewDidLoad() 19 } 20 21 override func viewWillAppear(_ animated: Bool) { 22 23 24 //CLLocationManagerからイベントを取得 25 locationManager.delegate = self 26 27 //デバイスの位置情報が有効か確認 28 CLLocationManager.locationServicesEnabled() 29 30 //位置情報が無効の場合有効にして! 31 let authorizationStatus = CLLocationManager.authorizationStatus() 32 33 if (authorizationStatus == CLAuthorizationStatus.notDetermined) { 34 locationManager.requestWhenInUseAuthorization() 35 print("これa") 36 } else if (authorizationStatus == CLAuthorizationStatus.restricted) { 37 locationManager.requestWhenInUseAuthorization() 38 print("これb") 39 } else if (authorizationStatus == CLAuthorizationStatus.denied) { 40 locationManager.requestWhenInUseAuthorization() 41 print("これc") 42 } else { 43 print("これd") 44 } 45 46 //位置情報の更新 47 locationManager.startUpdatingLocation() 48 49 50 51 52 //マップのコード 53 //mapViewのインスタンスを作成 54 let mapView = MKMapView() 55 56 //MKMapViewからイベントを取得 57 mapView.delegate = self 58 59 //ユーザーの位置をマップに表示する 60 mapView.showsUserLocation = true 61 62 63 let location:CLLocationCoordinate2D = CLLocationCoordinate2DMake(35.68154, 139.752498) 64 //mapViewのセンターにlocationを設定 65 mapView.setCenter(location, animated: true) 66 67 //縮尺を設定 68 var region:MKCoordinateRegion = mapView.region 69 region.center = location 70 region.span.latitudeDelta = 0.02 71 region.span.longitudeDelta = 0.02 72 mapView.setRegion(region, animated: true) 73 74 //アノテーションを設定 75 let annotation = MKPointAnnotation() 76 annotation.coordinate = CLLocationCoordinate2DMake(35.68154, 139.752498) 77 78 //表示タイプを航空写真と地図のハイブリッドに設定 79 mapView.mapType = MKMapType.hybrid 80 81 82 } 83 84 override func didReceiveMemoryWarning() { 85 super.didReceiveMemoryWarning() 86 // Dispose of any resources that can be recreated. 87 } 88 89 90} 91 92

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

fuzzball

2018/05/26 15:51

一度不許可を選んでないですか?一度アプリを削除してみて下さい。
clo.momo

2018/05/26 15:59

表示されました!1回しか表示されないんですね。ありがとうございました!
guest

回答1

0

自己解決

一度アプリを削除して、再度ビルドしたら表示されました。
一度不許可を選ぶと、次は表示されないことが原因でした。

投稿2018/05/26 16:00

clo.momo

総合スコア27

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問