code ソーシャル

Unityアプリcodetips(91)

スポンサーリンク

//tips

//UserDefaults.standardの保存について

該当のエラー箇所が解決されたので記載する。

NavigationView{
List{
ForEach(0..<tasks.count, id: \.self) { index in
TextField("PlainTextFieldStyle", text: self.$tasks[index] , onCommit: {
UserDefaults.standard.set(self.tasks, forKey: "キー")
})
}
//Text(self.tasks[task])}
.onDelete(perform: rowRemove)
}
.navigationBarTitle("Menu")
var tasks = userDefaults.array(forKey: "キー")

}

NavigationView内にUserDefaultsをそのまま置くとエラーになるようで、 TextFieldのonCommitの中にUserDefaultsを書くことでエラーを解決できた。

実はTextFieldにはonEditingChanged: (Bool) -> Void、onCommit: () -> Voidというイベントを引数にとることができ、

ユーザーがアクションを起こしたタイミングで実行する処理をonCommit以下に記載することができる。

下記参照。

https://capibara1969.com/1546/

Unityで使用していたC#と異なり、swift言語は、ロジックというより、知識量を要求されているので、swiftを使いこなせるには忍耐が必要になりそう。獲得しやすい知識であればいいが、獲得しにくいものは知っている人に聞く以外にない点が厄介。

現在はnilの取り扱いでコード上に問題が起きているので、内容を確認する。

Value of optional type '[Any]?' must be unwrapped to refer to member 'count' of wrapped base type '[Any]'

Xcodeでのエラー内容は上記だが、swiftのplaygroundではエラーが出ていない模様。

オプショナル型とは変数にnilの代入を許容するデータ型で、反対に非オプショナル型はnilを代入できないもの。オプショナル型の変数にはデータ型の最後に「?」か「!」をつける。

こちら!をつけても?をつけてもエラーになるので確認中。

//iOS Certificate の作成

Certificate」でリリースのための証明書を発行。アプリごとの「Apple ID」を作成。それらを利用して「Provisioning Profile」を作成。ファイルをパソコンにダウンロード。最後に「App Store Connect」へアプリの詳細情報を登録・申請という流れで行う。

Macで「キーチェーンアクセス」アプリを起動し、上部のキーチェーンアクセスから証明書アシスタント > 認証局に証明書を要求をクリック。自分のメールアドレス(私の場合はappleに紐づいたicloudのアドレス)を入力し、要求の処理をディスクに保存に設定し、完了。CertificateSigningRequest.certSigningRequestを保存する。

Apple developerのサイトでCertificates, Identifiers & ProfilesのCertificates横にあるプラスボタンを押し、iOS Distribution (App Store and Ad Hoc)を選択。

ファイルをアップロードしてくれという指示が来るのでCertificateSigningRequest.certSigningRequestをアップロード。これによりDownload Your Certificateから .cerファイルをダウンロードできるようになる。これも保存。

//apple developer アプリ申請

次に、App IDの作成を行う。

Certificates, Identifiers & Profilesからidentifierページ
のプラスボタンを押し、App IDsのページに入りプラスボタンでIDを選択。

記入項目にあるBundleIDはXCodeでアプリ作成する際に設定したものを記載。
Descriptionは日本語は記載できなかったので英語名を入力した。

//provisoning profileの作成

profileページからプラスボタンを押し、iOS App Developmentを選択。その後にApp IDを求められるので先ほど作成したものを登録。

Select Certificatesで先ほど登録したCertificateを選択。

わかりやすい名前をつけてGenerate a Provisioning Profileで作成し、ダウンロード。

そのファイルをダブルクリックすればxcodeに反映されるらしいが、私の場合は、xcodeは反応せず、signingからProvisioning profileを確認し、先のものを設定すると、

doesn't include signing certificate "Apple Development:

とエラーが表示された。

XcodeのPreferencesを選んでManage Certificates をクリック。その後左下のプラスボタンを押し、apple distributionを設定する。

Apple developerページもどり、certificatesに先ほど作成しているものがきちんと追加されているか確認。

確認できたら、profilesページに行き、プラスボタンをクリック。今度はdistiributionのapp storeを選択する。

 

 

人気の記事

1

コロナによる需要変化 コロナパンデミックの影響で、人々は外に出られなくなり、自宅で過ごす時間が増えました。 この自粛ムードの中、下記のようなビジネスの需要変化が引き起こされています。 【利用者減少】 ...

2

米国レストランの決済時に毎日お世話になっていた「Square」のビジネスモデルについて本日はふれていきたいと思います。 「Square」とは、ネットにつながったモバイル端末と専用のカードリーダーを用意 ...

3

無料でネットショップを開けるアプリとして多くの人に驚きを与えたBASE株式会社が、2019年10月25日東証マザーズに上場しました。2020年2月時点で90万店を超えるショップを抱えるまでに成長してい ...

4

2011年にサービスを開始してから圧倒的な成長率を誇るインテリア通販サイト 【FLYMEe/フライミー】を皆さんご存じでしょうか。 「自分のイメージするインテリア、本当に欲しいインテリアがどこにあるの ...

5

ナイキのSNKRSが、なぜこれほどまでに人気なのか?調べてみました。 きっかけは米国での友達との会話。彼は自分のシューズをみせて、「これ20万円もしたんだぜ。」と語ってくれました。 あまり靴に興味がな ...

-code, ソーシャル
-,

Copyright© BUSINESS HACKER , 2020 All Rights Reserved Powered by AFFINGER5.