navis
navis copied to clipboard
Cephalon Navis is an Android app inspired by Warframe Hub.
Cephalon Navis
Cephalon Navis is an Android app inspired by Warframe Hub. Navis for short uses the WarframeStat.us API to display as much useful and necessary information to help you as you travel the solar system without leaving your game.
Features:
- Warframe news
- in-game events
- Darvo daily deal of the day
- Baro Ki'Teer timer and inventory
- Sorties
- Void Fissures and Void storms
- invasions and construction progress
- Open world cycle timers
- Open world syndicate bounties
- Nightwaves
- Notifications (mostly done)
Credits:
Android setup
Create Keystore
On Mac/Linux/WSL
keytool -genkey -v -keystore ~/key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key
On Windows
keytool -genkey -v -keystore c:/Users/USER_NAME/key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key
If you change your keystore alies make sure to to replace KeyAlia, under android/app/build.gradle, with your own custom alias.
Use Keystore
Once your Keystore has been generated store your keystore.jks under the android folder. Then set an environment variable TENNO_CIPHER as the password for your generated keystore.jks
iOS setup
iOS apps require a certifcate from Apple in order to be signed and installed on a physical device.
Generate Firebase service JSON
Best to let Google teach you this one https://firebase.google.com/docs/flutter/setup#configure_an_android_app
Build Instructions
To build Navis need to install Flutter from the link below and follow all the instructions needed to get it running for your desired device then simple run:
flutter pub get
flutter build apk/ios/ipa
flutter install
Pick the one for your specfic device, apk builds a fat apk, ios builds an .app for iOS, and ipa builds an archived version used for the app store
Optionally flutter build apk --target-platform=android-arm64 or flutter build apk --target-platform=android-arm will build an apk with just arm64 or arm libs, this is good as fat apks are much larger and include libs for x86, arm64, and arm.
Make sure that you follow all the instructions and everything should run smoothly, unless there's a bug in which case report issues here so that they may be fixed.
Working with Translations 🌐
This project relies on flutter_localizations and follows the official internationalization guide for Flutter.
The translations themselves are done on Crowdin.
Adding Strings
- To add a new localizable string, open the
app_en.arbfile atlib/l10n/arb/app_en.arb.
{
"tapForMoreDetails": "Tap for more details",
"@tapForMoreDetails": {
"description": "General description to tell the user that this object takes you to a different page",
"type": "text",
"placeholders": {}
}
}
- Then add a new key/value and description
{
"tapForMoreDetails": "Tap for more details",
"@tapForMoreDetails": {
"description": "General description to tell the user that this object takes you to a different page",
"type": "text",
"placeholders": {}
}
"seeDetails": "See details",
"@seeDetails": {
"description": "General button to see more details of given object",
"type": "text",
"placeholders": {}
}
}
- Use the new string
import 'package:navis/l10n/l10n.dart';
@override
Widget build(BuildContext context) {
final l10n = context.l10n;
return Text(l10n.helloWorld);
}
Adding Supported Locales
Update the CFBundleLocalizations array in the Info.plist at ios/Runner/Info.plist to include the new locale.
...
<key>CFBundleLocalizations</key>
<array>
<string>en</string>
<string>es</string>
</array>
...
