Skip to content

Nelement is the repo of NerChat! client, a matrix instance useable in China mainland.

License

Notifications You must be signed in to change notification settings

Neboer/Nelement

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Nelement (Fork of Element Android)

Nelement是一个Element Android的fork,旨在通过NerChat!为中国大陆用户提供Element开源服务器的安全、加密的聊天服务。

欢迎访问NerChat!文档

Nelement对Element Android的修改

Nelement主要修改了Element Android的四处代码:

  1. Nelement修改了Element Android的家服务器配置文件,修改默认服务器、bug报告包名等信息。

    参考这个commit的这个文件修改

  2. Nelement修改了Element Android的图标、包名和应用名,与原版软件做出了重要区分,并且可以和原软件共存。

    对图标和应用名的修改请参考同一个commit(与上一个相同)的其余所有修改。

    对包名的修改请参考这个commit中的这个文件修改

  3. Nelement修改了Element Android的构建流程,直接构建Fdroid版本,而不再编译Google Play的预编译版本,因为Nelement不会发布到Google Play商店,同时也避免了无Google Play框架的国产手机在使用中出现问题。

    这个修改主要发生在这个commit,这里删除了Element Android中不必要的测试/发布等CI过程,只保留Fdroid Release版本的构建代码。

    后来我们又在这个提交中将Google Play构建添加了回来,因为我们需要对FCM提供的支持。

  4. Nelement修改了Element Android中配置的默认jitsi会议服务器地址为我们在国内搭建的jitsi服务,让用户可以享受高品质、低延迟的语音通话体验。

    参考这个commit

  5. (最新更新)Nelement支持了我们自建的Unified Push Gateway和基于FCM的通知服务器!现在,无论你的手机是否支持Google服务框架,你都可以获得很好的即时通知体验了!

    在这个commit中,我们支持了FCM。

    在这个commit中,我们支持了Unified Push。

我们还对Nelement做了一些其他的适配性小修改,比如修改google-services.json中的包名、修改manifest文件中注册的,以及使用Neboer自己的密钥对Nelement进行签名、修改Element的版本号等等。

以下是原README文件内容。

Latest build Weblate Element Android Matrix room #element-android:matrix.org Quality Gate Status Vulnerabilities Bugs

Element Android

Element Android is an Android Matrix Client provided by Element. 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 with a new user experience.

Get it on Google Play Get it on F-Droid

Build of develop branch: GitHub Action Nightly test status: allScreensTest

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 via the Google Play Store.
  2. Install a release APK 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 - 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 if you want to contribute on Matrix Android projects!

Come chat with the community in the dedicated Matrix room.

Also this documentation 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.

We use issue labels to sort all incoming issues.

About

Nelement is the repo of NerChat! client, a matrix instance useable in China mainland.

Resources

License

Security policy

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Kotlin 98.9%
  • Shell 0.4%
  • HTML 0.2%
  • Python 0.2%
  • Java 0.2%
  • FreeMarker 0.1%