内部テストで公開したアプリで通信できない
実機で実行しているとWebAPIなどHTTP通信が出来たのに、Google Play Consoleにて内部テストで公開したものが、Webからデータが取得できませんでした。通信が出来ないのは、権限を得ていないからだとか。設定したのは下記です。
「android/app/src/main/AndroidManifest.xml」に下記のタグを追加します。
applicationタグの外であればどこでもいいとは思いますが、私は2行目に追加しました。
<uses-permission android:name="android.permission.INTERNET" />
他サイトでは、main配下のファイルではなく・・・とか他にも記述が必要とかいろんな情報があったのですが、結局上記1行の追加だけで正常に通信ができるようになりました。
バージョンアップの方法は?-バージョンコードの更新方法
上記の小ネタで通信が出来なかったため、バージョンアップしたかったのですが、方法が全く分かりませんでしたので、方法を記載しておきます。
まず、上記小ネタを修正しただけでは、バージョン番号が同じであるため、下記のようなメッセージが出てアップロード時にエラーになってしまいます。
バージョン コード 1 はすでに使用されています。別のバージョン コードをお試しください。
色々ググってみても皆言っていることが異なっていて混乱しましたが、正解は「pubspec.yaml」でした。
4行目の「version」のところで、最初デフォルトでは「0.1.0」となっているはずです。
これのプラス以降「+」の右の数字がバージョン番号(versionCode)のことでした。
プラス以降の数字がない場合は、デフォルトで「1」となるようです。
ですから初めてバージョンアップする場合は、左側の数字はそのままでも良いのですが、「+2」としなければいけません。
で、毎回これを変更するのは面倒なので、ビルド時のコマンドパラメータにて変更できることがわかりました。ターミナルで下記のようにコマンドを叩きます。
flutter build appbundle --build-name=0.1.0 --build-number=2
「build-number」の数字をバージョンアップの度にインクリメントすればpubspec.yamlを更新してくれるようです。