はじめに
ユーザーには最新のバージョンを使って欲しいです。
ですのでAppStoreに最新バージョンがリリースされたらアプリに通知します。
よく使う機能なのでライブラリを作成しました。
作成したライブラリの使い方を紹介します。
サンプルアプリ
ライブラリの導入
① 「File」を選択します
② 「Add Packages...」を選択します
③ https://github.com/SNQ-2001/AppVersionMonitorSwiftUI
を検索します
④ 「Up to Next Major Version」を選択します
⑤ 「Add Package」を選択します
実装
import SwiftUI
import AppVersionMonitorSwiftUI
struct ContentView: View {
@State var isAlert: Bool = false
var body: some View {
VStack {
Image(systemName: "globe")
.imageScale(.large)
.foregroundColor(.accentColor)
Text("Hello, world!")
}
.alert(isPresented: $isAlert) {
Alert(title: Text("お知らせ"), message: Text("最新バージョンがあります"), dismissButton: .default(Text("OK")) {
// TODO: ここでAppStoreを開く
})
}
.appVersionMonitor(id: 1570395606) { status in
switch status {
case .updateAvailable:
isAlert = true
print("アップデートがあります")
case .updateUnavailable:
print("アップデートがありません")
case .failure(let error):
print("エラーが発生しました: \(error)")
}
}
}
}
アプリIDについて
id
でしている数字はアプリIDです。
.appVersionMonitor(id: 1570395606) { status in
アプリIDはAppStoreのURLで確認できます。
https://apps.apple.com/jp/app/g-search/id1570395606
後ろについている数字がid
です。
リリース前のアプリのアプリIDを知る方法は別記事で紹介しています。
注意事項
アプリバージョンの指定方法は「Semantic Versioning 2.0.0」を採用しています。
例:1.0.0
2.1.3
3.10.1
「Semantic Versioning 2.0.0」以外のバージョンの指定方法は使用できません。
「Semantic Versioning 2.0.0」については、以下の記事がわかりやすかったです。
おわり
スターください!
IssueやPRもお願いします!