iPhoneアプリ開発講座 応用 BOOKNS-オリジナルテキスト
iPhoneアプリケーションアプリ開発の応用を学ぶ!
自分のスマートフォンでも動かせる、様々な種類のiPhoneアプリケーション開発を学べるBOOKNSオリジナルテキスト!
本書は、開校20周年を迎えるITの技術専門スクールで作られたAndroidアプリケーション開発用テキストを、BOOKNSの為に改修したオリジナルテキストです。
Swift言語を使用して、スマートフォンで動くiPhoneアプリケーションの開発を行います。
様々なサービスと連携したアプリケーションの開発や、ストアにリリースする方法など、実用的な内容を学習することが可能です。
・iPhoneアプリケーション開発に挑戦したい人
・様々なiPhoneアプリケーションの開発方法を学びたい人
・iPhoneアプリケーションをリリースして収入を得たい人
- 目次
- 練習問題
- 著者プロフィール
第0章
複数の画面を使用したアプリ開発
- Alert
- Dialog
- ScrollView
- ModalView
- TabView
第1章
マップを使用したサンプルアプリ
- マップの利用
- マップを表示する
- 現在地の緯度経度を取得する
- 現在地をマップ上に表示する
- ユーザ許可設定がされていない場合のアラート
- まとめ
第2章
アプリのリリース手順
- アプリの申請までの手順
Apple製品の現在地の取得などの位置情報関連の機能にアクセスするために、Appleが提供しているフレームワークはどれですか?
- Core Data
- Core Motion
- Core Location
- Core Local
Xcodeのプロジェクト設定の「Info」タブで指定する「Privacy – Location When In Use Usage Description」は何の設定ですか?
- ユーザがアプリに位置情報の使用を拒否するための設定項目です。
- アプリが位置情報をバックグラウンドで取得するための設定項目です。
- ユーザがアプリに位置情報の使用を許可するかどうかを判断するためのメッセージです。
- アプリが位置情報を使用するためのAPIを有効にするための設定項目です。
以下のコードの___の部分を埋めて、地図を表示するための正しい構文を選んでください。
import SwiftUI
import MapKit
struct Map1: View {
@State var coordinateRegion = MKCoordinateRegion(
center: CLLocationCoordinate2D(
latitude: 35.7022,
longitude: 139.7744
),
latitudinalMeters: 1000,
longitudinalMeters: 1000
)
var body: some View {
_____________________
}
}
import SwiftUI
import MapKit
struct Map1: View {
@State var coordinateRegion = MKCoordinateRegion(
center: CLLocationCoordinate2D(
latitude: 35.7022,
longitude: 139.7744
),
latitudinalMeters: 1000,
longitudinalMeters: 1000
)
var body: some View {
_____________________
}
}
- Map(coordinateRegion: $coordinateRegion)
- Map(coordinateRegion: coordinateRegion)
- Map(coordinateRegion: @State $coordinateRegion)
- Map()
以下のコードの___の部分を埋めて、位置情報を管理するための正しい構文を選んでください。
import Foundation
import MapKit
class LocationManager1: NSObject, ObservableObject, CLLocationManagerDelegate {
private let locationManager = CLLocationManager()
@Published var currentLocation: CLLocation?
override init() {
super.init()
locationManager.delegate = self
locationManager.requestWhenInUseAuthorization()
locationManager.startUpdatingLocation()
}
func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
self.currentLocation = ___
}
}
import Foundation
import MapKit
class LocationManager1: NSObject, ObservableObject, CLLocationManagerDelegate {
private let locationManager = CLLocationManager()
@Published var currentLocation: CLLocation?
override init() {
super.init()
locationManager.delegate = self
locationManager.requestWhenInUseAuthorization()
locationManager.startUpdatingLocation()
}
func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
self.currentLocation = ___
}
}
- self.currentLocation = locations.last
- self.currentLocation = locations.first
- self.currentLocation = locations[0]
- self.currentLocation = locations
以下の2つのコードの___の部分を埋めて、位置情報の緯度と経度を表示するための正しい構文を選んでください。(2か所あるため2つ選択してください)
1つ目:
import Foundation
import MapKit
class LocationManager1: NSObject, ObservableObject, CLLocationManagerDelegate {
private let locationManager = CLLocationManager()
@Published var currentLocation: CLLocation?
override init() {
super.init()
locationManager.delegate = self
locationManager.requestWhenInUseAuthorization()
locationManager.startUpdatingLocation()
}
func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
self.currentLocation = locations.last
}
}
2つ目:
import SwiftUI
import MapKit
struct Map2: View {
@ObservedObject var locationManager = LocationManager1()
var body: some View {
Text("緯度:___")
Text("経度:___")
}
}
import Foundation
import MapKit
class LocationManager1: NSObject, ObservableObject, CLLocationManagerDelegate {
private let locationManager = CLLocationManager()
@Published var currentLocation: CLLocation?
override init() {
super.init()
locationManager.delegate = self
locationManager.requestWhenInUseAuthorization()
locationManager.startUpdatingLocation()
}
func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
self.currentLocation = locations.last
}
}
import SwiftUI
import MapKit
struct Map2: View {
@ObservedObject var locationManager = LocationManager1()
var body: some View {
Text("緯度:___")
Text("経度:___")
}
}
- \(locationManager.currentLocation?.coordinate.latitude ?? 0.0)
- \(locationManager.currentLocation.latitude ?? 0.0)
- \(locationManager.currentLocation?.coordinate.longitude ?? 0.0)
- \(locationManager.longitude ?? 0.0)
- \(locationManager.latitude ?? 0.0)
林口 裕志(はやしぐち ゆうじ)
林口講師はこんな人
自身も未経験からITエンジニアになった経験から、初心者が躓きやすいポイントを押さえたわかりやすい授業をモットーにしている。また少人数の講義から200名以上の大規模な講義にも登壇し、その気さくな人柄で特に若い世代からの信頼度が高い。
土橋 直樹(つちはし なおき)
基本設計から実装まで経験が豊富。
サーバ構築経験もあり、近年では特にクラウドサービスの一つであるAWSを使用した構築経験が多い。
土橋講師はこんな人
IT未経験者にも分かりやすい授業を心がけている。
エンジニアとして幅広い実務を経験しており、実務経験に基づいたアドバイスには定評がある。
クラウドサービスやブロックチェーン、フロントエンドフレームワークなど比較的新しい技術の経験も豊富。
BOOKNS(ブックネス)とは、エンジニア育成に特化した定額制のオンライン学習サービスです。
開校20年の歴史をもつITスクール、システムアーキテクチュアナレッジのノウハウが詰まったオンライン教材に、現役講師によるコーチング・試験対策までをオールインワンにした、人材育成サービスの決定版!
お得な
サブスクリプションプランを
ご用意
法人 1ヶ月あたり
円/人(税込 5,500円)
個人 1ヶ月あたり
円/人(税込 3,300円)
※一部サービスのご利用には別途追加料金が発生致します。