Compare commits

...

20 Commits

Author SHA1 Message Date
bl00dymarie 20ace28e13 Merge branch 'Chore_Upgrade-for-Android14' into 'main'
Chore upgrade for android14

See merge request bloodyhealth/drip!692
2024-11-05 12:57:05 +00:00
bl00dymarie 97e76959d9 Merge branch '732-chore-update-sympto-package' into 'main'
Chore: Update sympto package to v3.0.2

Closes #732

See merge request bloodyhealth/drip!691
2024-10-30 11:12:42 +00:00
bl00dymarie a9fdcdb1f3 Chore: Update sympto package to v3.0.2 2024-10-30 12:10:21 +01:00
bl00dymarie 8b101ec952 Release: 1.2410.29 2024-10-29 19:29:18 +01:00
bl00dymarie 5bb6bc05e7 Update Sdk to comply with Android14 2024-10-29 19:21:55 +01:00
bl00dymarie 805587302b Merge branch '730-bug-bad-version-of-the-soloader-sdk' into 'main'
Resolve "Bug: Bad version of the SoLoader SDK"

Closes #730

See merge request bloodyhealth/drip!689
2024-10-24 12:25:51 +00:00
bl00dymarie e3f44d7654 Release: 1.2410.22 2024-10-24 14:19:05 +02:00
bl00dymarie 590acd0bcb Fix: Bad version of the SoLoader SDK 2024-10-24 14:19:05 +02:00
bl00dymarie 7710e9c9bd Merge branch '728-reminders-appear-only-after-opening-the-app-on-some-phone-models' into 'main'
Fix: Allow push notification in idle state for Android

Closes #728

See merge request bloodyhealth/drip!687
2024-10-22 12:06:27 +00:00
Lynn a434242640 Added step "yarn install" to iOS set-up 2024-10-18 18:59:47 +00:00
bl00dymarie 05f28b072a Fix: Allow push notification in idle state for Android 2024-10-15 13:38:42 +02:00
bl00dymarie 223ac148bd Merge branch 'Chore/Fix-android-build' into 'main'
Chore/fix android build

See merge request bloodyhealth/drip!686
2024-10-15 11:36:01 +00:00
bl00dymarie e82dcb6cc1 Chore: Store android keystore properties in separate file 2024-10-07 18:02:05 +02:00
bl00dymarie bd9c586edb Chore: Upgrade react-native to 0.68.5 2024-10-07 18:01:56 +02:00
wunderfisch d492a27797 Merge branch '723-feature-link-faq-in-app' into 'main'
adds a button leading to faq on website to about section in the app

Closes #723

See merge request bloodyhealth/drip!684
2024-10-03 16:35:28 +00:00
wunderfisch 22a451d4e6 Merge branch 'chore/add-condriputers' into 'main'
addding condriputers

