[TMP] Automatic upstream merge preparation

Change-Id: I67e5e0542cc212da7118d365b1e164eb8b9d4a88
This commit is contained in:
SpiritCroc 2024-02-20 15:01:20 +01:00
parent 7c940f9849
commit ed0c1bd433
2367 changed files with 406 additions and 406 deletions

View File

@ -1,25 +1,58 @@
[![Translation status](https://weblate.spiritcroc.de/widgets/schildichat/-/schildichat-android/svg-badge.svg)](https://weblate.spiritcroc.de/projects/schildichat/schildichat-android/) [![Latest build](https://github.com/element-hq/element-android/actions/workflows/build.yml/badge.svg?query=branch%3Adevelop)](https://github.com/element-hq/element-android/actions/workflows/build.yml?query=branch%3Adevelop)
[![SchildiChat-Android Matrix room #android:schildi.chat](https://img.shields.io/matrix/android:schildi.chat.svg?label=%23android:schildi.chat&logo=matrix&server_fqdn=matrix.org)](https://matrix.to/#/#android:schildi.chat) [![Weblate](https://translate.element.io/widgets/element-android/-/svg-badge.svg)](https://translate.element.io/engage/element-android/?utm_source=widget)
[![Element Android Matrix room #element-android:matrix.org](https://img.shields.io/matrix/element-android:matrix.org.svg?label=%23element-android:matrix.org&logo=matrix&server_fqdn=matrix.org)](https://matrix.to/#/#element-android:matrix.org)
[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=vector-im_element-android&metric=alert_status)](https://sonarcloud.io/summary/new_code?id=vector-im_element-android)
[![Vulnerabilities](https://sonarcloud.io/api/project_badges/measure?project=vector-im_element-android&metric=vulnerabilities)](https://sonarcloud.io/summary/new_code?id=vector-im_element-android)
[![Bugs](https://sonarcloud.io/api/project_badges/measure?project=vector-im_element-android&metric=bugs)](https://sonarcloud.io/summary/new_code?id=vector-im_element-android)
# SchildiChat for Android # Element Android
SchildiChat for Android is a Matrix Client based on [Element Android](https://github.com/vector-im/element-android), Element Android is an Android Matrix Client provided by [Element](https://element.io/). The app can be run on every Android devices with Android OS Lollipop and more (API 21).
featuring a different design and various extra tweaks, customization options, and additional community features.
A list of changes compared to Element can be found [here](FEATURES.md) - but keep in mind this list might not be up-to-date at all times.
<a href="https://f-droid.org/packages/de.spiritcroc.riotx/" alt="Get it on F-Droid" target="_blank"><img src="https://fdroid.gitlab.io/artwork/badge/get-it-on.png" height="80"></a> It is a total rewrite of [Riot-Android](https://github.com/element-hq/riot-android) with a new user experience.
<a href="https://play.google.com/store/apps/details?id=de.spiritcroc.riotx" alt="Get it on Google Play" target="_blank"><img src="https://play.google.com/intl/en_us/badges/images/generic/en_badge_web_generic.png" height="80"></a>
Information about available app variants can be found [on our website](https://schildi.chat/android/). [<img src="resources/img/google-play-badge.png" alt="Get it on Google Play" height="60">](https://play.google.com/store/apps/details?id=im.vector.app)
[<img src="resources/img/f-droid-badge.png" alt="Get it on F-Droid" height="60">](https://f-droid.org/app/im.vector.app)
<a href="https://matrix.to/#/#android:schildi.chat" target="_blank">Join the discussion on matrix</a> Build of develop branch: [![GitHub Action](https://github.com/element-hq/element-android/actions/workflows/build.yml/badge.svg?query=branch%3Adevelop)](https://github.com/element-hq/element-android/actions/workflows/build.yml?query=branch%3Adevelop) Nightly test status: [![allScreensTest](https://github.com/element-hq/element-android/actions/workflows/nightly.yml/badge.svg)](https://github.com/element-hq/element-android/actions/workflows/nightly.yml)
<a href="https://matrix.to/#/#space:schildi.chat" target="_blank">Join our matrix community space</a>
## Translations
If you want to translate SchildiChat, visit its weblate [here](https://translate.schildi.chat/projects/schildichat/schildichat-android/). # New Android SDK
For translations that concern upstream Element code, visit their weblate [here](https://translate.element.io/engage/element-android/).
## Screenshots Element is based on a new Android SDK fully written in Kotlin (like Element). In order to make the early development as fast as possible, Element and the new SDK currently share the same git repository.
At each Element release, the SDK module is copied to a dedicated repository: https://github.com/matrix-org/matrix-android-sdk2. That way, third party apps can add a regular gradle dependency to use it. So more details on how to do that here: https://github.com/matrix-org/matrix-android-sdk2.
# Roadmap
The version 1.0.0 of Element still misses some features which was previously included in Riot-Android.
The team will work to add them on a regular basis.
# Releases to app stores
There is some delay between when a release is created and when it appears in the app stores (Google Play Store and F-Droid). Here are some of the reasons:
* Not all versioned releases that appear on GitHub are considered stable. Each release is first considered beta: this continues for at least two days. If the release is stable (no serious issues or crashes are reported), then it is released as a production release in Google Play Store, and a request is sent to F-Droid too.
* Each release on the Google Play Store undergoes review by Google before it comes out. This can take an unpredictable amount of time. In some cases it has taken several weeks.
* In order for F-Droid to guarantee that the app you receive exactly matches the public source code, they build releases themselves. When a release is considered stable, Element staff inform the F-Droid maintainers and it is added to the build queue. Depending on the load on F-Droid's infrastructure, it can take some time for releases to be built. This always takes at least 24 hours, and can take several days.
If you would like to receive releases more quickly (bearing in mind that they may not be stable) you have a number of options:
1. [Sign up to receive beta releases](https://play.google.com/apps/testing/im.vector.app) via the Google Play Store.
2. Install a [release APK](https://github.com/element-hq/element-android/releases) directly - download the relevant .apk file and allow installing from untrusted sources in your device settings. Note: these releases are the Google Play version, which depend on some Google services. If you prefer to avoid that, try the latest dev builds, and choose the F-Droid version.
3. If you're really brave, install the [very latest dev build](https://github.com/element-hq/element-android/actions/workflows/build.yml?query=branch%3Adevelop) - pick a build, then click on `Summary` to download the APKs from there: `vector-Fdroid-debug` and `vector-Gplay-debug` contains the APK for the desired store. Each file contains 5 APKs. 4 APKs for every supported specific architecture of device. In doubt you can install the `universal` APK.
## Contributing
Please refer to [CONTRIBUTING.md](./CONTRIBUTING.md) if you want to contribute on Matrix Android projects!
Come chat with the community in the dedicated Matrix [room](https://matrix.to/#/#element-android:matrix.org).
Also [this documentation](./docs/_developer_onboarding.md) can hopefully help developers to start working on the project.
## Triaging issues
Issues are triaged by community members and the Android App Team, following the [triage process](https://github.com/element-hq/element-meta/wiki/Triage-process).
We use [issue labels](https://github.com/element-hq/element-meta/wiki/Issue-labelling) to sort all incoming issues.
<img src="https://raw.githubusercontent.com/SchildiChat/SchildiChat-android/sc/fastlane/metadata/android/en-US/images/phoneScreenshots/1_en-US.png" height="500"/> <img src="https://raw.githubusercontent.com/SchildiChat/SchildiChat-android/sc/fastlane/metadata/android/en-US/images/phoneScreenshots/2_en-US.png" height="500"/> <img src="https://raw.githubusercontent.com/SchildiChat/SchildiChat-android/sc/fastlane/metadata/android/en-US/images/phoneScreenshots/3_en-US.png" height="500"/> <img src="https://raw.githubusercontent.com/SchildiChat/SchildiChat-android/sc/fastlane/metadata/android/en-US/images/phoneScreenshots/4_en-US.png" height="500"/>

View File

@ -1,2 +1,2 @@
json_key_file("../google-api-fastlane-release.json") # Path to the json secret file - Follow https://docs.fastlane.tools/actions/supply/#setup to get one json_key_file("./fastlane/private/api-8525453667099313774-565354-aca0e6153603.json")
package_name("de.spiritcroc.riotx") # e.g. com.krausefx.app package_name("im.vector.app")

View File

@ -16,49 +16,45 @@
default_platform(:android) default_platform(:android)
platform :android do platform :android do
keystore = ENV["keystore"]
keystore_pass = ENV["keystorepass"]
key_alias = ENV["keyalias"]
key_pass = ENV["keypass"]
desc "Runs all the tests" desc "Runs all the tests"
lane :test do lane :test do
gradle(task: "test") gradle(task: "test")
end end
desc "Deploy a new version to Google Play" desc "Submit a new Beta Build to Crashlytics Beta"
lane :beta do
gradle(task: "clean assembleRelease")
crashlytics
# sh "your_script.sh"
# You can also use other beta testing services here
end
desc "Deploy a new version to the Google Play"
lane :deploy do lane :deploy do
gradle( gradle(task: "clean assembleRelease")
task: "clean bundleGplayRelease", upload_to_play_store
properties: { end
"android.injected.signing.store.file": keystore,
"android.injected.signing.store.password": keystore_pass, desc "Deploy Google Play metadata"
"android.injected.signing.key.alias": key_alias, lane :deployMeta do
"android.injected.signing.key.password": key_pass # Doc: https://docs.fastlane.tools/actions/upload_to_play_store/
}
)
upload_to_play_store( upload_to_play_store(
# apk: lane_context[SharedValues::GRADLE_APK_OUTPUT_PATH] skip_upload_apk: true,
skip_upload_aab: true,
skip_upload_images: true,
skip_upload_screenshots: true,
skip_upload_changelogs: true,
# Set to true to not update the PlayStore
validate_only: false
) )
end end
desc "Deploy a beta to Google Play" desc "Get version code"
lane :deploy_beta do lane :getVersionCode do
gradle( versions = google_play_track_version_codes(track: "production")
task: "clean bundleGplayRelease", puts(versions)
properties: { version_code = versions[0]
"android.injected.signing.store.file": keystore, puts(version_code)
"android.injected.signing.store.password": keystore_pass,
"android.injected.signing.key.alias": key_alias,
"android.injected.signing.key.password": key_pass
}
)
upload_to_play_store(
# apk: lane_context[SharedValues::GRADLE_APK_OUTPUT_PATH]
track: 'beta',
skip_upload_metadata: false,
skip_upload_images: true,
skip_upload_screenshots: true
)
end end
end end

View File

@ -23,21 +23,37 @@ For _fastlane_ installation instructions, see [Installing _fastlane_](https://do
Runs all the tests Runs all the tests
### android beta
```sh
[bundle exec] fastlane android beta
```
Submit a new Beta Build to Crashlytics Beta
### android deploy ### android deploy
```sh ```sh
[bundle exec] fastlane android deploy [bundle exec] fastlane android deploy
``` ```
Deploy a new version to Google Play Deploy a new version to the Google Play
### android deploy_beta ### android deployMeta
```sh ```sh
[bundle exec] fastlane android deploy_beta [bundle exec] fastlane android deployMeta
``` ```
Deploy a beta to Google Play Deploy Google Play metadata
### android getVersionCode
```sh
[bundle exec] fastlane android getVersionCode
```
Get version code
---- ----

Some files were not shown because too many files have changed in this diff Show More