【目標】2023年11月

自分は本当にだらしのない人間で、
何事かをやろうと決めた5分後には横道に逸れてしまい、やり遂げることができなくなってしまう。
そこで、月初にひと月分の目標を立ててみることにした。
ここに掲げておけばちょっとはやる気が出るんじゃないかという短絡的思考に基づいて。

アプリ開発】TODOリストのアプリを完成させる

Flutterでアプリ開発始めた当初から作り続けているアプリ。
未だに完成していない。こいつを完成させたい。
具体的には以下の状態まで持っていく。

  • 広告機能以外の全ての実装が完了している
  • DeployGateにアップロードしてテスト配布できる

ff14】暁月メインクエストをクリアする

まあこれは楽勝でしょう。

【ブログ】記事を整理&投稿する(最低3つ)

これも余裕。

まずはこんな感じだろうか。
月末に達成できたか否かのまとめ記事をまた投稿しようと思う。
反省文にならないことを祈るばかり。

【エラー】『No value was provided for the parameter 'appIdId'. No value was provided for the parameter 'provisioningProfileName'.』

Apple Developer Programの更新後にProvisioning Profileを更新しようとしたら、

No value was provided for the parameter 'appIdId'.
No value was provided for the parameter 'provisioningProfileName'.

上記のエラーダイアログが出て先に進めなかった。
ググっても日本語の情報に出会えなかったので、自分の場合の解決策を残しておく。


古いProfilesを削除して+ボタンで最初から作り直すと無事に登録できるよ!!!



こんな単純な解決策に辿り着くまでかなりの時間を浪費してしまいました。
どなたかの助けになれば幸いでござ候。

【Flutter】プロジェクト作成から実機デバッグまで

新しくアプリを作るので、次回参考にできるよう(ふんわりと)メモしときます。

実行環境

ターミナルからプロジェクト作成

cdコマンドでFlutterProjectsディレクトリに移動して実行。

% flutter create プロジェクト名 --org バンドルID

↑は必要最低限の情報のみ。詳しくはここ見てください。 delicateribs.hatenablog.com

プロジェクト名

プロジェクト(フォルダ)の名前。半角小文字、アンダースコア(_)が使える。

バンドルID

アプリの識別子。英数字(A-Z、a-z、0-9)、ハイフン(-)、ピリオド(.)が使える。
例えば組織のドメインがGyoza.com、アプリ名がUmaumaなら、
「com.Gyoza.Umauma」となる。

launch.jsonの作成

launch.jsonとは、VSCodeデバッグする際の設定ファイルらしい。最初にいじっとくと便利そう。
例えば複数の端末でいっぺんにデバッグしたい時とか?

  1. 赤枠のところをクリック。
  2. またクリック。
  3. こんな感じで自動で作ってくれる。これを書き換えます。

これくらいの情報をひとまず書いてみる。

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "プロジェクト名 (debug mode)",
            "request": "launch",
            "type": "dart",
            "flutterMode": "debug",
            "program": "lib/main.dart",
            "deviceId": "デバイスID",
        },
    ]
}

バイスID

ターミナルで↓を実行すると、デバイス名(iPhone (mobile)とか)の後ろに出てくる英数字のこと。

% flutter devices

他にも色々属性があるので、詳しくはここ見てください。 code.visualstudio.com

デバッグ実行

実機をPCに繋いで赤いところをクリックしたらデバッグ開始。あとはガツガツ作っていきましょう。

久々に書きながら作業してたけど、慣れないと時間かかるな…。
今後また書き足します。

【Flutter】プロジェクト作成後の初期設定【超個人的】

pubspec.yamlの掃除

後々編集するときに邪魔になるのでコメントを消します。

f:id:delicateribs:20211122191555p:plain

 

外部パッケージの導入

よく使うものは最初にまとめて導入しときます。

flutter_screenutil

画面サイズが異なるデバイス間で、UI(画面レイアウトやら文字サイズやら)を統一したいときに便利。サイズ値の後ろに「(文字サイズ).sp」「(高さ).h」などを記述するだけで勝手にリサイズしてくれる。

flutter_launcher_icons

イコン画像を簡単に設定できます。

flutter_native_splash

スプラッシュ画面を簡単に作成できます。(アプリのアイコン押した直後に表示される画面のこと)

 

なんちゃって(?)多言語対応

これやらないとTextFormField長押ししたときにエラーが出るので設定してます。

何の設定かよく分かってないので説明省略。

main.dart

f:id:delicateribs:20211122194339p:plain

pubspec.yaml

f:id:delicateribs:20211122195532p:plain

 

他に何か思いついたら追記します…

 

 

【Flutter】IPAファイル作成方法

下準備

$ flutter clean

buildフォルダを掃除しておきます。

いざ作成

$ flutter build ipa --release --export-options-plist="ios/ExportOptions.plist"

"ios/ExportOptions.plist"の箇所にはExportOptions.plistまでの階層を指定。

build>ios>ipaフォルダの中に「プロジェクト名.ipa」ってやつができたら成功。

f:id:delicateribs:20211122162635p:plain

 

普段DeployGateにアップするIPAファイルはこんな感じで作っとります。

ExportOptions.plistの作り方も残しておかねば。

 

 

【Flutter】プロジェクト作成方法

基本のコマンド

$ flutter create プロジェクト名

こいつを書けばとりあえず作成される。

 

オプション

使いそうな設定のみ紹介。基本のコマンドの後ろに追記する。

company domain

$ -–org ドメイン名

Androidのパッケージ名(iOSのバンドルID)として利用される。

description

$ –-description 説明文

pubspec.yamlのdescriptionやREADME.mdに記述される。

iOS ネイティブコードの言語

$ -i swift

swiftまたはobjcを指定する。デフォルトはObjective-C

Android ネイティブコードの言語

$ -a kotlin

kotlinまたはjavaを指定する。デフォルトはJava

 

コマンド例

$ flutter create test_app --org io.github.delicateribs -description A new Flutter app -i swift -a java