test_t_55_memo

メモ書きです!

【インフラ】AWS

 

【用語】

WEBサーバー
アプリとの通信

APサーバー
管理画面を提供します。日時のバッチ処理など

RDS
AWSのデータベースクラウドサービス

Amazon Elastic Cache
AWSのセッションストレージサービス
各サーバーのセッションデータを保持

Amazon ELB
AWSロードバランサーサービス
各種サーバーにHTTPリクエストを振り分け

Amazon S3
画像情報を補完するAWSのサービス

Amazon SES
AWSのメール配信サービス

 

 

【アプリ】ビルド(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アカウントの同期ができていると選択できるのかも(この場合はダウンロード不要)

f:id:test_t_55:20210119100338p:plain


アーカイブ

xcode(対象のワークスペースから)

Product > Archive

 

Product を選択後、optionを押したままにすると

Archiveが表示されます

f:id:test_t_55:20210119100443p:plain



 

Archive (左側)を選択、

Archive(右下)を押す

f:id:test_t_55:20201003160926p:plain

 

添付のようなメッセージが表示された場合

自分の端末のパスワードを入力して継続

(常に許可で、今後は表示されなくなります)

f:id:test_t_55:20201003160950p:plain


Distribute Appを押す

f:id:test_t_55:20201003161024p:plain


配信(テスター)する場合は

Ad Hoc → Next

 

本番をApple Develoverにリリース申請する場合は

App Store Connect → Next

f:id:test_t_55:20201003161046p:plain


None > Next

f:id:test_t_55:20201003161104p:plain

 

Select Profile > ここで対象のプロビジョニングファイルを選択(※) > Next

ステージング環境の配信する場合は

Import Profile… > hogehogepstg_adhoc を選択

f:id:test_t_55:20201003161135p:plain

 

Exportされるとフォルダに

iPaファイルが生成されるので、完成です!

f:id:test_t_55:20201003161207p:plain


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が必要

f:id:test_t_55:20201003151134p:plain

(参考)

https://www.l08084.com/entry/2018/05/19/170436#iTunes%E3%81%A7%E8%AA%BF%E3%81%B9%E3%82%8B%E6%96%B9%E6%B3%95

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

 

 

 

【CSS】まとめ

cursor: pointer リンクカーソル
border-radius コーナーの角丸
--xxx CSS変数として使える。xxxは任意の名前でOK
calc()関数 CSS のプロパティ値を指定する際に計算を行うことができます
background-image: linear-gradient 線形グラデーションを指定。
linear-gradient(..); グラデーションの角度または方向, 開始色, 途中色, 終了色
--xxx CSS変数として使える。xxxは任意の名前でOK
li { list-style: none; } マーカー表示なし

【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 要素の属性を設定

 

 

base64エンコード・デコード

(参考)

qiita.com

 

 

 

【Vim】コマンド

i 入力モード
Esc 通常モード
:w 保存
:q 終了
yy コピー(1行)
p ペースト(貼付)
x 削除(1文字)
dd 削除(1行)
:wq 保存して終了(変更なくても保存されます)
:q! 保存せずに強制終了
dG カーソル位置から最下部まで削除
u 操作を1つ戻す
ctrl + r 取消を取消す
数字G 指定した数字の行へ
:数字 指定した数字の行へ
G ページの一番下へ
gg ページの一番上へ
ggVG 全選択
ggVGy ファイル全体のコピー
ggVG= ファイル全体のインデントを揃える
:set number 行番号の表示