Uses React Native to show data.
Example:
Install react-native
, Android Development tools, and recommended tooling for non-Expo development.
- Run
npm install
You first have to start react-native dev listener, then deploy the dev app to the device.
- Start the live reload service (this will start listening on port 8081):
npm start
- If necessary, uninstall any version of this app. (Step 2 will fail otherwise)
- Deploy the app to the device and let it connect to 8081.
npm run android
(Shake the device to get a debug menu, which allows reload)
- This link suggests doing some cleaning
pushd android
./gradlew clean
popd
- Possibly also clean/reinstall packages.
- In my case, it looks like the virtual Android device was simply hung. Force reboot or reset.
- Either shake device or
adb shell input keyevent 82
curl -H "Accept: application/json" -H "Content-Type: application/json" -H "User-Agent: Dexcom Share/3.0.2.11 CFNetwork/711.2.23 Darwin/14.0.0" -X POST https://share1.dexcom.com/ShareWebServices/Services/General/LoginPublisherAccountByName -d '{"applicationId":"d8665ade-9673-4e27-9ff6-92db4ce13d13","accountName": "jazeee", "password": ""}'
curl -H "Content-Length: 0" -H "Accept: application/json" -H "User-Agent: Dexcom Share/3.0.2.11 CFNetwork/672.0.2 Darwin/14.0.0" -X POST 'https://share1.dexcom.com/ShareWebServices/Services/Publisher/ReadPublisherLatestGlucoseValues?sessionId=abc123-342&minutes=1440&maxCount=1'
Output like:
[{
"DT":"\/Date(1558231462000-0700)\/",
"ST":"\/Date(1558231462000)\/",
"Trend":"Flat",
"Value":177,
"WT":"\/Date(1558231462000)\/"
},{
"DT":"\/Date(1558231162000-0700)\/",
"ST":"\/Date(1558231162000)\/",
"Trend":"Flat",
"Value":169,
"WT":"\/Date(1558231162000)\/"
}...
DT is device, ST is server. Trends used to be numbers, like 4 is flat, 3 is up, 2 is very up, 5 is down, 6 is very down. Now are strings.
Truly speaking you only need to run ./build.sh
Once built, you can upload the output file to Google Play Store:
android/app/build/outputs/bundle/release/
You'll then need to do their release process.
Will need a keystore to sign the app. (Must use new file if you forgot the pwd LoL)
keytool -genkey -v -keystore ~/.gradle/jazcomkeystore -alias jazcomkeystore -keyalg RSA -keysize 2048 -validity 90000
See ~/.gradle/gradle.properties
for default
cd android
./gradlew assembleRelease
ls -la app/build/outputs/apk/release/app-release-unsigned.apk
# Note - you will need to choose your own keystore, and key-alias.
/opt/android-sdk/build-tools/28.0.3/apksigner sign --ks ~/.gradle/jazcomkeystore --ks-key-alias jazcomkeystore --out app/build/outputs/apk/release/app-release.apk app/build/outputs/apk/release/app-release-unsigned.apk
adb install -f app/build/outputs/apk/release/app-release.apk
2099 cp ../cgm/apktool/new/release-key-dexcom.jks android/app/
2100 vi android/gradle.properties
2101 mv android/app/release-key-dexcom.jks ~/.gradle/
2102 vi ~/.gradle/gradle.properties
2103 rm ~/.gradle/release-key-dexcom.jks
2104 vi ~/.gradle/gradle.properties
2105 keytool -genkey -v -keystore ~/.gradle/jazcomkeystore -alias jazcomkeystore -keyalg RSA -keysize 2048 -validity 90000
2107 cd android/
2108 ./gradlew assembleRelease
2113 ls -la build
2114 ls -la build/intermediates/
2115 find ./ -name *.apk
2116 ls -la app/build/outputs/apk/release/app-release-unsigned.apk
2117 cat ../cgm/apktool/build-and-deploy.sh
2118 cat ../../cgm/apktool/build-and-deploy.sh
2119 /opt/android-sdk/build-tools/28.0.3/apksigner sign --ks ~/.gradle/jazcomkeystore --out app/build/outputs/apk/release/app-release.apk app/build/outputs/apk/release/app-release-unsigned.apk
2120 adb install -r app/build/outputs/apk/release/app-release.apk
2121 /opt/android-sdk/build-tools/23.0.2/
2122 /opt/android-sdk/build-tools/23.0.2/apksigner sign --ks ~/.gradle/jazcomkeystore --out app/build/outputs/apk/release/app-release.apk app/build/outputs/apk/release/app-release-unsigned.apk
2123 /opt/android-sdk/build-tools/28.0.3/zipalign -v -p 4 app/build/outputs/apk/release/app-release-unsigned.apk app/build/outputs/apk/release/app-release-unsigned-aligned.apk
2124 /opt/android-sdk/build-tools/28.0.3/apksigner sign --ks ../../cgm/apktool/new/release-key-dexcom.jks --out app/build/outputs/apk/release/app-release.apk app/build/outputs/apk/release/app-release-unsigned-aligned.apk
2126 adb install -rf app/build/outputs/apk/release/app-release.apk