Mobile Self Compile (optional)
The source code of Tailchat
mobile terminal is located in client/mobile
. The technology stack is react-native
You can download the compiled general version directly from the official website: https://tailchat.msgbyte.com/downloads, or compile it yourself from the source code
This section mainly explains how to compile the mobile version of Tailchat
.
Prepare the development environment
You can see the complete development environment preparation operation at https://reactnative.dev/docs/environment-setup, so I won’t go into details here.
Install dependencies
cd client/mobile
yarn
Environment check
yarn doctor
Prepare environment variables
cp.env.example.env
In the .env
file we configure the required environment variables for compilation
TAILCHAT_UPLOAD_STORE_FILE=
TAILCHAT_UPLOAD_STORE_PASSWORD=
TAILCHAT_UPLOAD_KEY_ALIAS=
TAILCHAT_UPLOAD_KEY_PASSWORD=
GETUI_APPID=
GETUI_APPKEY=
GETUI_APPSECRET=
GETUI_HUAWEI_APP_ID=
Certificate signing
If you are only using it for testing, you can skip this section and Tailchat will sign it for you using a public test certificate.
Android
If you need to use your own certificate for signing, you need to fill in the following:
TAILCHAT_UPLOAD_STORE_FILE=
TAILCHAT_UPLOAD_STORE_PASSWORD=
TAILCHAT_UPLOAD_KEY_ALIAS=
TAILCHAT_UPLOAD_KEY_PASSWORD=
Need to fill in: certificate file name, password, alias, alias password
The certificate file needs to be placed in the client/mobile/android/app
directory, usually a *.keystore
file
As for how to generate it, you can use
Android Studio
orkeytool
tool to generate it.
iOS
TODO
Push
Tailchat
implements Android multi-vendor message push by integrating personal tweets as a relay
You can get all the required configuration in the application configuration of getui
Among them GETUI_APPID
, GETUI_APPKEY
, GETUI_APPSECRET
are filled in in order
Corresponding configuration is required on the server side GETUI_APPID
, GETUI_APPKEY
, GETUI_MASTERSECRET
so that the self-deployed push service can send push messages correctly
Manufacturer Push
Manufacturer push can be turned on or off as needed
The source code needs to be modified as follows:
manifestPlaceholders
section anddependencies
section ofclient/mobile/android/app/build.gradle
.env
environment variable configuration
Compile
Android
cd android
./gradlew assembleRelease
iOS
iOS compilation needs to be done through xcode
Screenshot cannot be taken due to lack of equipment, please follow the public information on the Internet.
FAQ
If the following types of errors occur:
error Failed to install the app. Make sure you have the Android development environment set up: https://reactnative.dev/docs/environment-setup.
Error: Command failed: gradlew.bat app:installDebug -PreactNativeDevServerPort=8081
FAILURE: Build failed with an exception.
* What went wrong:
Could not determine the dependencies of task ':app:compileDebugJavaWithJavac'.
> Could not resolve all dependencies for configuration ':app:debugRuntimeClasspath'.
> Could not create task ':app:generateDebugLintModel'.
> java.lang.NullPointerException (no error message)
* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.
* Get more help at https://help.gradle.org
BUILD FAILED in 27s
It may be because your environment variable is missing, you can leave the value empty, but the entry must exist
like:
GETUI_APPID=xxxxxxxxxxxx
GETUI_APPKEY=yyyyyyyyy
GETUI_APPSECRET=zzzzzzzzzz
GETUI_HUAWEI_APP_ID=
instead of
GETUI_APPID=xxxxxxxxxxxx
GETUI_APPKEY=yyyyyyyyy
GETUI_APPSECRET=zzzzzzzzzz
Can I compile it myself and publish it to the app store?
Yes, but please modify the application name, package name, icon and other information to prevent conflicts with official applications.