diff --git a/.github/workflows/build-app.yml b/.github/workflows/build-app.yml new file mode 100644 index 0000000..8caa2b9 --- /dev/null +++ b/.github/workflows/build-app.yml @@ -0,0 +1,70 @@ +name: Android Release +run-name: ${{ GITHUB.ACTOR }} is compiling an Android App 🚀 + +on: + workflow_dispatch: + push: + branches: + - main + paths: + - "lib/**" + +jobs: + + build_and_release_apk: + runs-on: ubuntu-latest + steps: + + - name: Checkout repository + uses: actions/checkout@v3 + + - name: Setup Java + uses: actions/setup-java@v3 + with: + distribution: "zulu" + java-version: "12.x" + cache: "gradle" + + - name: Setup Flutter + uses: subosito/flutter-action@v2 + with: + flutter-version: "3.0.0" + channel: "stable" + cache: true + + - name: Update Flutter version + run: flutter upgrade + + - name: Show Flutter version + run: flutter --version + + - name: Get depenencies + run: flutter pub get + + - name: Upgrade depenencies + run: flutter pub upgrade + + - name: Show outdated depenencies + run: flutter pub outdated + + - name: Start release build + run: flutter build apk + + - name: Upload APK as Artifact + uses: actions/upload-artifact@v3 + with: + name: Android APK + path: | + build/app/outputs/flutter-apk/app-release.apk + build/app/outputs/flutter-apk/app-release.sha1 + + - name: Upload APK as release + uses: "marvinpinto/action-automatic-releases@latest" + with: + repo_token: "${{ secrets.GITHUB_TOKEN }}" + automatic_release_tag: "latest" + prerelease: true + title: "Android APK" + files: | + build/app/outputs/flutter-apk/app-release.apk + build/app/outputs/flutter-apk/app-release.sha1 diff --git a/README.md b/README.md index 88db4d5..9f6886f 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,5 @@ +[![Android Release](https://github.com/oob-provisioning-for-iot/flutter_app_android/actions/workflows/build-app.yml/badge.svg)](https://github.com/oob-provisioning-for-iot/flutter_app_android/actions/workflows/build-app.yml) + # flutter_provisioning_for_iot ## Flutter Setup diff --git a/android/app/build.gradle b/android/app/build.gradle index 5fadab9..41f61fa 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -26,6 +26,9 @@ apply plugin: 'kotlin-android' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" android { + namespace 'com.hfu.cloud.provisioning' + testNamespace 'com.hfu.cloud.provisioning.test' + compileSdkVersion flutter.compileSdkVersion ndkVersion flutter.ndkVersion @@ -44,7 +47,7 @@ android { defaultConfig { // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). - applicationId "com.example.flutter_provisioning_for_iot" + applicationId "com.hfu.cloud.provisioning" // You can update the following values to match your application needs. // For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-build-configuration. minSdkVersion 19 diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index 479bf76..0441917 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -9,7 +9,7 @@ =2.18.0 <4.0.0" + flutter: ">=3.0.0" diff --git a/pubspec.yaml b/pubspec.yaml index 8bae8e8..fa1a577 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -20,7 +20,7 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev version: 1.0.0+1 environment: - sdk: '>=2.18.2 <3.0.0' + sdk: '>=2.17.0 <3.0.0' # Dependencies specify other packages that your package needs in order to work. # To automatically upgrade your package dependencies to the latest versions