Automatic upstream merge postprocessing
Change-Id: Ia380e6cb16012ca8e2902918eee60a24d893749a
61
README.md
|
@ -1,55 +1,30 @@
|
||||||
[![Buildkite](https://badge.buildkite.com/ad0065c1b70f557cd3b1d3d68f9c2154010f83c4d6f71706a9.svg?branch=develop)](https://buildkite.com/matrix-dot-org/element-android/builds?branch=develop)
|
[![Translation status](https://weblate.bubu1.eu/widgets/schildichat/-/schildichat-android/svg-badge.svg)](https://weblate.bubu1.eu/projects/schildichat/schildichat-android/)
|
||||||
[![Weblate](https://translate.element.io/widgets/element-android/-/svg-badge.svg)](https://translate.element.io/engage/element-android/?utm_source=widget)
|
[![SchildiChat-Android Matrix room #schildichat-android:matrix.org](https://img.shields.io/matrix/schildichat-android:matrix.org.svg?label=%23schildichat-android:matrix.org&logo=matrix&server_fqdn=matrix.org)](https://matrix.to/#/#schildichat-android:matrix.org)
|
||||||
[![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](https://sonarcloud.io/api/project_badges/measure?project=im.vector.app.android&metric=alert_status)](https://sonarcloud.io/dashboard?id=im.vector.app.android)
|
|
||||||
[![Vulnerabilities](https://sonarcloud.io/api/project_badges/measure?project=im.vector.app.android&metric=vulnerabilities)](https://sonarcloud.io/dashboard?id=im.vector.app.android)
|
|
||||||
[![Bugs](https://sonarcloud.io/api/project_badges/measure?project=im.vector.app.android&metric=bugs)](https://sonarcloud.io/dashboard?id=im.vector.app.android)
|
|
||||||
|
|
||||||
# Element Android
|
# SchildiChat for 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).
|
SchildiChat for Android is a Matrix Client based on [Element Android](https://github.com/vector-im/element-android).
|
||||||
|
|
||||||
It is a total rewrite of [Riot-Android](https://github.com/vector-im/riot-android) with a new user experience.
|
Compared to Element, SchildiChat features following most important changes:
|
||||||
|
|
||||||
[<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)
|
- A unified chat list for both direct and group chats
|
||||||
[<img src="resources/img/f-droid-badge.png" alt="Get it on F-Droid" height="60">](https://f-droid.org/app/im.vector.app)
|
- Optional message bubbles
|
||||||
|
- Further usability improvements and additional settings to configure the app
|
||||||
|
|
||||||
Nightly build: [![Buildkite](https://badge.buildkite.com/ad0065c1b70f557cd3b1d3d68f9c2154010f83c4d6f71706a9.svg?branch=develop)](https://buildkite.com/matrix-dot-org/element-android/builds?branch=develop) Nighly test status: [![allScreensTest](https://github.com/vector-im/element-android/actions/workflows/nightly.yml/badge.svg)](https://github.com/vector-im/element-android/actions/workflows/nightly.yml)
|
A more thorough 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>
|
||||||
|
<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>
|
||||||
|
|
||||||
# New Android SDK
|
Information about available app variants can be found [on our website](https://schildi.chat/android/).
|
||||||
|
|
||||||
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.
|
<a href="https://matrix.to/#/#schildichat-android:matrix.org" target="_blank">Join the discussion on matrix</a>
|
||||||
|
|
||||||
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.
|
## Translations
|
||||||
|
|
||||||
# Roadmap
|
If you want to translate SchildiChat, visit its weblate [here](https://weblate.bubu1.eu/projects/schildichat/schildichat-android/).
|
||||||
|
For translations that concern upstream Element code, visit their weblate [here](https://translate.element.io/engage/element-android/).
|
||||||
|
|
||||||
The version 1.0.0 of Element still misses some features which was previously included in Riot-Android.
|
## Screenshots
|
||||||
The team will work to add them on a regular basis.
|
|
||||||
|
|
||||||
# Releases to app stores
|
<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"/>
|
||||||
|
|
||||||
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/vector-im/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://buildkite.com/matrix-dot-org/element-android/builds/latest?branch=develop&state=passed) - click on *Assemble (GPlay or FDroid) Debug version* then on *Artifacts*.
|
|
||||||
|
|
||||||
## Contributing
|
|
||||||
|
|
||||||
Please refer to [CONTRIBUTING.md](https://github.com/vector-im/element-android/blob/develop/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).
|
|
||||||
|
|
||||||
## Triaging issues
|
|
||||||
|
|
||||||
Issues are triaged by community members and the Android App Team, following the [triage process](https://github.com/vector-im/element-meta/wiki/Triage-process).
|
|
||||||
|
|
||||||
We use [issue labels](https://github.com/vector-im/element-meta/wiki/Issue-labelling) to sort all incoming issues.
|
|
||||||
|
|
|
@ -1,2 +1,2 @@
|
||||||
json_key_file("./fastlane/private/api-8525453667099313774-565354-aca0e6153603.json")
|
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
|
||||||
package_name("im.vector.app")
|
package_name("de.spiritcroc.riotx") # e.g. com.krausefx.app
|
||||||
|
|
|
@ -16,45 +16,49 @@
|
||||||
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 "Submit a new Beta Build to Crashlytics Beta"
|
desc "Deploy a new version to Google Play"
|
||||||
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(task: "clean assembleRelease")
|
gradle(
|
||||||
upload_to_play_store
|
task: "clean bundleGplayRelease",
|
||||||
end
|
properties: {
|
||||||
|
"android.injected.signing.store.file": keystore,
|
||||||
desc "Deploy Google Play metadata"
|
"android.injected.signing.store.password": keystore_pass,
|
||||||
lane :deployMeta do
|
"android.injected.signing.key.alias": key_alias,
|
||||||
# Doc: https://docs.fastlane.tools/actions/upload_to_play_store/
|
"android.injected.signing.key.password": key_pass
|
||||||
|
}
|
||||||
|
)
|
||||||
upload_to_play_store(
|
upload_to_play_store(
|
||||||
skip_upload_apk: true,
|
# apk: lane_context[SharedValues::GRADLE_APK_OUTPUT_PATH]
|
||||||
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 "Get version code"
|
desc "Deploy a beta to Google Play"
|
||||||
lane :getVersionCode do
|
lane :deploy_beta do
|
||||||
versions = google_play_track_version_codes(track: "production")
|
gradle(
|
||||||
puts(versions)
|
task: "clean bundleGplayRelease",
|
||||||
version_code = versions[0]
|
properties: {
|
||||||
puts(version_code)
|
"android.injected.signing.store.file": keystore,
|
||||||
|
"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
|
||||||
|
|
|
@ -1,42 +1,12 @@
|
||||||
Element ist ein sicherer Messenger und ideal für die produktive Zusammenarbeit mit Ihrem Team im Homeoffice. Mit eingebauter Ende-zu-Ende-Verschlüsselung ermöglicht Element auch umfangreiche und sichere Videokonferenzen, das Teilen von Dateien, Sprachanrufe und vieles mehr.
|
SchildiChat ist ein Client für das Matrix-Protokoll und basiert auf der Element-Codebasis.
|
||||||
|
Im Gegensatz zu vergleichbaren Anwendungen bietet SchildiChat eine klassischere Oberfläche, wie sie von anderen verbreiteten Messengern bekannt ist, ohne dabei auf die volle Funktionalität der Referenzimplementierung zu verzichten.
|
||||||
|
|
||||||
<b>Element bietet folgende Funktionen:</b>
|
Das Matrix-Protokoll ist ein dezentralisierter Ansatz für die moderne Nachrichtenübermittlung, und erlaubt hierbei Ende-zu-Ende-Verschlüsselung, einen gemeinsamen Verlauf über mehrere Geräte, und mehr.
|
||||||
- Fortschrittliche Werkzeuge für die Online-Kommunikation
|
|
||||||
- Vollständig verschlüsselte Nachrichten, um eine sichere Kommunikation innerhalb und außerhalb von Unternehmen zu ermöglichen
|
|
||||||
- Dezentralisierte Chats, basierend auf dem quelloffenen Matrix-Protokoll
|
|
||||||
- Sichere und kontrollierte Dateifreigabe durch verschlüsselte Daten beim Verwalten von Projekten
|
|
||||||
- Videochats mit VoIP und Bildschirmübertragung
|
|
||||||
- Einfache Einbindung in Ihre bevorzugten Online-Kollaborations- und Projektverwaltungswerkzeuge, VoIP-Dienste und andere Kommunikationsapps für Ihr Team
|
|
||||||
|
|
||||||
Element unterscheidet sich grundlegend von anderen Kommunikations- und Kollaborationsapps. Es läuft auf Matrix, einem offenen Netzwerk für sichere und dezentralisierte Kommunikation. Es erlaubt Nutzern ihre eigene Infrastruktur zu betreiben und gibt ihnen damit vollständige Kontrolle und Besitz über ihre eigenen Daten und Nachrichten.
|
Verglichen mit der Element-Referenzanwendung bietet SchildiChat folgende Änderungen:
|
||||||
|
- Eine gemeinsame Liste für Direkt-Chats und Gruppen
|
||||||
|
- Optionale Nachrichtenblasen
|
||||||
|
- Weitere Verbesserungen bezüglich der Benutzerfreundlichkeit und zusätzliche Einstellungen zur Konfiguration der App
|
||||||
|
|
||||||
<b>Privatsphäre/Datenschutz und verschlüsselte Kommunikation</b>
|
SchildiChat ist quelloffen: https://github.com/SchildiChat/SchildiChat-android
|
||||||
Element schützt Sie vor unerwünschter Werbung, dem Datensammeln und geschlossenen Plattformen. Auch schützt es all Ihre Daten, Ihre Video- und Sprachkommunikation mittels Ende-zu-Ende-Verschlüsselung und durch das Quersignieren von Geräten zur Verifizierung.
|
Mehr Informationen zum Matrix-Protokoll: https://matrix.org/
|
||||||
|
|
||||||
Element gibt Ihnen volle Kontrolle über Ihre Privatsphäre und ermöglicht es Ihnen zugleich, mit jedem im Matrix-Netzwerk sicher zu kommunizieren - oder auch auf anderen geschäftlichen Kollaborationswerkzeugen, zum Beispiel durch das Einbinden von Apps wie Slack.
|
|
||||||
|
|
||||||
<b>Element kann man selber betreiben</b>
|
|
||||||
Um mehr Kontrolle über Ihre sensiblen Daten und Konversationen zu ermöglichen, kann man Element selbst betreiben, oder Sie wählen irgendeinen Matrix-basierten Dienst - der Standard für quelloffene, dezentralisierte Kommunikation. Element gibt Ihnen Privatsphäre, Sicherheitskonformität und Flexibilität für Integrationen.
|
|
||||||
|
|
||||||
<b>Besitzen Sie Ihre Daten</b>
|
|
||||||
Sie entscheiden, wo Sie Ihre Daten und Nachrichten aufbewahren - ohne das Datensammeln oder den Zugriff Dritter zu riskieren.
|
|
||||||
|
|
||||||
Element gibt Ihnen auf verschiedene Arten Kontrolle:
|
|
||||||
1. Sie können sich kostenlos auf dem öffentlichen matrix.org-Server registrieren, der von den Matrix-Entwicklern gehostet wird, oder einen von Tausenden öffentlichen Servern, die von Freiwilligen betrieben werden, auswählen
|
|
||||||
2. Sie haben die Möglichkeit, ein Konto auf einem eigenen Server in der eigenen IT-Infrastruktur betreiben
|
|
||||||
3. Außerdem können Sie durch ein Abonnement der Element Matrix Services ein Konto auf einem für Sie maßgeschneiderten Server erstellen
|
|
||||||
|
|
||||||
<b>Offene Kommunikation und Zusammenarbeit</b>
|
|
||||||
Sie können mit jedem im Matrix-Netzwerk chatten, egal ob ihr Kontakt Element, eine andere Matrix-App oder sogar eine völlig andere Anwendung nutzt.
|
|
||||||
|
|
||||||
<b>Super sicher</b>
|
|
||||||
Durch Ende-zu-Ende-Verschlüsselung können nur die Personen, die in der Unterhaltung sind, die Nachrichten lesen. Außerdem stellt die Verifizierung mittels Quersignierung sicher, dass Sie wirklich mit dem Chatten, mit dem Sie glauben - und niemand Anderem.
|
|
||||||
|
|
||||||
<b>Vollständige Kommunikation und Integration</b>
|
|
||||||
Kurznachrichten, Sprach- und Videoanrufe, Dateifreigaben, Bildschirmübertragungen und einer Menge an Integrationen, Bots und Widgets. Schaffen Sie Räume und Communities, bleiben Sie auf dem Laufenden und erledigen Sie Sachen.
|
|
||||||
|
|
||||||
<b>Da Weitermachen, wo Sie aufgehört haben</b>
|
|
||||||
Bleiben Sie in Kontakt, egal wo Sie sind, mit vollständig synchronisiertem Nachrichtenverlauf quer über all Ihre Geräte und im Netz auf https://app.element.io
|
|
||||||
|
|
||||||
<b>Open source</b>
|
|
||||||
Element ist ein Open-Source-Projekt und wird auf GitHub gehostet. Solltest du Fehler in Element finden, melde diese bitte hier: https://github.com/vector-im/element-android
|
|
||||||
|
|
Before Width: | Height: | Size: 82 KiB After Width: | Height: | Size: 82 KiB |
Before Width: | Height: | Size: 346 KiB After Width: | Height: | Size: 346 KiB |
Before Width: | Height: | Size: 221 KiB After Width: | Height: | Size: 221 KiB |
Before Width: | Height: | Size: 162 KiB After Width: | Height: | Size: 162 KiB |
|
@ -1 +1 @@
|
||||||
Gruppen-Messenger - verschlüsselte Kommunikation, Gruppenchat und Videoanrufe
|
Sicherer Messenger für Matrix mit gewohnter Nutzeroberfläche
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
Element - Sicherer Messenger
|
SchildiChat
|
||||||
|
|
|
@ -1,42 +1,12 @@
|
||||||
Element is both a secure messenger and a productivity team collaboration app that is ideal for group chats while remote working. This chat app uses end-to-end encryption to provide powerful video conferencing, file sharing and voice calls.
|
SchildiChat is a client for the matrix protocol, based on the Element app.
|
||||||
|
Compared to other clients, it provides a more classic instant messenger feel, while still providing the full functionality of the reference client.
|
||||||
|
|
||||||
<b>Element’s features include:</b>
|
The matrix protocol is a decentralized approach to modern messaging, allowing for end-to-end encryption, shared message history across multiple devices, and more.
|
||||||
- Advanced online communication tools
|
|
||||||
- Fully encrypted messages to allow safer corporate communication, even for remote workers
|
|
||||||
- Decentralized chat based on the Matrix open source framework
|
|
||||||
- File sharing securely with encrypted data while managing projects
|
|
||||||
- Video chats with Voice over IP and screen sharing
|
|
||||||
- Easy integration with your favourite online collaboration tools, project management tools, VoIP services and other team messaging apps
|
|
||||||
|
|
||||||
Element is completely different from other messaging and collaboration apps. It operates on Matrix, an open network for secure messaging and decentralized communication. It allows self-hosting to give users maximum ownership and control of their data and messages.
|
Compared to the Element app, SchildiChat features following changes:
|
||||||
|
- A unified chat list for both direct and group chats
|
||||||
|
- Optional message bubbles
|
||||||
|
- Further usability improvements and additional settings to configure the app
|
||||||
|
|
||||||
<b>Privacy and encrypted messaging</b>
|
SchildiChat is open source: https://github.com/SchildiChat/SchildiChat-android
|
||||||
Element protects you from unwanted ads, data mining and walled gardens. It also secures all your data, one-to-one video and voice communication through end-to-end encryption and cross-signed device verification.
|
More information about the Matrix protocol: https://matrix.org/
|
||||||
|
|
||||||
Element gives you control over your privacy while allowing you to communicate securely with anyone on the Matrix network, or other business collaboration tools by integrating with apps such as Slack.
|
|
||||||
|
|
||||||
<b>Element can be self-hosted</b>
|
|
||||||
To allow more control of your sensitive data and conversations, Element can be self-hosted or you can choose any Matrix-based host - the standard for open source, decentralized communication. Element gives you privacy, security compliance and integration flexibility.
|
|
||||||
|
|
||||||
<b>Own your data</b>
|
|
||||||
You decide where to keep your data and messages. Without the risk of data mining or access from third parties.
|
|
||||||
|
|
||||||
Element puts you in control in different ways:
|
|
||||||
1. Get a free account on the matrix.org public server hosted by the Matrix developers, or choose from thousands of public servers hosted by volunteers
|
|
||||||
2. Self-host your account by running a server on your own IT infrastructure
|
|
||||||
3. Sign up for an account on a custom server by simply subscribing to the Element Matrix Services hosting platform
|
|
||||||
|
|
||||||
<b>Open messaging and collaboration</b>
|
|
||||||
You can chat with anyone on the Matrix network, whether they’re using Element, another Matrix app or even if they are using a different messaging app.
|
|
||||||
|
|
||||||
<b>Super secure</b>
|
|
||||||
Real end-to-end encryption (only those in the conversation can decrypt messages), and cross-signed device verification.
|
|
||||||
|
|
||||||
<b>Complete communication and integration</b>
|
|
||||||
Messaging, voice and video calls, file sharing, screen sharing and a whole bunch of integrations, bots and widgets. Build rooms, communities, stay in touch and get things done.
|
|
||||||
|
|
||||||
<b>Pick up where you left off</b>
|
|
||||||
Stay in touch wherever you are with fully synchronised message history across all your devices and on the web at https://app.element.io
|
|
||||||
|
|
||||||
<b>Open source</b>
|
|
||||||
Element Android is an open source project, hosted by GitHub. Please report bugs and/or contribute to its development at https://github.com/vector-im/element-android
|
|
||||||
|
|
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 68 KiB |
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 59 KiB |
Before Width: | Height: | Size: 75 KiB After Width: | Height: | Size: 75 KiB |
Before Width: | Height: | Size: 342 KiB After Width: | Height: | Size: 342 KiB |
Before Width: | Height: | Size: 219 KiB After Width: | Height: | Size: 219 KiB |
Before Width: | Height: | Size: 161 KiB After Width: | Height: | Size: 161 KiB |
|
@ -1 +1 @@
|
||||||
Group messenger - encrypted messaging, group chat and video calls
|
Secure messenger for Matrix with a traditional instant messaging experience
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
Element - Secure Messenger
|
SchildiChat
|
||||||
|
|
|
@ -1,43 +1,12 @@
|
||||||
Element - это одновременно безопасный мессенджер и приложение для совместной работы, которое идеально подходит для групповых чатов при удаленной работе. Это приложение для чатов использует сквозное шифрование для обеспечения мощных видеоконференций, обмена файлами и голосовых звонков.
|
SchildiChat - это клиент для протокола Matrix, основанный на приложении Element.
|
||||||
|
По сравнению с другими клиентами, он обеспечивает более классический вид обмена мгновенными сообщениями, при этом обеспечивая полную функциональность эталонного клиента.
|
||||||
|
|
||||||
<b>Особенности Element включают:</b>
|
Протокол Matrix - это децентрализованный подход к современному обмену сообщениями, позволяющий осуществлять сквозное шифрование, совместно использовать историю сообщений на нескольких устройствах и многое другое.
|
||||||
- Передовые средства онлайн-общения
|
|
||||||
- Полностью зашифрованные сообщения, обеспечивающие безопасное корпоративное общение даже для удаленных работников
|
|
||||||
- Децентрализованный чат на базе платформы Matrix с открытым исходным кодом
|
|
||||||
- Безопасный обмен файлами с зашифрованными данными при управлении проектами
|
|
||||||
- Видеочаты с VoIP и совместным использованием экрана
|
|
||||||
- Простая интеграция с вашими любимыми инструментами для совместной работы в Интернете, средствами управления проектами, VoIP-сервисами и другими приложениями для обмена сообщениями в команде.
|
|
||||||
|
|
||||||
Element полностью отличается от других приложений для обмена сообщениями и совместной работы. Он работает на базе Matrix, открытой сети для безопасного обмена сообщениями и децентрализованного общения. Он позволяет самостоятельно размещать свои данные и сообщения, предоставляя пользователям максимальный контроль над ними.
|
По сравнению с приложением Element, SchildiChat имеет следующие изменения:
|
||||||
|
- Единый список чатов как для прямых, так и для групповых чатов
|
||||||
|
- Опциональные пузыри сообщений
|
||||||
|
- Дальнейшие улучшения удобства использования
|
||||||
|
|
||||||
<b>Приватность и зашифрованный обмен сообщениями</b>.
|
SchildiChat имеет открытый исходный код: https://github.com/SchildiChat/SchildiChat-android
|
||||||
Element защищает вас от нежелательной рекламы, сбора данных и "садов". Он также защищает все ваши данные, видео- и голосовую связь один на один благодаря сквозному шифрованию и перекрестной проверке устройств.
|
Подробнее о протоколе Matrix: https://matrix.org/
|
||||||
|
|
||||||
Element дает вам контроль над вашей конфиденциальностью, позволяя безопасно общаться с любым человеком в сети Matrix или с другими инструментами совместной работы благодаря интеграции с такими приложениями, как Slack.
|
|
||||||
|
|
||||||
<b>Element может быть размещен самостоятельно</b>.
|
|
||||||
Чтобы обеспечить больший контроль над конфиденциальными данными и разговорами, Element может быть размещен самостоятельно или вы можете выбрать любой хост на базе Matrix - стандарт децентрализованного общения с открытым исходным кодом. Element обеспечивает конфиденциальность, соответствие требованиям безопасности и гибкость интеграции.
|
|
||||||
|
|
||||||
<b>Владение своими данными</b>.
|
|
||||||
Вы сами решаете, где хранить свои данные и сообщения. Без риска добычи данных или доступа третьих лиц.
|
|
||||||
|
|
||||||
Element дает вам возможность контролировать ситуацию различными способами:
|
|
||||||
1. Получить бесплатный аккаунт на публичном сервере matrix.org, размещенном разработчиками Matrix, или выбрать один из тысяч публичных серверов, размещенных добровольцами.
|
|
||||||
2. Самостоятельно разместить свою учетную запись, запустив сервер на собственной IT-инфраструктуре.
|
|
||||||
3. Зарегистрировать учетную запись на пользовательском сервере, просто подписавшись на хостинг-платформу Element Matrix Services.
|
|
||||||
|
|
||||||
<b>Открытый обмен сообщениями и сотрудничество</b>.
|
|
||||||
Вы можете общаться с любым человеком в сети Matrix, независимо от того, использует ли он Element, другое приложение Matrix или даже если он использует другое приложение для обмена сообщениями.
|
|
||||||
|
|
||||||
<b>Супербезопасно</b>
|
|
||||||
Настоящее сквозное шифрование (только участники разговора могут расшифровывать сообщения) и проверка устройств с перекрестной подписью.
|
|
||||||
|
|
||||||
<b>Полная коммуникация и интеграция</b>.
|
|
||||||
Обмен сообщениями, голосовые и видеозвонки, совместное использование файлов, совместное использование экрана и целый ряд интеграций, ботов и виджетов. Создавайте комнаты, сообщества, оставайтесь на связи и выполняйте задачи.
|
|
||||||
|
|
||||||
<b>Восстанавливайте связь с того места, где остановились</b>.
|
|
||||||
Оставайтесь на связи, где бы вы ни находились, с полностью синхронизированной историей сообщений на всех ваших устройствах и в Интернете по адресу https://app.element.io
|
|
||||||
|
|
||||||
|
|
||||||
<b>Открытый исходный код</b>
|
|
||||||
Element Android - это проект с открытым исходным кодом, размещенный на GitHub. Пожалуйста, сообщайте об ошибках и/или вносите вклад в его развитие по адресу https://github.com/vector-im/element-android.
|
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
Групповой мессенджер - зашифрованные сообщения, групповые беседы и видеовызовы
|
Безопасный мессенджер для Matrix с традиционным обменом мгновенными сообщениями
|
|
@ -1 +1 @@
|
||||||
Element
|
SchildiChat
|
||||||
|
|
|
@ -1,30 +0,0 @@
|
||||||
[![Translation status](https://weblate.bubu1.eu/widgets/schildichat/-/schildichat-android/svg-badge.svg)](https://weblate.bubu1.eu/projects/schildichat/schildichat-android/)
|
|
||||||
[![SchildiChat-Android Matrix room #schildichat-android:matrix.org](https://img.shields.io/matrix/schildichat-android:matrix.org.svg?label=%23schildichat-android:matrix.org&logo=matrix&server_fqdn=matrix.org)](https://matrix.to/#/#schildichat-android:matrix.org)
|
|
||||||
|
|
||||||
# SchildiChat for Android
|
|
||||||
|
|
||||||
SchildiChat for Android is a Matrix Client based on [Element Android](https://github.com/vector-im/element-android).
|
|
||||||
|
|
||||||
Compared to Element, SchildiChat features following most important changes:
|
|
||||||
|
|
||||||
- A unified chat list for both direct and group chats
|
|
||||||
- Optional message bubbles
|
|
||||||
- Further usability improvements and additional settings to configure the app
|
|
||||||
|
|
||||||
A more thorough 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>
|
|
||||||
<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/).
|
|
||||||
|
|
||||||
<a href="https://matrix.to/#/#schildichat-android:matrix.org" target="_blank">Join the discussion on matrix</a>
|
|
||||||
|
|
||||||
## Translations
|
|
||||||
|
|
||||||
If you want to translate SchildiChat, visit its weblate [here](https://weblate.bubu1.eu/projects/schildichat/schildichat-android/).
|
|
||||||
For translations that concern upstream Element code, visit their weblate [here](https://translate.element.io/engage/element-android/).
|
|
||||||
|
|
||||||
## Screenshots
|
|
||||||
|
|
||||||
<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"/>
|
|
|
@ -1,2 +0,0 @@
|
||||||
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
|
|
||||||
package_name("de.spiritcroc.riotx") # e.g. com.krausefx.app
|
|
|
@ -1,64 +0,0 @@
|
||||||
# This file contains the fastlane.tools configuration
|
|
||||||
# You can find the documentation at https://docs.fastlane.tools
|
|
||||||
#
|
|
||||||
# For a list of all available actions, check out
|
|
||||||
#
|
|
||||||
# https://docs.fastlane.tools/actions
|
|
||||||
#
|
|
||||||
# For a list of all available plugins, check out
|
|
||||||
#
|
|
||||||
# https://docs.fastlane.tools/plugins/available-plugins
|
|
||||||
#
|
|
||||||
|
|
||||||
# Uncomment the line if you want fastlane to automatically update itself
|
|
||||||
# update_fastlane
|
|
||||||
|
|
||||||
default_platform(:android)
|
|
||||||
|
|
||||||
platform :android do
|
|
||||||
keystore = ENV["keystore"]
|
|
||||||
keystore_pass = ENV["keystorepass"]
|
|
||||||
key_alias = ENV["keyalias"]
|
|
||||||
key_pass = ENV["keypass"]
|
|
||||||
|
|
||||||
desc "Runs all the tests"
|
|
||||||
lane :test do
|
|
||||||
gradle(task: "test")
|
|
||||||
end
|
|
||||||
|
|
||||||
desc "Deploy a new version to Google Play"
|
|
||||||
lane :deploy do
|
|
||||||
gradle(
|
|
||||||
task: "clean bundleGplayRelease",
|
|
||||||
properties: {
|
|
||||||
"android.injected.signing.store.file": keystore,
|
|
||||||
"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]
|
|
||||||
)
|
|
||||||
end
|
|
||||||
|
|
||||||
desc "Deploy a beta to Google Play"
|
|
||||||
lane :deploy_beta do
|
|
||||||
gradle(
|
|
||||||
task: "clean bundleGplayRelease",
|
|
||||||
properties: {
|
|
||||||
"android.injected.signing.store.file": keystore,
|
|
||||||
"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
|
|
|
@ -1,12 +0,0 @@
|
||||||
SchildiChat ist ein Client für das Matrix-Protokoll und basiert auf der Element-Codebasis.
|
|
||||||
Im Gegensatz zu vergleichbaren Anwendungen bietet SchildiChat eine klassischere Oberfläche, wie sie von anderen verbreiteten Messengern bekannt ist, ohne dabei auf die volle Funktionalität der Referenzimplementierung zu verzichten.
|
|
||||||
|
|
||||||
Das Matrix-Protokoll ist ein dezentralisierter Ansatz für die moderne Nachrichtenübermittlung, und erlaubt hierbei Ende-zu-Ende-Verschlüsselung, einen gemeinsamen Verlauf über mehrere Geräte, und mehr.
|
|
||||||
|
|
||||||
Verglichen mit der Element-Referenzanwendung bietet SchildiChat folgende Änderungen:
|
|
||||||
- Eine gemeinsame Liste für Direkt-Chats und Gruppen
|
|
||||||
- Optionale Nachrichtenblasen
|
|
||||||
- Weitere Verbesserungen bezüglich der Benutzerfreundlichkeit und zusätzliche Einstellungen zur Konfiguration der App
|
|
||||||
|
|
||||||
SchildiChat ist quelloffen: https://github.com/SchildiChat/SchildiChat-android
|
|
||||||
Mehr Informationen zum Matrix-Protokoll: https://matrix.org/
|
|
|
@ -1 +0,0 @@
|
||||||
Sicherer Messenger für Matrix mit gewohnter Nutzeroberfläche
|
|
|
@ -1 +0,0 @@
|
||||||
SchildiChat
|
|
|
@ -1,12 +0,0 @@
|
||||||
SchildiChat is a client for the matrix protocol, based on the Element app.
|
|
||||||
Compared to other clients, it provides a more classic instant messenger feel, while still providing the full functionality of the reference client.
|
|
||||||
|
|
||||||
The matrix protocol is a decentralized approach to modern messaging, allowing for end-to-end encryption, shared message history across multiple devices, and more.
|
|
||||||
|
|
||||||
Compared to the Element app, SchildiChat features following changes:
|
|
||||||
- A unified chat list for both direct and group chats
|
|
||||||
- Optional message bubbles
|
|
||||||
- Further usability improvements and additional settings to configure the app
|
|
||||||
|
|
||||||
SchildiChat is open source: https://github.com/SchildiChat/SchildiChat-android
|
|
||||||
More information about the Matrix protocol: https://matrix.org/
|
|
Before Width: | Height: | Size: 68 KiB |
Before Width: | Height: | Size: 59 KiB |
|
@ -1 +0,0 @@
|
||||||
Secure messenger for Matrix with a traditional instant messaging experience
|
|
|
@ -1 +0,0 @@
|
||||||
SchildiChat
|
|
|
@ -1,12 +0,0 @@
|
||||||
SchildiChat - это клиент для протокола Matrix, основанный на приложении Element.
|
|
||||||
По сравнению с другими клиентами, он обеспечивает более классический вид обмена мгновенными сообщениями, при этом обеспечивая полную функциональность эталонного клиента.
|
|
||||||
|
|
||||||
Протокол Matrix - это децентрализованный подход к современному обмену сообщениями, позволяющий осуществлять сквозное шифрование, совместно использовать историю сообщений на нескольких устройствах и многое другое.
|
|
||||||
|
|
||||||
По сравнению с приложением Element, SchildiChat имеет следующие изменения:
|
|
||||||
- Единый список чатов как для прямых, так и для групповых чатов
|
|
||||||
- Опциональные пузыри сообщений
|
|
||||||
- Дальнейшие улучшения удобства использования
|
|
||||||
|
|
||||||
SchildiChat имеет открытый исходный код: https://github.com/SchildiChat/SchildiChat-android
|
|
||||||
Подробнее о протоколе Matrix: https://matrix.org/
|
|
|
@ -1 +0,0 @@
|
||||||
Безопасный мессенджер для Matrix с традиционным обменом мгновенными сообщениями
|
|
|
@ -1 +0,0 @@
|
||||||
SchildiChat
|
|
55
upstream_README.md
Normal file
|
@ -0,0 +1,55 @@
|
||||||
|
[![Buildkite](https://badge.buildkite.com/ad0065c1b70f557cd3b1d3d68f9c2154010f83c4d6f71706a9.svg?branch=develop)](https://buildkite.com/matrix-dot-org/element-android/builds?branch=develop)
|
||||||
|
[![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](https://sonarcloud.io/api/project_badges/measure?project=im.vector.app.android&metric=alert_status)](https://sonarcloud.io/dashboard?id=im.vector.app.android)
|
||||||
|
[![Vulnerabilities](https://sonarcloud.io/api/project_badges/measure?project=im.vector.app.android&metric=vulnerabilities)](https://sonarcloud.io/dashboard?id=im.vector.app.android)
|
||||||
|
[![Bugs](https://sonarcloud.io/api/project_badges/measure?project=im.vector.app.android&metric=bugs)](https://sonarcloud.io/dashboard?id=im.vector.app.android)
|
||||||
|
|
||||||
|
# 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).
|
||||||
|
|
||||||
|
It is a total rewrite of [Riot-Android](https://github.com/vector-im/riot-android) with a new user experience.
|
||||||
|
|
||||||
|
[<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)
|
||||||
|
|
||||||
|
Nightly build: [![Buildkite](https://badge.buildkite.com/ad0065c1b70f557cd3b1d3d68f9c2154010f83c4d6f71706a9.svg?branch=develop)](https://buildkite.com/matrix-dot-org/element-android/builds?branch=develop) Nighly test status: [![allScreensTest](https://github.com/vector-im/element-android/actions/workflows/nightly.yml/badge.svg)](https://github.com/vector-im/element-android/actions/workflows/nightly.yml)
|
||||||
|
|
||||||
|
|
||||||
|
# New Android SDK
|
||||||
|
|
||||||
|
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/vector-im/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://buildkite.com/matrix-dot-org/element-android/builds/latest?branch=develop&state=passed) - click on *Assemble (GPlay or FDroid) Debug version* then on *Artifacts*.
|
||||||
|
|
||||||
|
## Contributing
|
||||||
|
|
||||||
|
Please refer to [CONTRIBUTING.md](https://github.com/vector-im/element-android/blob/develop/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).
|
||||||
|
|
||||||
|
## Triaging issues
|
||||||
|
|
||||||
|
Issues are triaged by community members and the Android App Team, following the [triage process](https://github.com/vector-im/element-meta/wiki/Triage-process).
|
||||||
|
|
||||||
|
We use [issue labels](https://github.com/vector-im/element-meta/wiki/Issue-labelling) to sort all incoming issues.
|
2
upstream_fastlane/Appfile
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
json_key_file("./fastlane/private/api-8525453667099313774-565354-aca0e6153603.json")
|
||||||
|
package_name("im.vector.app")
|
60
upstream_fastlane/Fastfile
Normal file
|
@ -0,0 +1,60 @@
|
||||||
|
# This file contains the fastlane.tools configuration
|
||||||
|
# You can find the documentation at https://docs.fastlane.tools
|
||||||
|
#
|
||||||
|
# For a list of all available actions, check out
|
||||||
|
#
|
||||||
|
# https://docs.fastlane.tools/actions
|
||||||
|
#
|
||||||
|
# For a list of all available plugins, check out
|
||||||
|
#
|
||||||
|
# https://docs.fastlane.tools/plugins/available-plugins
|
||||||
|
#
|
||||||
|
|
||||||
|
# Uncomment the line if you want fastlane to automatically update itself
|
||||||
|
# update_fastlane
|
||||||
|
|
||||||
|
default_platform(:android)
|
||||||
|
|
||||||
|
platform :android do
|
||||||
|
desc "Runs all the tests"
|
||||||
|
lane :test do
|
||||||
|
gradle(task: "test")
|
||||||
|
end
|
||||||
|
|
||||||
|
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
|
||||||
|
gradle(task: "clean assembleRelease")
|
||||||
|
upload_to_play_store
|
||||||
|
end
|
||||||
|
|
||||||
|
desc "Deploy Google Play metadata"
|
||||||
|
lane :deployMeta do
|
||||||
|
# Doc: https://docs.fastlane.tools/actions/upload_to_play_store/
|
||||||
|
upload_to_play_store(
|
||||||
|
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
|
||||||
|
|
||||||
|
desc "Get version code"
|
||||||
|
lane :getVersionCode do
|
||||||
|
versions = google_play_track_version_codes(track: "production")
|
||||||
|
puts(versions)
|
||||||
|
version_code = versions[0]
|
||||||
|
puts(version_code)
|
||||||
|
end
|
||||||
|
end
|