##Install instructions and setup
git clone [email protected]:brave/browser-android.git
Either install the Crashlytics/Fabric Android Studio plugin or copy Application/LinkBubble/fabric.properties.template
to Application/LinkBubble/fabric.properties
and fill in the apiSecret.
Copy Application/LinkBubble/src/main/java/com/linkbubble/ConfigAPIs.java.template
to Application/LinkBubble/src/main/java/com/linkbubble/ConfigAPIs.java
and fill in the youtube apiSecret.
Copy Application/LinkBubble/src/main/AndroidManifest.xml.template
to Application/LinkBubble/src/main/AndroidManifest.xml
and fill in com.crashlytics.ApiKey
and
io.fabric.ApiKey
with your Crashlytics API key. You can obtain it from logging into your Fabric account and going to: Settings -> Organizations -> Brave (or your organization)
then click on API Key
at the top.
npm install
##Building
Open ./Application/
in Android Studio and build. You'll need the NDK installed if you don't already have it, instructions below.
##Building release build
Copy build-release.sh.template
to build-release.sh
.
Modify each of these exported environment variables: LINK_BUBBLE_KEYSTORE_LOCATION
, LINK_BUBBLE_KEYSTORE_PASSWORD
, and LINK_BUBBLE_KEY_PASSWORD
.
If you get an error about similar to:
Failure [INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES]
Try uninstalling the application which already exists on your plugged in device.
##Installing the NDK
Android Studio has an easy way to download and link to the NDK.
In the menu navigate to File, Project Structure. Click the 'Download Android NDK' link. This should download and unzip the NDK, as well as link it inside of local.properties.
If you are not using Android Studio, reference this commit: https://github.com/brave/browser-android/commit/0fa9f58286e0679ec5772e19b995d6a508907691
##Telling getlocalization.com about new strings
- Periodically upload the file
./Application/LinkBubble/src/main/res/values/strings.xml
to getlocalization.com. getlocalization.com will determine which strings are new - When prompted on getlocalization.com, press the mark for retranslation (or keep existing) for changed strings.
##Getting new translated strings from getlocalization.com
- Install npm dependencies with
npm install
. - Run
npm run translate <username> <password>
to pull down the translated xml files. - Commit and push your change.
Remember to uncomment checkStrings
from MainApplication
and call it in onCreate
to make sure the pulled files don't cause crashes with format specifiers.
##ADB
If you don't have adb
in your path add it to your ~/.bash_profile
or similar file:
export PATH=/Users/<your-username>/Library/Android/sdk/platform-tools:$PATH
- Installing an apk onto your device:
adb install -r ./LinkBubble/build/outputs/apk/LinkBubble-playstore-release.apk
- Getting a list of devices:
adb devices