A simple Android App that keep listening Kahla channel and notify you instantly.
- MainActivity
- Start MyService.
- If has saved account, then start ConversationListActivity.
- If no account saved, then start LoginActivity.
finish();
.
- LoginActivity
- Enter server, email and password.
- Login to add a new account to MyService.
- Waiting MyService login OK, start ConversationListActivity and then
finish();
. - If any exception thrown, prompt to user.
- ConversationListActivity
- Query conversations from MyService immediately whether it's outdated or not.
- If cached conversations is outdated, then let MyService get latest conversations. Show refreshing during it refreshing.
- Wait conversations fetched, and show.
- You can also force refresh by pulling list down.
- ConversationActivity
- Query conversation data from MyService.
- LogActivity
- Get log from logger.
- MyService
- When started, if has saved account, then try to get message list and connect to websocket channel.
- Each client has it's own thread loop. One disconnected won't bother others. Everyone retry by themselves.
- All data are saved in memory. No database supported.
- They has a common logger. Log all error in one file.
- MyService provide
add
andremove
operation of clients.
./gradlew assembleRelease
Note: The app released by Travis CI is signed with debug.keystore
. DON'T TRUST IT!