See merge request bloodyhealth/drip!682
2024-10-03 16:35:10 +00:00
Lynn ae5f31015b Update README.md for M1 installations, fixed typo 2024-09-18 10:02:11 +00:00
Lynn c7104f7758 Update README.md for M1 installations 2024-09-18 10:00:33 +00:00
wunderfisch 86bdb8a1f8 adds a button leading to faq on website to about section in the app 2024-09-09 21:00:21 +02:00
wunderfisch 4212906917 addding condriputers 2024-02-29 17:54:25 +01:00
11 changed files with 95 additions and 31 deletions
+1 -1
View File
@@ -30,7 +30,7 @@ ios/Index/DataStore
build/ build/
.idea .idea
.gradle .gradle
local.properties *.properties
*.iml *.iml
*.hprof *.hprof
+38 -4
View File
@@ -34,13 +34,31 @@ or clone it with HTTPS
git clone https://gitlab.com/bloodyhealth/drip.git git clone https://gitlab.com/bloodyhealth/drip.git
### 2. Node & yarn version ### 2. Node version
Make sure you are running Node 14 and classic yarn (v.1). It's easiest to switch Node versions using `nvm`, here's how to install NVM: https://github.com/nvm-sh/nvm#installing-and-updating. After installing nvm close the terminal and open it again to be able to use nvm. Make sure you are running Node 14 and classic yarn (v.1). It's easiest to switch Node versions using `nvm`, here's how to install NVM: https://github.com/nvm-sh/nvm#installing-and-updating. After installing nvm close the terminal and open it again to be able to use nvm.
Once you have nvm running you can install node 14: Once you have nvm running you can install node 14:
nvm install v14.19.3 nvm install v14.19.3
#### On Apple Silicon M1
NodeJS 14 does not compile on the M1 architecture, so it has to be installed through Rosetta: https://devzilla.io/using-nodejs-14-with-mac-silicon-m1 .
To activate Rosetta and switch to intel emulation run:
arch -x86_64 zsh
Run
arch
again to verify that it returns "i386".
Now install node 14:
nvm install v14.19.3
### 3. Yarn version
use npm to install yarn: use npm to install yarn:
npm install --global yarn npm install --global yarn
@@ -113,20 +131,36 @@ Minimum system requirements to run iOS app are as follows:
- MacOS 10.15.7 for Mac users - MacOS 10.15.7 for Mac users
- Xcode 13 (command line tools only might be enough) - Xcode 13 (command line tools only might be enough)
i. Install XCode dependencies by running the following command from the root project directory: i. Install yarn dependencies
yarn install ..
ii. Install XCode dependencies by running the following command from the root project directory:
cd ios && pod install && cd .. cd ios && pod install && cd ..
ii. To run app either open drip workspace ('drip.xcworkspace' file) with XCode and run "Build" or run the following command: iii. To run app either open drip workspace ('drip.xcworkspace' file) with XCode and run "Build" or run the following command:
yarn ios yarn ios
iii. If you are building the app with XCode make sure you are running this as well: iiii. If you are building the app with XCode make sure you are running this as well:
yarn start yarn start
### Troubleshooting ### Troubleshooting
#### [MacOS M1] Flipper problems
If a bug in the currently used Flipper version prevents building the project, comment out the respective line in the podfile, like so:
#use_flipper!()
Run
pod install
from the ios directory again to reload the dependencies.
#### [MacOS] Java problems #### [MacOS] Java problems
Make sure that you have Java 1.8 by running `java -version`. Make sure that you have Java 1.8 by running `java -version`.
+18 -2
View File
@@ -1,6 +1,8 @@
apply plugin: "com.android.application" apply plugin: "com.android.application"
import com.android.build.OutputFile import com.android.build.OutputFile
import java.util.Properties
import java.io.FileInputStream
/** /**
* The react.gradle file registers a task for each build variant (e.g. bundleDebugJsAndAssets * The react.gradle file registers a task for each build variant (e.g. bundleDebugJsAndAssets
@@ -125,6 +127,16 @@ def enableHermes = project.ext.react.get("enableHermes", false);
*/ */
def nativeArchitectures = project.getProperties().get("reactNativeDebugArchitectures") def nativeArchitectures = project.getProperties().get("reactNativeDebugArchitectures")
// Create a variable called keystorePropertiesFile, and initialize it to your
// keystore.properties file, in the rootProject folder.
def keystorePropertiesFile = rootProject.file("keystore.properties")
// Initialize a new Properties() object called keystoreProperties.
def keystoreProperties = new Properties()
// Load your keystore.properties file into the keystoreProperties object.
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
android { android {
ndkVersion rootProject.ext.ndkVersion ndkVersion rootProject.ext.ndkVersion
compileSdkVersion rootProject.ext.compileSdkVersion compileSdkVersion rootProject.ext.compileSdkVersion
@@ -134,8 +146,8 @@ android {
applicationId "com.drip" applicationId "com.drip"
minSdkVersion rootProject.ext.minSdkVersion minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion targetSdkVersion rootProject.ext.targetSdkVersion
versionCode 33 versionCode 39
versionName "1.2403.19" versionName "1.2410.29"
ndk { ndk {
abiFilters "armeabi-v7a", "x86", "arm64-v8a", "x86_64" abiFilters "armeabi-v7a", "x86", "arm64-v8a", "x86_64"
} }
@@ -150,6 +162,10 @@ android {
keyPassword 'android' keyPassword 'android'
} }
release { release {
storeFile file('drip-release-key.keystore')
keyAlias keystoreProperties['keyAlias']
keyPassword keystoreProperties['keyPassword']
storePassword keystoreProperties['storePassword']
if (project.hasProperty('DRIP_RELEASE_STORE_FILE')) { if (project.hasProperty('DRIP_RELEASE_STORE_FILE')) {
storeFile file(DRIP_RELEASE_STORE_FILE) storeFile file(DRIP_RELEASE_STORE_FILE)
storePassword DRIP_RELEASE_STORE_PASSWORD storePassword DRIP_RELEASE_STORE_PASSWORD
+4 -3
View File
@@ -49,10 +49,11 @@ allprojects {
} }
ext { ext {
buildToolsVersion = "33.0.2"
minSdkVersion = 21 minSdkVersion = 21
compileSdkVersion = 33 compileSdkVersion = 34
targetSdkVersion = 33 targetSdkVersion = 34
buildToolsVersion = "34.0.0"
soLoaderVersion = "0.10.4+"
if (System.properties['os.arch'] == "aarch64") { if (System.properties['os.arch'] == "aarch64") {
// For M1 Users we need to use the NDK 24 which added support for aarch64 // For M1 Users we need to use the NDK 24 which added support for aarch64
+4
View File
@@ -18,6 +18,10 @@ const AboutSection = () => {
<AppPage title={t('title')}> <AppPage title={t('title')}>
<Segment> <Segment>
<AppText>{t('intro.text')}</AppText> <AppText>{t('intro.text')}</AppText>
<Button isCTA isSmall onPress={() => Linking.openURL(links.faq.url)}>
{t('intro.faq')}
</Button>
<AppText>{t('intro.contact')}</AppText>
<ButtonRow> <ButtonRow>
{[links.email, links.gitlab, links.website].map((link) => ( {[links.email, links.gitlab, links.website].map((link) => (
<Button <Button
+3 -1
View File
@@ -45,7 +45,9 @@
"text": "The drips are developing this app on a volunteer basis. We are always grateful for support. This could mean condriputing to the code, giving feedback, suggesting improvements or features, testing or donating. It helps and motivates us maintaining this app and developing new features. Thank you for your support!" "text": "The drips are developing this app on a volunteer basis. We are always grateful for support. This could mean condriputing to the code, giving feedback, suggesting improvements or features, testing or donating. It helps and motivates us maintaining this app and developing new features. Thank you for your support!"
}, },
"intro": { "intro": {
"text": "Please note that your data is stored locally on your phone and not on a server. This means your data cannot be read by anyone else unless they have access to your phone. We want to ensure that you stay in control of your own data. If you are planning to switch or reset your phone, please remember to export your data before doing so. You can reinstall the app afterwards and import your data.\n\nIf you encounter any technical issues, don't hesitate to contact us via email. You can also contribute to the code base on Gitlab and visit our website." "text": "Please note that your data is stored locally on your phone and not on a server. This means your data cannot be read by anyone else unless they have access to your phone. We want to ensure that you stay in control of your own data. If you are planning to switch or reset your phone, please remember to export your data before doing so. You can reinstall the app afterwards and import your data.\n\nIf you encounter any issues, please take a look at our Frequently Asked Questions page.",
"faq": "FAQ",
"contact": "\nIf your issue is not listed, don't hesitate to contact us via email. You can also contribute to the code base on Gitlab and visit our website."
}, },
"philosophy": { "philosophy": {
"title": "Remember to think for yourself", "title": "Remember to think for yourself",
+4
View File
@@ -39,4 +39,8 @@ export default {
url: 'https://www.flaticon.com', url: 'https://www.flaticon.com',
text: 'Flaticon', text: 'Flaticon',
}, },
faq: {
url: 'https://dripapp.org/faq',
text: 'FAQ',
},
} }
+1 -1
View File
@@ -19,7 +19,7 @@
<key>CFBundlePackageType</key> <key>CFBundlePackageType</key>
<string>APPL</string> <string>APPL</string>
<key>CFBundleShortVersionString</key> <key>CFBundleShortVersionString</key>
<string>1.2403.19</string> <string>1.2410.29</string>
<key>CFBundleSignature</key> <key>CFBundleSignature</key>
<string>????</string> <string>????</string>
<key>CFBundleVersion</key> <key>CFBundleVersion</key>
+2
View File
@@ -57,6 +57,7 @@ export default function setupNotifications(navigate, setDate) {
vibrate: false, vibrate: false,
repeatType: 'day', repeatType: 'day',
channelId: 'drip-channel-id', channelId: 'drip-channel-id',
allowWhileIdle: true,
}) })
} }
}, false) }, false)
@@ -100,6 +101,7 @@ function setupPeriodReminder() {
date: reminderDate.toDate(), date: reminderDate.toDate(),
vibrate: false, vibrate: false,
channelId: 'drip-channel-id', channelId: 'drip-channel-id',
allowWhileIdle: true,
}) })
} }
} }
+5 -4
View File
@@ -1,13 +1,14 @@
{ {
"name": "drip.", "name": "drip.",
"version": "1.2403.19", "version": "1.2410.29",
"contributors": [ "contributors": [
"Julia Friesel <julia.friesel@gmail.com>", "Julia Friesel <julia.friesel@gmail.com>",
"Marie Kochsiek", "Marie Kochsiek",
"Tina Baumann", "Tina Baumann",
"Sofiya Tepikin", "Sofiya Tepikin",
"Mariya Zadnepryanets", "Mariya Zadnepryanets",
"Lisa Hillebrand" "Lisa Hillebrand",
"Martha Dörfler"
], ],
"scripts": { "scripts": {
"start": "react-native start", "start": "react-native start",
@@ -47,7 +48,7 @@
"prop-types": "^15.8.1", "prop-types": "^15.8.1",
"react": "17.0.2", "react": "17.0.2",
"react-i18next": "^12.0.0", "react-i18next": "^12.0.0",
"react-native": "0.68.3", "react-native": "0.68.5",
"react-native-calendars": "^1.1287.0", "react-native-calendars": "^1.1287.0",
"react-native-document-picker": "^8.1.1", "react-native-document-picker": "^8.1.1",
"react-native-fs": "^2.20.0", "react-native-fs": "^2.20.0",
@@ -59,7 +60,7 @@
"react-native-size-matters": "^0.4.0", "react-native-size-matters": "^0.4.0",
"react-native-vector-icons": "^9.2.0", "react-native-vector-icons": "^9.2.0",
"realm": "^10.16.0", "realm": "^10.16.0",
"sympto": "3.0.1" "sympto": "3.0.2"
}, },
"devDependencies": { "devDependencies": {
"@babel/core": "^7.20.2", "@babel/core": "^7.20.2",
+15 -15
View File
@@ -6378,7 +6378,7 @@ promise@^7.1.1:
dependencies: dependencies:
asap "~2.0.3" asap "~2.0.3"
promise@^8.0.3: promise@^8.2.0:
version "8.3.0" version "8.3.0"
resolved "https://registry.yarnpkg.com/promise/-/promise-8.3.0.tgz#8cb333d1edeb61ef23869fbb8a4ea0279ab60e0a" resolved "https://registry.yarnpkg.com/promise/-/promise-8.3.0.tgz#8cb333d1edeb61ef23869fbb8a4ea0279ab60e0a"
integrity sha512-rZPNPKTOYVNEEKFaq1HqTgOwZD+4/YHS5ukLzQCypkj+OkYx7iv0mA91lJlpPPZ8vMau3IIGj5Qlwrx+8iiSmg== integrity sha512-rZPNPKTOYVNEEKFaq1HqTgOwZD+4/YHS5ukLzQCypkj+OkYx7iv0mA91lJlpPPZ8vMau3IIGj5Qlwrx+8iiSmg==
@@ -6508,10 +6508,10 @@ react-native-calendars@^1.1287.0:
optionalDependencies: optionalDependencies:
moment "^2.29.4" moment "^2.29.4"
react-native-codegen@^0.0.17: react-native-codegen@^0.0.18:
version "0.0.17" version "0.0.18"
resolved "https://registry.yarnpkg.com/react-native-codegen/-/react-native-codegen-0.0.17.tgz#83fb814d94061cbd46667f510d2ddba35ffb50ac" resolved "https://registry.yarnpkg.com/react-native-codegen/-/react-native-codegen-0.0.18.tgz#99d6623d65292e8ce3fdb1d133a358caaa2145e7"
integrity sha512-7GIEUmAemH9uWwB6iYXNNsPoPgH06pxzGRmdBzK98TgFBdYJZ7CBuZFPMe4jmHQTPOkQazKZ/w5O6/71JBixmw== integrity sha512-XPI9aVsFy3dvgDZvyGWrFnknNiyb22kg5nHgxa0vjWTH9ENLBgVRZt9A64xHZ8BYihH+gl0p/1JNOCIEUzRPBg==
dependencies: dependencies:
"@babel/parser" "^7.14.0" "@babel/parser" "^7.14.0"
flow-parser "^0.121.0" flow-parser "^0.121.0"
@@ -6601,10 +6601,10 @@ react-native-version@^3.1.0:
resolve-from "^5.0.0" resolve-from "^5.0.0"
semver "^6.0.0" semver "^6.0.0"
react-native@0.68.3: react-native@0.68.5:
version "0.68.3" version "0.68.5"
resolved "https://registry.yarnpkg.com/react-native/-/react-native-0.68.3.tgz#07ac7374acde9bc5e80f9e473e03d6b730528f1c" resolved "https://registry.yarnpkg.com/react-native/-/react-native-0.68.5.tgz#8ba7389e00b757c59b6ea23bf38303d52367d155"
integrity sha512-LPgLQ4e96NWCrJPKlXzKfvlg1ddhfUplsEg00/cfBIMFZPJn2inzo9Rym8I/JYjmRORe4GjGY8kOem72hPm0Lw== integrity sha512-t3kiQ/gumFV+0r/NRSIGtYxanjY4da0utFqHgkMcRPJVwXFWC0Fr8YiOeRGYO1dp8EfrSsOjtfWic/inqVYlbQ==
dependencies: dependencies:
"@jest/create-cache-key-function" "^27.0.1" "@jest/create-cache-key-function" "^27.0.1"
"@react-native-community/cli" "^7.0.3" "@react-native-community/cli" "^7.0.3"
@@ -6626,9 +6626,9 @@ react-native@0.68.3:
metro-source-map "0.67.0" metro-source-map "0.67.0"
nullthrows "^1.1.1" nullthrows "^1.1.1"
pretty-format "^26.5.2" pretty-format "^26.5.2"
promise "^8.0.3" promise "^8.2.0"
react-devtools-core "^4.23.0" react-devtools-core "^4.23.0"
react-native-codegen "^0.0.17" react-native-codegen "^0.0.18"
react-native-gradle-plugin "^0.0.6" react-native-gradle-plugin "^0.0.6"
react-refresh "^0.4.0" react-refresh "^0.4.0"
react-shallow-renderer "16.14.1" react-shallow-renderer "16.14.1"
@@ -7573,10 +7573,10 @@ supports-preserve-symlinks-flag@^1.0.0:
resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09"
integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==
sympto@3.0.1: sympto@3.0.2:
version "3.0.1" version "3.0.2"
resolved "https://registry.yarnpkg.com/sympto/-/sympto-3.0.1.tgz#14a089ee9114f5eb6611c0dd95a1cb6b86701d52" resolved "https://registry.yarnpkg.com/sympto/-/sympto-3.0.2.tgz#8510fe64b2177cd8f9ba3b3af1aaee772dca8a0b"
integrity sha512-eskK/6ZUHyQtl/JPPb1ujYU8xCxek5vMFm6hr8kllu/GaYKi2W2wvFzLU2aQAo3RAyEqewhdXz1//DaK2TAneg== integrity sha512-0C1/aXZFXBhA6LHLch+7jhoO4WXchhOskmCMr83CzFMnQ1z3xaS86t7w7hpWha07tK97QpQPmRsr8g74lEb9jQ==
dependencies: dependencies:
assert "^2.0.0" assert "^2.0.0"
js-joda "^1.9.2" js-joda "^1.9.2"