facebook twitter hatena line email

「Flutter/開発環境構築」の版間の差分

提供: 初心者エンジニアの簡易メモ
移動: 案内検索
(Androidで64 ビット要件に準拠していませんが表示された場合)
(Androidのversion記述場所)
行111: 行111:
  
 
==Androidのversion記述場所==
 
==Androidのversion記述場所==
 +
pubspec.yaml
 +
version: 1.0.1+2
 +
 
android/local.properties
 
android/local.properties
 
  flutter.versionName=1.0.1
 
  flutter.versionName=1.0.1
 
  flutter.versionCode=2
 
  flutter.versionCode=2

2019年5月6日 (月) 11:15時点における版

AndoridStudioのインストール

https://developer.android.com/studio/install?hl=ja

AndoridStudioのプラグインインストール

AndoridStudioのFile/Preference/PluginsからFlutter、Dartを検索してインストール

プロジェクト作成

File/New Flutter Project がFile/New Projectの下に表示されるはずなので、そこから作成。

"New Flutter Project"が出ない場合は以下コマンドでプロジェクトを作ってAndoridStudioで開けば良い。

flutter create my_app
cd my_app
flutter run

ios実行準備

xcode-select --install
brew update
brew install --HEAD usbmuxd
brew link usbmuxd
brew install --HEAD libimobiledevice
brew install ideviceinstaller
brew install ios-deploy

android・ios実行

  • 上部中央に実行ボタンがあるので、そこから実行できる。
  • 接続したandroid・iPhoneの端末が表示される
  • 基本hotreloadで2秒で更新が反映される。

androidのapk作成&インストール

flutter build apk
flutter install

↑はリリースビルドで、リリースビルドのときはデバッグビルド(1秒程度)と比べて起動速度が速い。

build/app/outputs/apk/release/app-release.apk

iosのapk作成&インストール

flutter build ios
flutter install

androidパッケージ名変更

  • android/app/src/main/AndroidManifest.xml
  • android/app/build.gradle
  • android/app/src/profile/AndroidManifest.xml
  • android/app/src/debug/AndroidManifest.xml
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
   package="com.example1.hoge">
  • android/app/src/main/com/example1/hoge/MainActivity.java
package com.example1.hoge; 

2箇所変更とMainActivity.javaのdir変更

iosのbundleId変更

  • ios/Runner.xcodeprojを開いてbundleIdを変更する
  • podを使っていれば、コンソールでiosの下で、"pod update"を実行後ios/Runner.xcworkspaceを開いてbundleIdを変更する

androidのkeystore付きapk作成

  1. keystoreを作っておく
  2. android/key.properties を作成
storePassword=パスを入れる
keyPassword=パスを入れる
keyAlias=key
storeFile=keystoreのパスを入れる・・・key.jks
  1. android/app/build.gradle を追加する
+def keystorePropertiesFile = rootProject.file("key.properties")
+def keystoreProperties = new Properties()
+keystoreProperties.load(new FileInputStream(keystorePropertiesFile))

android {
  1. android/app/build.gradle の部分を修正
-buildTypes {
-    release {
-        // TODO: Add your own signing config for the release build.
-        // Signing with the debug keys for now, so `flutter run --release` works.
-        signingConfig signingConfigs.debug
-    }
-}
+signingConfigs {
+    release {
+        keyAlias keystoreProperties['keyAlias']
+        keyPassword keystoreProperties['keyPassword']
+        storeFile file(keystoreProperties['storeFile'])
+        storePassword keystoreProperties['storePassword']
+    }
+}
+buildTypes {
+    release {
+        signingConfig signingConfigs.release
+    }
+}

参考:https://qiita.com/rkowase/items/f1012ef0738791dd6084

Androidで64 ビット要件に準拠していませんが表示された場合

このリリースは Google Play の 64 ビット要件に準拠していません

flutter build apk --release --target-platform=android-arm64

もしくは、

build.gradle

buildTypes {
      release {
            ndk{
                   abiFilters "armeabi-v7a"
            }
       }
}

参考:https://github.com/flutter/flutter/issues/18494

Androidのversion記述場所

pubspec.yaml

version: 1.0.1+2

android/local.properties

flutter.versionName=1.0.1
flutter.versionCode=2