【アプリ】ビルド(iOS)
■
以下の2ファイルを、ダブルクリックしてキーチェーンに保存
xxx.p12
yyy.p12
(このあたり、よくわからない..)
■
xcodeでプロビジョニング設定
①「Generic iOS Device」へ変更
②「TARGETS」を対象プロジェクトに設定
③「Signing & Capabilities」のタブへ切り替える
④「Automatically manage signing」のチェックをはずす
⑤「Bundle Identifier」に「jp.xxx.hogehogeapp.stg」をセット※
⑥「Provisioning Profile」に「hogehogepstg_adhoc」をセット※
development:開発
adhoc:配信
※ダウンロードしたプロビジョニングファイルを設定します
また、Appleアカウントの同期ができていると選択できるのかも(この場合はダウンロード不要)
■
Product > Archive
Product を選択後、optionを押したままにすると
Archiveが表示されます
■
Archive (左側)を選択、
Archive(右下)を押す
■
添付のようなメッセージが表示された場合
自分の端末のパスワードを入力して継続
(常に許可で、今後は表示されなくなります)
■
Distribute Appを押す
■
配信(テスター)する場合は
Ad Hoc → Next
本番をApple Develoverにリリース申請する場合は
App Store Connect → Next
■
None > Next
■
Select Profile > ここで対象のプロビジョニングファイルを選択(※) > Next
※
ステージング環境の配信する場合は
Import Profile… > hogehogepstg_adhoc を選択
■
Exportされるとフォルダに
iPaファイルが生成されるので、完成です!
■
iPaファイルは、Firebase Console のApp Distributionから配信できます
■
他の人から、ソース(フォルダ毎)もらった場合で、以下のエラー出た場合
launchPackager.command
→ 右クリック → 開く
【アプリ】プロビジョニングファイル
■
Apple Developer(アップルディベロッパーセンター)
https://developer.apple.com/jp/
ログイン
(2段階認証は必要かも)
■
ログインしたら
Certificates, Identifiers & Profiles
をクリック
■
Certificates, Identifiers & Profiles
Devices
Devices +
+ の部分をクリック
■
Register a New Device
Device Name (任意名でOKです)
Device ID(UDID) こちらはインストールしたいiOSの端末のUDIDを設定
Continueをクリック
■
Certificates, Identifiers & Profiles
Profiles
該当のプロビジョニングファイル名をクリック
Editをクリック
Devices の一覧で
先ほどUDIDを追加した端末名にチェックします
Saveをクリックで、保存します
■
Certificates, Identifiers & Profiles
Profiles
該当のプロビジョニングファイル名をクリック
「DownLoad」
■
プロビジョニングファイルは
xcodeで設定する(別記事)
【アプリ】設定・申請・環境など
■ビルド準備(iPhone)
iPhoneに配信する場合は、その端末のUDIDが必要
(参考)
UDIDを調べるには、iTunesを使う
MacにUSBでお手元のiPhoneを接続して、iTunesを起動。
接続したら、「デバイス」というところで、取得したいデバイスを選択し、
「概要」欄を表示してください。
そこに表示されている「シリアル番号」というところをクリック
■プロビジョニングファイル(iPhone)
https://testt55.hatenablog.com/entry/2020/10/03/152733
■ビルド(iPhone)
https://testt55.hatenablog.com/entry/2020/10/03/161222
■配信
【ビルド後の配信】
ipaファイル(iPhone)、apkファイル(Android)ができたら
Firebase Console > 品質 > Firebase app distribution
にてテスターにメールで配信(実機にインストールできる)
【Firebase app distribution 端末側の設定】
・iOSテスター端末の設定
https://note.com/goodhizoon/n/ne16ec0f8b9ff
・Androidテスター端末の設定
https://qiita.com/Idenon/items/e07a0965f7df40769b22
【JavaScript】まとめ
getElementsByClassName | クラス名の全ての要素(配列) |
---|---|
getElementById | id名の要素 |
Math.random | ランダム値(0以上、1未満) |
addEventListener | イベントを設定 |
RegExp | 正規表現オブジェクト生成 |
console.log | コンソール出力 |
getElementById | id名の要素 |
addEventListener | イベントを設定 |
navigator.userAgent | ユーザーエージェント(どんな環境からアクセスしてるか) |
includes | 文字列を含んでいるかどうか判定 |
innerHTML | 要素のHTMLの書換/取得 |
getElementById | id名の要素 |
addEventListener | イベントを設定 |
setProperty | カスタムプロパティに値を設定 |
getPropertyValue | カスタムプロパティの値を取得 |
Math.PI | 円周率 |
Math.cos(数値) | コサイン |
Math.sin(数値) | サイン |
charAt(インデックス) | 指定したインデックスの文字を取得 |
classList.remove | 指定したクラスを除去 |
classList.add | 指定したクラスを追加 |
配列.forEach((element) => { | 配列の各要素に処理 |
addEventListener('keyup' | キーが離れたときにイベント発火 |
textContent | テキストの内容を取得/設定 |
配列.find | 条件に一致した要素を返す |
classList.remove | 指定したクラスを除去 |
classList.add | 指定したクラスを追加 |
addEventListener('keyup' | キーが離れたときにイベント発火 |
`${}` | テンプレート文字列 |
split | 文字列を分割(配列が返される) |
innerHTML | 要素内のHTMLを取得/設定 |
dispatchEvent(イベント) | イベントを発生させる |
new Event('イベント名') | イベントを生成する |
preventDefault | イベントのデフォルトの挙動をキャンセル |
... | 配列に変換(NodeList -> Array) |
配列.filter | 条件を満たす別配列を生成 |
reduce | 配列の各要素を左から右に処理 |
reduceRight | 配列の各要素を右から左に処理 |
addEventListener | |
removeEventListener | |
`${}` | テンプレート文字列 |
split | 文字列を分割(配列が返される) |
innerHTML | 要素内のHTMLを取得/設定 |
hasAttribute | 要素の属性があるかどうか(true/false) |
getAttribute | 要素の属性を取得 |
setAttribute | 要素の属性を設定 |
(参考)