Gh action android (#1081)
* android n ios * set this branch gh actions * set this branch gh actions2 * set this branch gh actions3 * set this branch gh actions4 * set this branch gh actions4.1 * set this branch gh actions5 * made executable * ... * ...2 * ...3 * ...4 * ...5 * ...6 * ...7 * ...88 * ios test keys * ios test keys2 * changed some fluufychat stuff * reset activation * pic update * reverted integrate to run again * ios-build1 * ios-build2 * android space clearing * another attempt * another attempt * another attempt2 * another attempt3 * android downgrade * undo cleanup * remove cache * sdk version force? * sdk version force remove * r8 fix * material * material remove agian * reset gradle, up flutter * downgfrade to 21 * android ndk up agian * android ndk up agian2 * with disk spcae r4emove agian... * allow ios modules * allow ios modules2 * updated version to compile on ios * how baout this * ios generated files * removed exclude group --------- Co-authored-by: ggurdin <ggurdin@gmail.com> Co-authored-by: ggurdin <46800240+ggurdin@users.noreply.github.com>
This commit is contained in:
parent
d41dd35075
commit
609eff1100
28 changed files with 318 additions and 259 deletions
79
.github/workflows/build-ios.yml
vendored
Normal file
79
.github/workflows/build-ios.yml
vendored
Normal file
|
|
@ -0,0 +1,79 @@
|
|||
name: build-ios
|
||||
on:
|
||||
workflow_call:
|
||||
inputs:
|
||||
screenshot:
|
||||
type: string
|
||||
required: true
|
||||
ipa:
|
||||
description: 'Run IPA build'
|
||||
type: string
|
||||
required: true
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
screenshot:
|
||||
description: 'Run screenshot build'
|
||||
type: choice
|
||||
options: ['true', 'false']
|
||||
required: true
|
||||
ipa:
|
||||
description: 'Run IPA build'
|
||||
type: choice
|
||||
options: ['true', 'false']
|
||||
required: true
|
||||
|
||||
|
||||
jobs:
|
||||
build-ios:
|
||||
runs-on: macos-latest
|
||||
timeout-minutes: 20
|
||||
defaults:
|
||||
run:
|
||||
working-directory: ios
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- run: 'echo "$API_KEY" | base64 --decode > AuthKey.p8'
|
||||
shell: bash
|
||||
env:
|
||||
API_KEY: ${{ secrets.APP_STORE_CONNECT_API_KEY }}
|
||||
|
||||
- run: bundle install
|
||||
|
||||
- run: bundle exec fastlane versioning
|
||||
|
||||
- name: Flutter
|
||||
uses: subosito/flutter-action@v2
|
||||
with:
|
||||
cache: true
|
||||
cache-key: 'flutter-:os:-:channel:-:version:-:arch:-:hash:'
|
||||
cache-path: "${{ runner.tool_cache }}/flutter/:channel:-:version:-:arch:"
|
||||
- run: flutter build ios --simulator --target=integration_test/screenshot_test.dart
|
||||
if: ${{ inputs.screenshot == 'true' }}
|
||||
|
||||
- name: Archive integration ipa
|
||||
if: ${{ inputs.screenshot == 'true' }}
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: app-simulator-build
|
||||
path: build/ios/iphonesimulator/Runner.app
|
||||
if-no-files-found: error
|
||||
retention-days: 3
|
||||
|
||||
# Build ios Release
|
||||
- run: flutter build ios --release --config-only --no-codesign --target=lib/main.dart
|
||||
if: ${{ inputs.ipa == 'true' }}
|
||||
|
||||
- run: bundle exec fastlane build
|
||||
if: ${{ inputs.ipa == 'true' }}
|
||||
|
||||
- name: Archive ipa
|
||||
if: ${{ inputs.ipa == 'true' }}
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: Runner.ipa
|
||||
path: ios/Runner.ipa
|
||||
if-no-files-found: error
|
||||
retention-days: 3
|
||||
17
.github/workflows/integrate.yaml
vendored
17
.github/workflows/integrate.yaml
vendored
|
|
@ -28,7 +28,7 @@ jobs:
|
|||
- run: flutter analyze
|
||||
- run: flutter test
|
||||
|
||||
build_debug_apk:
|
||||
build_apk:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
|
@ -40,11 +40,18 @@ jobs:
|
|||
- uses: subosito/flutter-action@v2
|
||||
with:
|
||||
flutter-version: ${{ env.FLUTTER_VERSION }}
|
||||
cache: true
|
||||
cache: false
|
||||
- run: flutter pub get
|
||||
- name: Free Disk Space (Ubuntu)
|
||||
uses: jlumbroso/free-disk-space@main
|
||||
with:
|
||||
# this might remove tools that are actually needed,
|
||||
# if set to "true" but frees about 6 GB
|
||||
tool-cache: false
|
||||
android: false
|
||||
- run: flutter build apk --debug
|
||||
|
||||
build_debug_web:
|
||||
build_web:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
|
@ -52,7 +59,7 @@ jobs:
|
|||
- uses: subosito/flutter-action@v2
|
||||
with:
|
||||
flutter-version: ${{ env.FLUTTER_VERSION }}
|
||||
cache: true
|
||||
cache: false
|
||||
- run: flutter pub get
|
||||
- name: Prepare web
|
||||
run: ./scripts/prepare-web.sh
|
||||
|
|
@ -90,4 +97,4 @@ jobs:
|
|||
xcode-version: latest
|
||||
- run: brew install sqlcipher
|
||||
- run: flutter pub get
|
||||
- run: flutter build ios --no-codesign
|
||||
- run: flutter build ipa --no-codesign
|
||||
|
|
|
|||
59
.github/workflows/main_deploy.yaml
vendored
59
.github/workflows/main_deploy.yaml
vendored
|
|
@ -93,3 +93,62 @@ jobs:
|
|||
run: flutter pub get
|
||||
- name: Update sentry
|
||||
run: flutter packages pub run sentry_dart_plugin
|
||||
|
||||
deploy_playstore_internal:
|
||||
environment: staging
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- run: cat .github/workflows/versions.env >> $GITHUB_ENV
|
||||
- uses: actions/setup-java@v4
|
||||
with:
|
||||
java-version: ${{ env.JAVA_VERSION }}
|
||||
distribution: 'zulu'
|
||||
- uses: subosito/flutter-action@v2
|
||||
with:
|
||||
flutter-version: ${{ env.FLUTTER_VERSION }}
|
||||
cache: true
|
||||
- name: Set up Android SDK
|
||||
if: ${{ env.ACT }} # Only run on local act setups, as GitHub Actions provides the Android SDK on Ubuntu
|
||||
uses: android-actions/setup-android@v2
|
||||
- name: Set up Ruby
|
||||
uses: ruby/setup-ruby@v1
|
||||
with:
|
||||
ruby-version: '3.3'
|
||||
- name: Install Fastlane
|
||||
run: gem install fastlane -NV
|
||||
- name: Remove Emoji Font
|
||||
run: |
|
||||
rm -rf fonts/NotoEmoji
|
||||
yq -i 'del( .flutter.fonts[] | select(.family == "NotoEmoji") )' pubspec.yaml
|
||||
- run: flutter pub get
|
||||
- name: Prepare Android Release Build
|
||||
env:
|
||||
PLAY_STORE_UPLOAD_KEY: ${{ secrets.PLAY_STORE_UPLOAD_KEY }}
|
||||
PLAY_STORE_KEYSTORE_KEY_ALIAS: ${{ secrets.PLAY_STORE_KEYSTORE_KEY_ALIAS }}
|
||||
PLAY_STORE_KEYSTORE_STORE_PASSWORD: ${{ secrets.PLAY_STORE_KEYSTORE_STORE_PASSWORD }}
|
||||
PLAY_STORE_KEYSTORE_KEY_PASSWORD: ${{ secrets.PLAY_STORE_KEYSTORE_KEY_PASSWORD }}
|
||||
PLAY_STORE_CONFIG_JSON: ${{ secrets.PLAY_STORE_CONFIG_JSON }}
|
||||
run: ./scripts/prepare-android-release.sh
|
||||
- name: Build Android Release
|
||||
run: flutter build appbundle --target-platform android-arm,android-arm64,android-x64
|
||||
- name: Deploy Android Release
|
||||
run: |
|
||||
mkdir -p build/android
|
||||
cp build/app/outputs/bundle/release/app-release.aab build/android/
|
||||
cd android
|
||||
bundle install
|
||||
bundle update fastlane
|
||||
bundle exec fastlane deploy_internal_test
|
||||
if [[ $GITHUB_REF_NAME == rc* ]]; then
|
||||
bundle exec fastlane deploy_candidate
|
||||
else
|
||||
bundle exec fastlane deploy_release
|
||||
fi
|
||||
cd ..
|
||||
|
||||
deploy_ios_testflight: # stashed on old.yml
|
||||
environment: staging
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
116
.github/workflows/old.yml
vendored
116
.github/workflows/old.yml
vendored
|
|
@ -10,101 +10,35 @@ concurrency:
|
|||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
build_staging:
|
||||
runs-on: ubuntu-latest
|
||||
deploy_ios_internal:
|
||||
runs-on: macos-latest
|
||||
environment: staging
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- run: cat .github/workflows/versions.env >> $GITHUB_ENV
|
||||
- run: echo "$WEB_APP_ENV" > .env
|
||||
- uses: actions/checkout@v4
|
||||
- run: cat ../.github/workflows/versions.env >> $GITHUB_ENV
|
||||
|
||||
- name: Set up Flutter
|
||||
- name: Flutter
|
||||
uses: subosito/flutter-action@v2
|
||||
with:
|
||||
flutter-version: ${{ env.FLUTTER_VERSION }}
|
||||
cache: true
|
||||
cache-key: 'flutter-:os:-:channel:-:version:-:arch:-:hash:'
|
||||
cache-path: "${{ runner.tool_cache }}/flutter/:channel:-:version:-:arch:"
|
||||
|
||||
- name: Prepare web
|
||||
run: ./scripts/prepare-web.sh
|
||||
# Build ios Release
|
||||
- run: flutter build ios --release --config-only --no-codesign --target=lib/main.dart
|
||||
|
||||
- name: Build web
|
||||
run: ./scripts/build-web.sh
|
||||
|
||||
- name: Upload artifacts
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: web-artifact
|
||||
path: ./build/web
|
||||
|
||||
upload_sentry:
|
||||
runs-on: ubuntu-latest
|
||||
needs: build_staging
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- run: cat .github/workflows/versions.env >> $GITHUB_ENV
|
||||
- run: echo "$WEB_APP_ENV" > .env
|
||||
- name: Build web
|
||||
run: ./scripts/upload-sentry.sh
|
||||
|
||||
deploy_staging:
|
||||
runs-on: ubuntu-latest
|
||||
needs: build_staging
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- run: cat .github/workflows/versions.env >> $GITHUB_ENV
|
||||
- run: echo "$WEB_APP_ENV" > .env
|
||||
- name: Set up AWS CLI
|
||||
uses: aws-actions/configure-aws-credentials@v2
|
||||
with:
|
||||
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
||||
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
||||
aws-region: ${{ secrets.AWS_DEFAULT_REGION }}
|
||||
|
||||
- name: Download all workflow run artifacts
|
||||
uses: actions/download-artifact@v3
|
||||
|
||||
build_production:
|
||||
runs-on: ubuntu-latest
|
||||
environment: production
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- run: cat .github/workflows/versions.env >> $GITHUB_ENV
|
||||
- run: echo "$WEB_APP_ENV" > .env
|
||||
|
||||
- name: Set up Flutter
|
||||
uses: subosito/flutter-action@v2
|
||||
with:
|
||||
flutter-version: ${{ env.FLUTTER_VERSION }}
|
||||
|
||||
- name: Prepare web
|
||||
run: ./scripts/prepare-web.sh
|
||||
|
||||
- name: Build web
|
||||
run: ./scripts/build-web.sh
|
||||
|
||||
- name: Upload artifacts
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: web-artifact
|
||||
path: ./build/web
|
||||
|
||||
deploy_production:
|
||||
environment: production
|
||||
runs-on: ubuntu-latest
|
||||
needs: build_production
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- run: cat .github/workflows/versions.env >> $GITHUB_ENV
|
||||
- run: echo "$WEB_APP_ENV" > .env
|
||||
|
||||
- name: Download all workflow run artifacts
|
||||
uses: actions/download-artifact@v3
|
||||
|
||||
- name: Set up AWS CLI
|
||||
uses: aws-actions/configure-aws-credentials@v2
|
||||
with:
|
||||
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
||||
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
||||
aws-region: ${{ secrets.AWS_DEFAULT_REGION }}
|
||||
- name: Deploy ios
|
||||
run: |
|
||||
mkdir -p build/ios
|
||||
cp build/app/outputs/bundle/release/app-release.aab build/ios/
|
||||
cd ios
|
||||
bundle install
|
||||
bundle update fastlane
|
||||
cd ..
|
||||
- name: Execute fastlane signing
|
||||
env:
|
||||
APP_STORE_CONNECT_API_KEY_ISSUER_ID: ${{ secrets.APP_STORE_CONNECT_API_KEY_ISSUER_ID }}
|
||||
APP_STORE_CONNECT_API_KEY_KEY_ID: ${{ secrets.APP_STORE_CONNECT_API_KEY_KEY_ID }}
|
||||
APP_STORE_CONNECT_API_KEY_IS_KEY_CONTENT_BASE64: ${{ secrets.APP_STORE_CONNECT_API_KEY_IS_KEY_CONTENT_BASE64 }}
|
||||
APP_STORE_CONNECT_API_KEY_KEY: ${{ secrets.APP_STORE_CONNECT_API_KEY_KEY }}
|
||||
run: bundle exec fastlane ios beta
|
||||
8
.github/workflows/release.yaml
vendored
8
.github/workflows/release.yaml
vendored
|
|
@ -102,7 +102,7 @@ jobs:
|
|||
with:
|
||||
upload_url: ${{ github.event.release.upload_url }}
|
||||
asset_path: build/app/outputs/apk/release/app-release.apk
|
||||
asset_name: fluffychat.apk
|
||||
asset_name: pangeachat.apk
|
||||
asset_content_type: application/vnd.android.package-archive
|
||||
|
||||
build_linux:
|
||||
|
|
@ -122,15 +122,15 @@ jobs:
|
|||
- run: ./flutter/bin/flutter pub get
|
||||
- run: ./flutter/bin/flutter build linux --target-platform linux-${{ matrix.arch }}
|
||||
- name: Create archive
|
||||
run: tar -czf fluffychat-linux-${{ matrix.arch }}.tar.gz -C build/linux/${{ matrix.arch }}/release/bundle/ .
|
||||
run: tar -czf pangeachat-linux-${{ matrix.arch }}.tar.gz -C build/linux/${{ matrix.arch }}/release/bundle/ .
|
||||
- name: Upload to release
|
||||
uses: actions/upload-release-asset@v1
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.PAGES_DEPLOY_TOKEN }}
|
||||
with:
|
||||
upload_url: ${{ github.event.release.upload_url }}
|
||||
asset_path: fluffychat-linux-${{ matrix.arch }}.tar.gz
|
||||
asset_name: fluffychat-linux-${{ matrix.arch }}.tar.gz
|
||||
asset_path: pangeachat-linux-${{ matrix.arch }}.tar.gz
|
||||
asset_name: pangeachat-linux-${{ matrix.arch }}.tar.gz
|
||||
asset_content_type: application/gzip
|
||||
|
||||
deploy_playstore:
|
||||
|
|
|
|||
39
.github/workflows/upload-release-ios.yml
vendored
Normal file
39
.github/workflows/upload-release-ios.yml
vendored
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
name: upload-release-ios
|
||||
on:
|
||||
workflow_call:
|
||||
inputs:
|
||||
new_release:
|
||||
required: true
|
||||
type: string
|
||||
description: "The new release version number"
|
||||
new_release_notes:
|
||||
required: true
|
||||
type: string
|
||||
description: "The release notes for the new release"
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: macos-latest
|
||||
timeout-minutes: 10
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Download app
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: Runner.ipa
|
||||
path: ios/
|
||||
|
||||
- run: 'echo "$API_KEY" | base64 --decode > AuthKey.p8'
|
||||
shell: bash
|
||||
env:
|
||||
API_KEY: ${{ secrets.APP_STORE_CONNECT_API_KEY }}
|
||||
|
||||
- run: bundle install
|
||||
|
||||
- run: bundle exec fastlane upload_testflight
|
||||
env:
|
||||
RELEASE_NOTES: ${{ inputs.new_release_notes }}
|
||||
- run: bundle exec fastlane upload_metadata_app_store
|
||||
4
.gitignore
vendored
4
.gitignore
vendored
|
|
@ -11,6 +11,10 @@
|
|||
.history
|
||||
.svn/
|
||||
prime
|
||||
# act; local github actions
|
||||
*.secrets
|
||||
# Android keys file
|
||||
keys.json
|
||||
!/public/.env
|
||||
*.env.local_choreo
|
||||
*.env.prod
|
||||
|
|
|
|||
|
|
@ -30,6 +30,8 @@ if (keystorePropertiesFile.exists()) {
|
|||
}
|
||||
|
||||
android {
|
||||
ndkVersion = "25.1.8937393"
|
||||
namespace "com.talktolearn.chat"
|
||||
compileSdkVersion 34
|
||||
|
||||
sourceSets {
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@ platform :android do
|
|||
config = File.read("./pubspec.yaml")
|
||||
version_name = config.match(re).captures
|
||||
|
||||
subst = "version: #{version_name[0]}+#{last_version+2}"
|
||||
subst = "version: #{version_name[0]}+#{last_version+1}"
|
||||
|
||||
result = config.gsub(re, subst)
|
||||
|
||||
|
|
|
|||
|
|
@ -1,68 +0,0 @@
|
|||
FluffyChat 1.6.0 features a lot of bug fixes and improvements. The code base has been
|
||||
simplified and the drawer on the chat list page got a come-back. Some new features like
|
||||
the space hierarchy and session dump have been implemented.
|
||||
|
||||
- feat: Added monochrome entry for themed icon support in Android 13 (James Reilly)
|
||||
- feat: Display timeline of messages in android notification (Christian Pauly)
|
||||
- feat: Emoji related fixes (TheOneWithTheBraid)
|
||||
- feat: Implement deleting pushers in app (Christian Pauly)
|
||||
- feat: New material 3 design (Christian Pauly)
|
||||
- feat: Redesign bootsstrap and offer secure storage support (Christian Pauly)
|
||||
- feat: Send multiple images at once (Christian Pauly)
|
||||
- feat: implement session dump (TheOneWithTheBraid)
|
||||
- feat: implement space hierarchy (TheOneWithTheBraid)
|
||||
- feat: introduce extended integration tests (TheOneWithTheBraid)
|
||||
- feat: libhandy integration (TheOneWithTheBraid)
|
||||
- fix: Clearing push triggered when only one room got seen (Christian Pauly)
|
||||
- fix: Dont display loading dialog when adding reaction (Christian Pauly)
|
||||
- fix: Follow up for spaces hierarchy (TheOneWithTheBraid)
|
||||
- fix: Missing null checks in chat details view (Christian Pauly)
|
||||
- fix: Non FCM Android builds crash on start (Christian Pauly)
|
||||
- fix: Permission chooser dialog on iOS (Christian Pauly)
|
||||
- fix: Set avatar on only single action available (Christian Pauly)
|
||||
- fix: Sharing on iOS and iPad (Christian Pauly)
|
||||
- fix: Unread bubble is invisible in dark mode (Christian Pauly)
|
||||
- fix: appimage builds (TheOneWithTheBraid)
|
||||
- fix: only use custom http client on android (Jayesh Nirve)
|
||||
- fix: pass isrg cert to http client (Jayesh Nirve)
|
||||
- refactor: Chat view (Christian Pauly)
|
||||
- refactor: Encryption button (Christian Pauly)
|
||||
- refactor: Remove duplicated imports (Christian Pauly)
|
||||
- refactor: Remove legacy store (Christian Pauly)
|
||||
- refactor: Remove presence status feature (Christian Pauly)
|
||||
- refactor: Simplify MxcImage and replace CachedNetworkImage (Christian Pauly)
|
||||
- refactor: Switch to Hive Collections DB (Christian Pauly)
|
||||
- refactor: move start chat FAB to implementation file (TheOneWithTheBraid)
|
||||
- Translated using Weblate (Catalan) (Alfonso Montero López)
|
||||
- Translated using Weblate (Catalan) (Auri B.P)
|
||||
- Translated using Weblate (Chinese (Simplified)) (Eric)
|
||||
- Translated using Weblate (Croatian) (Milo Ivir)
|
||||
- Translated using Weblate (Dutch) (Jelv)
|
||||
- Translated using Weblate (English) (Raatty)
|
||||
- Translated using Weblate (Estonian) (Priit Jõerüüt)
|
||||
- Translated using Weblate (Finnish) (Aminda Suomalainen)
|
||||
- Translated using Weblate (Galician) (Xosé M)
|
||||
- Translated using Weblate (Indonesian) (Linerly)
|
||||
- Translated using Weblate (Persian) (Amir Hossein Maher)
|
||||
- Translated using Weblate (Polish) (Przemysław Romanik)
|
||||
- Translated using Weblate (Russian) (Nikita Epifanov)
|
||||
- Translated using Weblate (Turkish) (Oğuz Ersen)
|
||||
- Translated using Weblate (Ukrainian) (Ihor Hordiichuk)
|
||||
- chore: Add border to avatars (Christian Pauly)
|
||||
- chore: Add fancy hero animations (Christian Pauly)
|
||||
- chore: Adjust appbar design (Christian Pauly)
|
||||
- chore: Adjust design (Christian Pauly)
|
||||
- chore: Adjust search bar design (Christian Pauly)
|
||||
- chore: Always display header elevation in chat (Christian Pauly)
|
||||
- chore: Design follow up fixes (Christian Pauly)
|
||||
- chore: Design follow up fixes (Christian Pauly)
|
||||
- chore: Disable integration tests without runners (Krille Fear)
|
||||
- chore: Enhance invitiation UX (Christian Pauly)
|
||||
- chore: Make push helper more fail safe (Christian Pauly)
|
||||
- chore: Make push helper more stable (Christian Pauly)
|
||||
- chore: Minor design improvements (Christian Pauly)
|
||||
- chore: Pinned events design (Christian Pauly)
|
||||
- chore: Remove permission handler dependency and increase compileSdkVersion (Christian Pauly)
|
||||
- chore: Switch to flutter 3.0.5 (Krille Fear)
|
||||
- chore: Update SDK (Christian Pauly)
|
||||
- chore: remove snapping sheet (TheOneWithTheBraid)
|
||||
|
|
@ -1 +0,0 @@
|
|||
Check out https://gitlab.com/ChristianPauly/fluffychat-flutter/-/blob/main/CHANGELOG.md for the changelog.
|
||||
|
|
@ -1,32 +1 @@
|
|||
FluffyChat is an open, nonprofit and cute Matrix messenger app for Ubuntu Touch, Android and iOS.
|
||||
|
||||
Open
|
||||
Opensource and open development where everyone can join.
|
||||
|
||||
Nonprofit
|
||||
FluffyChat is donation funded.
|
||||
|
||||
Cute ♥
|
||||
Cute design and many theme settings including a dark mode.
|
||||
|
||||
One-to-one and group chats
|
||||
Unlimited groups and direct chats.
|
||||
|
||||
Easy
|
||||
FluffyChat is made as simple to use as possible.
|
||||
|
||||
Free
|
||||
Free to use for everyone without ads.
|
||||
|
||||
Decentralized
|
||||
There is no "FluffyChat server" you are forced to use. Use the server you find trustworthy or host your own.
|
||||
|
||||
Compatible
|
||||
Compatible with Element, Fractal, Nheko and all Matrix messengers.
|
||||
|
||||
|
||||
FluffyChat comes with a dream
|
||||
|
||||
Imagine a world where everyone can choose the messenger they like and is still able to chat with all of their friends.
|
||||
A world where there are no companies spying on you when you send selfies to friends and your loved.
|
||||
And a world where apps are made for fluffyness and not for profit. ♥
|
||||
Real conversation is the best way to learn a language, and students don't need years of study before they do it. Even if they are just beginning, with Pangea Chat they can start using their new language from day one!
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 233 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 32 KiB After Width: | Height: | Size: 42 KiB |
|
|
@ -1 +1 @@
|
|||
Chat with your friends with FluffyChat.
|
||||
Learn a language while texting your friends!
|
||||
|
|
@ -1 +1 @@
|
|||
FluffyChat
|
||||
PangeaChat
|
||||
|
|
@ -16,10 +16,22 @@ pluginManagement {
|
|||
}
|
||||
}
|
||||
|
||||
buildscript {
|
||||
repositories {
|
||||
mavenCentral()
|
||||
maven {
|
||||
url = uri("https://storage.googleapis.com/r8-releases/raw")
|
||||
}
|
||||
}
|
||||
dependencies {
|
||||
classpath("com.android.tools:r8:8.2.24")
|
||||
}
|
||||
}
|
||||
|
||||
plugins {
|
||||
id "dev.flutter.flutter-plugin-loader" version "1.0.0"
|
||||
id "com.android.application" version "7.1.2" apply false
|
||||
id "org.jetbrains.kotlin.android" version "1.8.0" apply false
|
||||
id "com.android.application" version "7.1.3" apply false
|
||||
id "org.jetbrains.kotlin.android" version "2.0.21" apply false
|
||||
// id "com.google.gms.google-services" version "4.3.8" apply false
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -202,4 +202,4 @@ DEPENDENCIES
|
|||
fastlane
|
||||
|
||||
BUNDLED WITH
|
||||
2.1.4
|
||||
2.1.4
|
||||
|
|
@ -1,6 +1,5 @@
|
|||
# Uncomment this line to define a global platform for your project
|
||||
platform :ios, '13.0'
|
||||
|
||||
platform :ios, '16.0'
|
||||
# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
|
||||
ENV['COCOAPODS_DISABLE_STATS'] = 'true'
|
||||
|
||||
|
|
@ -54,6 +53,7 @@ post_install do |installer|
|
|||
# see https://github.com/flutter-webrtc/flutter-webrtc/issues/1054
|
||||
config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '11.0'
|
||||
config.build_settings["EXCLUDED_ARCHS[sdk=iphonesimulator*]"] = 'arm64 i386'
|
||||
config.build_settings["CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES"] = 'YES'
|
||||
|
||||
config.build_settings['GCC_PREPROCESSOR_DEFINITIONS'] ||= [
|
||||
'$(inherited)',
|
||||
|
|
|
|||
|
|
@ -8,13 +8,13 @@
|
|||
|
||||
/* Begin PBXBuildFile section */
|
||||
1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; };
|
||||
18EB8101724ECEB31DC90D37 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4823A1A443F8115651A6C0E8 /* Pods_Runner.framework */; };
|
||||
3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; };
|
||||
609046320A2D7D2B0D36583B /* Pods_FluffyChat_Share.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C9EB6E6475A19949A37A2634 /* Pods_FluffyChat_Share.framework */; };
|
||||
74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; };
|
||||
97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; };
|
||||
97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; };
|
||||
97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; };
|
||||
AB0F2865DE230DE37373E0E0 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 50DEFC207B70632D9C56ED78 /* Pods_Runner.framework */; };
|
||||
C1005C45261071B5002F4F32 /* ShareViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = C1005C44261071B5002F4F32 /* ShareViewController.swift */; };
|
||||
C1005C48261071B5002F4F32 /* MainInterface.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = C1005C46261071B5002F4F32 /* MainInterface.storyboard */; };
|
||||
C1005C4C261071B5002F4F32 /* FluffyChat Share.appex in Embed App Extensions */ = {isa = PBXBuildFile; fileRef = C1005C42261071B5002F4F32 /* FluffyChat Share.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; };
|
||||
|
|
@ -65,7 +65,7 @@
|
|||
58F7B95D036AD8E67B27588D /* Pods-FluffyChat Share.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-FluffyChat Share.profile.xcconfig"; path = "Target Support Files/Pods-FluffyChat Share/Pods-FluffyChat Share.profile.xcconfig"; sourceTree = "<group>"; };
|
||||
74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = "<group>"; };
|
||||
74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
|
||||
76737C9A857D5FD6D2634A3F /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = "<group>"; };
|
||||
759F206BF204861B5B71F335 /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = "<group>"; };
|
||||
7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = "<group>"; };
|
||||
9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = "<group>"; };
|
||||
9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = "<group>"; };
|
||||
|
|
@ -74,7 +74,6 @@
|
|||
97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
|
||||
97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
|
||||
97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||
9DB2F3524376810E74C799A8 /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = "<group>"; };
|
||||
C1005C42261071B5002F4F32 /* FluffyChat Share.appex */ = {isa = PBXFileReference; explicitFileType = "wrapper.app-extension"; includeInIndex = 0; path = "FluffyChat Share.appex"; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
C1005C44261071B5002F4F32 /* ShareViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ShareViewController.swift; sourceTree = "<group>"; };
|
||||
C1005C47261071B5002F4F32 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/MainInterface.storyboard; sourceTree = "<group>"; };
|
||||
|
|
@ -93,7 +92,7 @@
|
|||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
AB0F2865DE230DE37373E0E0 /* Pods_Runner.framework in Frameworks */,
|
||||
18EB8101724ECEB31DC90D37 /* Pods_Runner.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
|
|
@ -136,7 +135,7 @@
|
|||
C1005C43261071B5002F4F32 /* FluffyChat Share */,
|
||||
97C146EF1CF9000F007C117D /* Products */,
|
||||
E89DCAC000D371640E94E65B /* Pods */,
|
||||
075EE1BE25359E34308E0B78 /* Frameworks */,
|
||||
E4B51FC6310E8231ADAAC605 /* Frameworks */,
|
||||
);
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
|
|
@ -178,6 +177,14 @@
|
|||
path = "FluffyChat Share";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
E4B51FC6310E8231ADAAC605 /* Frameworks */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
4823A1A443F8115651A6C0E8 /* Pods_Runner.framework */,
|
||||
);
|
||||
name = Frameworks;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
E89DCAC000D371640E94E65B /* Pods */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
|
|
@ -198,7 +205,7 @@
|
|||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */;
|
||||
buildPhases = (
|
||||
8C9CCA7C5C45651F90C7BFDD /* [CP] Check Pods Manifest.lock */,
|
||||
57BA887B93F55975BC09DE22 /* [CP] Check Pods Manifest.lock */,
|
||||
9740EEB61CF901F6004384FC /* Run Script */,
|
||||
97C146EA1CF9000F007C117D /* Sources */,
|
||||
97C146EB1CF9000F007C117D /* Frameworks */,
|
||||
|
|
@ -300,21 +307,21 @@
|
|||
/* End PBXResourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXShellScriptBuildPhase section */
|
||||
064CBD7CE0D4CD6850C6880A /* [CP] Copy Pods Resources */ = {
|
||||
1060C2E30AD33D0478B4AC6F /* [CP] Embed Pods Frameworks */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
inputFileListPaths = (
|
||||
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-input-files.xcfilelist",
|
||||
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist",
|
||||
);
|
||||
name = "[CP] Copy Pods Resources";
|
||||
name = "[CP] Embed Pods Frameworks";
|
||||
outputFileListPaths = (
|
||||
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-output-files.xcfilelist",
|
||||
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist",
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources.sh\"\n";
|
||||
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n";
|
||||
showEnvVarsInLog = 0;
|
||||
};
|
||||
3B06AD1E1E4923F5004D2608 /* Thin Binary */ = {
|
||||
|
|
@ -355,7 +362,7 @@
|
|||
shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
|
||||
showEnvVarsInLog = 0;
|
||||
};
|
||||
8C9CCA7C5C45651F90C7BFDD /* [CP] Check Pods Manifest.lock */ = {
|
||||
57BA887B93F55975BC09DE22 /* [CP] Check Pods Manifest.lock */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
|
|
@ -392,21 +399,21 @@
|
|||
shellPath = /bin/sh;
|
||||
shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build\n";
|
||||
};
|
||||
F9C8EE392B9AB471149C306E /* [CP] Embed Pods Frameworks */ = {
|
||||
AC8E42A36E415621723720E8 /* [CP] Copy Pods Resources */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
inputFileListPaths = (
|
||||
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist",
|
||||
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-input-files.xcfilelist",
|
||||
);
|
||||
name = "[CP] Embed Pods Frameworks";
|
||||
name = "[CP] Copy Pods Resources";
|
||||
outputFileListPaths = (
|
||||
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist",
|
||||
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-output-files.xcfilelist",
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n";
|
||||
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources.sh\"\n";
|
||||
showEnvVarsInLog = 0;
|
||||
};
|
||||
/* End PBXShellScriptBuildPhase section */
|
||||
|
|
@ -472,6 +479,7 @@
|
|||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
CLANG_ANALYZER_NONNULL = YES;
|
||||
CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES = YES;
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
||||
CLANG_CXX_LIBRARY = "libc++";
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
app_identifier("im.fluffychat.app") # The bundle identifier of your app
|
||||
apple_id("christian-kussowski@posteo.de") # Your Apple email address
|
||||
app_identifier("com.talktolearn.chat") # The bundle identifier of your app
|
||||
apple_id("wcjord@email.wm.edu") # Your Apple email address
|
||||
|
||||
itc_team_id("122628977") # App Store Connect Team ID
|
||||
team_id("4NXF6Z997G") # Developer Portal Team ID
|
||||
itc_team_id("118720606") # App Store Connect Team ID
|
||||
team_id("PJ8L5H7L7H") # Developer Portal Team ID
|
||||
|
||||
# For more information about the Appfile, see:
|
||||
# https://docs.fastlane.tools/advanced/#appfile
|
||||
|
|
|
|||
|
|
@ -18,6 +18,16 @@ default_platform(:ios)
|
|||
platform :ios do
|
||||
desc "Push a new beta build to TestFlight"
|
||||
lane :beta do
|
||||
api_key = app_store_connect_api_key(
|
||||
key_id: ENV["APP_STORE_CONNECT_API_KEY_KEY_ID"],
|
||||
issuer_id: ENV["APP_STORE_CONNECT_API_KEY_ISSUER_ID"],
|
||||
key_content: ENV["APP_STORE_CONNECT_API_KEY_KEY"],
|
||||
is_key_content_base64: ENV["APP_STORE_CONNECT_API_KEY_IS_KEY_CONTENT_BASE64"],
|
||||
duration: 500, # maximum 1200
|
||||
in_house: false # optional but may be required if using match/sigh
|
||||
)
|
||||
|
||||
# TODO: latest_testflight_build_number Not working
|
||||
increment_build_number(
|
||||
xcodeproj: "Runner.xcodeproj",
|
||||
build_number: latest_testflight_build_number + 1
|
||||
|
|
@ -28,9 +38,10 @@ platform :ios do
|
|||
increment_version_number(version_number: version_name)
|
||||
build_app(workspace: "Runner.xcworkspace", scheme: "Runner")
|
||||
upload_to_testflight(
|
||||
ipa: "../build/ios/ipa/pangeachat.ipa", # Verify location
|
||||
distribute_external: true,
|
||||
groups: "FluffyChat Betatest",
|
||||
changelog: "This is a release candidate for FluffyChat. Please test if the app is overall in a good condition before we push this to production.",
|
||||
groups: "App Store Connect Users",
|
||||
changelog: "This is a release candidate for PangeaChat. Please test if the app is overall in a good condition before we push this to production.",
|
||||
)
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -1,37 +1,43 @@
|
|||
fastlane documentation
|
||||
================
|
||||
----
|
||||
|
||||
# Installation
|
||||
|
||||
Make sure you have the latest version of the Xcode command line tools installed:
|
||||
|
||||
```
|
||||
```sh
|
||||
xcode-select --install
|
||||
```
|
||||
|
||||
Install _fastlane_ using
|
||||
```
|
||||
[sudo] gem install fastlane -NV
|
||||
```
|
||||
or alternatively using `brew install fastlane`
|
||||
For _fastlane_ installation instructions, see [Installing _fastlane_](https://docs.fastlane.tools/#installing-fastlane)
|
||||
|
||||
# Available Actions
|
||||
|
||||
### release
|
||||
|
||||
```sh
|
||||
[bundle exec] fastlane release
|
||||
```
|
||||
fastlane release
|
||||
```
|
||||
|
||||
|
||||
|
||||
----
|
||||
|
||||
|
||||
## iOS
|
||||
|
||||
### ios beta
|
||||
|
||||
```sh
|
||||
[bundle exec] fastlane ios beta
|
||||
```
|
||||
fastlane ios beta
|
||||
```
|
||||
|
||||
Push a new beta build to TestFlight
|
||||
|
||||
----
|
||||
|
||||
This README.md is auto-generated and will be re-generated every time [fastlane](https://fastlane.tools) is run.
|
||||
More information about fastlane can be found on [fastlane.tools](https://fastlane.tools).
|
||||
The documentation of fastlane can be found on [docs.fastlane.tools](https://docs.fastlane.tools).
|
||||
This README.md is auto-generated and will be re-generated every time [_fastlane_](https://fastlane.tools) is run.
|
||||
|
||||
More information about _fastlane_ can be found on [fastlane.tools](https://fastlane.tools).
|
||||
|
||||
The documentation of _fastlane_ can be found on [docs.fastlane.tools](https://docs.fastlane.tools).
|
||||
|
|
|
|||
|
|
@ -39,13 +39,13 @@ def getRootProjectExtOrCoreProperty(name, firebaseCoreProject) {
|
|||
}
|
||||
|
||||
android {
|
||||
compileSdkVersion 30
|
||||
compileSdkVersion 34
|
||||
|
||||
sourceSets {
|
||||
main.java.srcDirs += 'src/main/kotlin'
|
||||
}
|
||||
defaultConfig {
|
||||
minSdkVersion 16
|
||||
minSdkVersion 21
|
||||
}
|
||||
lintOptions {
|
||||
disable 'InvalidPackage'
|
||||
|
|
|
|||
|
|
@ -604,10 +604,10 @@ packages:
|
|||
dependency: "direct main"
|
||||
description:
|
||||
name: firebase_messaging
|
||||
sha256: "2d0ea2234ce46030eda2e6922611115ce603adc614ebd8c00e7db06a8929efbb"
|
||||
sha256: "4d0968ecb860d7baa15a6e2af3469ec5b0d959e51c59ce84a52b0f7632a4aa5a"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "15.0.1"
|
||||
version: "15.1.5"
|
||||
firebase_messaging_platform_interface:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
|
|||
|
|
@ -118,7 +118,7 @@ dependencies:
|
|||
fl_chart: ^0.67.0
|
||||
firebase_analytics: ^11.0.1
|
||||
firebase_core: ^3.1.0
|
||||
firebase_messaging: ^15.0.1
|
||||
firebase_messaging: ^15.1.5
|
||||
flutter_dotenv: ^5.1.0
|
||||
fcm_shared_isolate:
|
||||
path: pangea_packages/fcm_shared_isolate
|
||||
|
|
|
|||
|
|
@ -1,11 +1,11 @@
|
|||
#!/usr/bin/env bash
|
||||
cd android
|
||||
echo $FDROID_KEY | base64 --decode --ignore-garbage > key.jks
|
||||
echo "storePassword=${FDROID_KEY_PASS}" >> key.properties
|
||||
echo "keyPassword=${FDROID_KEY_PASS}" >> key.properties
|
||||
echo "keyAlias=key" >> key.properties
|
||||
echo $PLAY_STORE_UPLOAD_KEY | base64 --decode > key.jks
|
||||
echo "storePassword=${PLAY_STORE_KEYSTORE_STORE_PASSWORD}" >> key.properties
|
||||
echo "keyPassword=${PLAY_STORE_KEYSTORE_KEY_PASSWORD}" >> key.properties
|
||||
echo "keyAlias=${PLAY_STORE_KEYSTORE_KEY_ALIAS}" >> key.properties
|
||||
echo "storeFile=../key.jks" >> key.properties
|
||||
echo $PLAYSTORE_DEPLOY_KEY >> keys.json
|
||||
echo $PLAY_STORE_CONFIG_JSON | base64 --decode > keys.json
|
||||
ls | grep key
|
||||
bundle install
|
||||
bundle update fastlane
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
#!/bin/sh -ve
|
||||
git apply ./scripts/enable-android-google-services.patch
|
||||
# git apply ./scripts/enable-android-google-services.patch
|
||||
rm -rf fonts/NotoEmoji
|
||||
yq -i 'del( .flutter.fonts[] | select(.family == "NotoEmoji") )' pubspec.yaml
|
||||
flutter clean
|
||||
|
|
@ -7,8 +7,6 @@ flutter pub get
|
|||
cd ios
|
||||
rm -rf Pods
|
||||
rm -f Podfile.lock
|
||||
arch -x86_64 pod install
|
||||
arch -x86_64 pod update
|
||||
cd ..
|
||||
flutter build ios --release
|
||||
cd ios
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue