Skip to content

Commit

Permalink
Merge pull request #131 from RADAR-base/release-1.2.0
Browse files Browse the repository at this point in the history
Release 1.2.0
  • Loading branch information
peyman-mohtashami authored May 22, 2023
2 parents cbde0a1 + 7d15534 commit 4b94b9d
Show file tree
Hide file tree
Showing 135 changed files with 2,574 additions and 1,437 deletions.
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
# RADAR-pRMT

Application to be run on an Android 5 (or later) device. If Bluetooth devices are to be used, the Android device should support Bluetooth Low Energy (Bluetooth 4.0 or later).
Application to be run on an Android 7 (or later) device. If Bluetooth devices are to be used, the Android device should support Bluetooth Low Energy (Bluetooth 4.0 or later).

![Screenshot](/man/screen20161215_edited.png?raw=True "Screenshot 2016-12-15")
![Screenshot](/man/prmt-main-activity.jpg?raw=True "Screenshot 2023-05-04")

To clone this respository, use the command
To clone this repository, use the command

```shell
git clone https://github.com/RADAR-base/radar-prmt-android.git
Expand Down Expand Up @@ -32,7 +32,7 @@ Firebase can be used to remotely configure some device and system parameters, e.
2. Login to a Google account.
3. In the [Firebase console](https://console.firebase.google.com/), add the app (`org.radarcns.android`) to a new Firebase project.
4. Download the `google-services.json` from the Firebase console (under Project Settings) and move the file to the `app/src/release/` folder for release config or `app/src/debug/` folder for debug configuration.
5. [Optional] Set the parameter values on the server. The avaiable parameters can be found in `app/src/main/res/xml/remote_config_defaults.xml`.
5. [Optional] Set the parameter values on the server. The available parameters can be found in `app/src/main/res/xml/remote_config_defaults.xml`.
Note - Set the `unsafe_kafka_connection` parameter to `true` if the server with kafka and schema-registry is using a self-signed certificate over SSL. If the certificate is issued by a valid CA then leave it to `false`. In production, do NOT set this value to `true`.

[Full Firebase guide](https://firebase.google.com/docs/remote-config/use-config-android)
Expand Down
33 changes: 17 additions & 16 deletions app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -3,18 +3,19 @@ apply plugin: 'com.google.android.gms.oss-licenses-plugin'
apply plugin: 'kotlin-android'

android {
compileSdkVersion 32
compileSdkVersion 33
buildToolsVersion '32.0.0'
namespace "org.radarcns.detail"

defaultConfig {
applicationId 'org.radarcns.detail'
minSdkVersion 21
targetSdkVersion 32
versionCode 57
versionName '1.1.0'
minSdkVersion 24
targetSdkVersion 33
versionCode 62
versionName '1.2.0'
manifestPlaceholders = ['appAuthRedirectScheme': 'org.radarbase.passive.app']
multiDexEnabled true
ndkVersion "23.1.7779620"
ndkVersion "25.2.9519653"
}
buildTypes {
release {
Expand All @@ -32,8 +33,9 @@ android {
}
}
packagingOptions {
exclude 'META-INF/ASL2.0'
exclude 'META-INF/LICENSE'
resources {
excludes += ['META-INF/ASL2.0', 'META-INF/LICENSE']
}
}
compileOptions {
targetCompatibility JavaVersion.VERSION_11
Expand Down Expand Up @@ -72,26 +74,25 @@ repositories {
maven { url 'https://repo.thehyve.nl/content/repositories/releases' }
}

ext.radarCommonsVersion = '1.2.0'
ext.radarCommonsVersion = '1.2.4'

dependencies {
api "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"
api "org.radarbase:radar-commons-android:$radarCommonsVersion"

implementation "org.radarbase:radar-android-login-qr:$radarCommonsVersion"

implementation platform('com.google.firebase:firebase-bom:30.5.0')
implementation platform('com.google.firebase:firebase-bom:31.2.2')
implementation 'com.google.android.gms:play-services-oss-licenses:17.0.0'
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"

implementation 'org.slf4j:slf4j-api:2.0.3'
implementation 'org.slf4j:slf4j-api:2.0.6'

implementation 'com.google.firebase:firebase-core'
implementation 'com.google.firebase:firebase-config'
implementation 'com.google.firebase:firebase-crashlytics'
implementation 'com.google.firebase:firebase-analytics'

implementation 'com.gitlab.mvysny.slf4j:slf4j-handroid:2.0.0'
implementation 'com.gitlab.mvysny.slf4j:slf4j-handroid:2.0.4'

implementation "org.radarbase:radar-android-phone:$radarCommonsVersion"
implementation "org.radarbase:radar-android-phone-usage:$radarCommonsVersion"
Expand All @@ -101,15 +102,15 @@ dependencies {
implementation "org.radarbase:radar-android-weather:$radarCommonsVersion"
implementation "org.radarbase:radar-android-audio:$radarCommonsVersion"
implementation "org.radarbase:radar-android-faros:$radarCommonsVersion"
implementation "org.radarbase:radar-android-ppg:$radarCommonsVersion"

implementation 'androidx.lifecycle:lifecycle-process:2.5.1'
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
implementation 'com.google.android.material:material:1.6.1'
implementation 'com.google.android.material:material:1.8.0'
implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
implementation 'androidx.fragment:fragment-ktx:1.5.7'

testImplementation 'junit:junit:4.13.2'
testRuntimeOnly 'org.slf4j:slf4j-simple:2.0.3'
testRuntimeOnly 'org.slf4j:slf4j-simple:2.0.6'
}

tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).all {
Expand Down
Binary file added app/libs/slf4j-handroid-2.0.0-SNAPSHOT.jar
Binary file not shown.
12 changes: 12 additions & 0 deletions app/proguard-rules.pro
Original file line number Diff line number Diff line change
Expand Up @@ -67,3 +67,15 @@

# OkHttp platform used only on JVM and when Conscrypt dependency is available.
-dontwarn okhttp3.internal.platform.ConscryptPlatform

-dontwarn java.beans.ConstructorProperties
-dontwarn java.beans.Transient
-dontwarn org.bouncycastle.jsse.BCSSLParameters
-dontwarn org.bouncycastle.jsse.BCSSLSocket
-dontwarn org.bouncycastle.jsse.provider.BouncyCastleJsseProvider
-dontwarn org.conscrypt.Conscrypt$Version
-dontwarn org.conscrypt.Conscrypt
-dontwarn org.conscrypt.ConscryptHostnameVerifier
-dontwarn org.openjsse.javax.net.ssl.SSLParameters
-dontwarn org.openjsse.javax.net.ssl.SSLSocket
-dontwarn org.openjsse.net.ssl.OpenJSSE
73 changes: 73 additions & 0 deletions app/src/debug/google-services.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
{
"project_info": {
"project_number": "250256119064",
"firebase_url": "https://radar-cns-78f28.firebaseio.com",
"project_id": "radar-cns-78f28",
"storage_bucket": "radar-cns-78f28.appspot.com"
},
"client": [
{
"client_info": {
"mobilesdk_app_id": "1:250256119064:android:f40d0ec34fa2d4ca",
"android_client_info": {
"package_name": "org.radarbase.passive.app"
}
},
"oauth_client": [
{
"client_id": "250256119064-g6o71at9m28ttboflhs8dbdfetjadkvh.apps.googleusercontent.com",
"client_type": 3
}
],
"api_key": [
{
"current_key": "AIzaSyDzSGuSjeEIv-R0ElbSIpoY0r7cG-4SWpk"
}
],
"services": {
"analytics_service": {
"status": 1
},
"appinvite_service": {
"status": 1,
"other_platform_oauth_client": []
},
"ads_service": {
"status": 2
}
}
},
{
"client_info": {
"mobilesdk_app_id": "1:250256119064:android:b6edbb49b79ef2b6",
"android_client_info": {
"package_name": "org.radarcns.detail"
}
},
"oauth_client": [
{
"client_id": "250256119064-g6o71at9m28ttboflhs8dbdfetjadkvh.apps.googleusercontent.com",
"client_type": 3
}
],
"api_key": [
{
"current_key": "AIzaSyDzSGuSjeEIv-R0ElbSIpoY0r7cG-4SWpk"
}
],
"services": {
"analytics_service": {
"status": 1
},
"appinvite_service": {
"status": 1,
"other_platform_oauth_client": []
},
"ads_service": {
"status": 2
}
}
}
],
"configuration_version": "1"
}
117 changes: 64 additions & 53 deletions app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="org.radarcns.detail">
xmlns:tools="http://schemas.android.com/tools">
<uses-feature android:name="android.hardware.bluetooth" android:required="false" tools:replace="required" />
<uses-feature android:name="android.hardware.bluetooth_le" android:required="false" tools:replace="required" />

<uses-permission android:name="com.google.android.gms.permission.AD_ID" tools:node="remove"/>

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />

Expand All @@ -17,37 +18,40 @@
<uses-permission android:name="android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS" />
<uses-permission android:name="android.permission.WAKE_LOCK" />

<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES" />

<uses-permission android:name="android.permission.SET_ALARM"/>
<supports-screens android:largeScreens="true"
android:xlargeScreens="true" />

<application
android:name=".RadarApplicationImpl"
android:allowBackup="true"
android:fullBackupContent="@xml/backup_descriptor"
android:icon="@mipmap/ic_launcher"
android:roundIcon="@mipmap/ic_launcher"
android:installLocation="internalOnly"
android:configChanges="orientation"
android:screenOrientation="userPortrait"
android:label="@string/app_name"
android:theme="@style/AppTheme"
android:name=".RadarApplicationImpl"
android:fullBackupContent="@xml/backup_descriptor"
android:installLocation="internalOnly">
android:roundIcon="@mipmap/ic_launcher"
android:theme="@style/AppTheme" >

<meta-data android:name="firebase_analytics_collection_enabled" android:value="false"/>
<meta-data android:name="google_analytics_adid_collection_enabled" android:value="false"/>
<meta-data android:name="google_analytics_ssaid_collection_enabled" android:value="false"/>
<meta-data android:name="google_analytics_default_allow_ad_personalization_signals" android:value="false"/>

<provider
android:name="androidx.core.content.FileProvider"
android:authorities="${applicationId}.provider"
android:exported="false"
android:grantUriPermissions="true">
android:grantUriPermissions="true" >
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/provider_paths" />
</provider>

<receiver
android:enabled="false"
android:name=".MainActivityBootStarter"
android:exported="true">

android:enabled="false"
android:exported="true" >
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<action android:name="android.intent.action.QUICKBOOT_POWERON" />
Expand All @@ -58,62 +62,68 @@

<activity
android:name=".SplashActivityImpl"
android:screenOrientation="userPortrait"
android:exported="true"
android:noHistory="true"
android:exported="true">
android:screenOrientation="userPortrait" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>

<activity
android:name=".LoginActivityImpl"
android:label="@string/app_name"
android:configChanges="orientation|screenSize"
android:configChanges="keyboardHidden|orientation"
android:screenOrientation="userPortrait"
android:exported="true">
<intent-filter android:label="@string/filter_open_prmt">
<intent-filter android:label="@string/filter_open_prmt" >
<action android:name="android.intent.action.VIEW" />

<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<!-- Accepts URIs that begin with "http://www.example.com/gizmos” -->
<data android:scheme="https"
<data
android:host="radar-base.org"
android:pathPrefix="/prmt" />
<!-- note that the leading "/" is required for pathPrefix-->
android:pathPrefix="/prmt"
android:scheme="https" />
<!-- note that the leading "/" is required for pathPrefix -->
<!-- Accepts URIs that begin with "example://gizmos” -->
<data android:scheme="org.radarbase.prmt"
android:host="radar-base.org" />
<data
android:host="radar-base.org"
android:scheme="org.radarbase.prmt" />
</intent-filter>
</activity>

<activity
android:exported="false"
android:name=".MainActivityImpl"
android:label="@string/app_name"
android:launchMode="singleInstance"
android:configChanges="orientation|screenSize">
android:configChanges="keyboardHidden|orientation"
android:screenOrientation="userPortrait"
android:exported="false"
android:launchMode="singleInstance" >
</activity>

<activity android:name="com.google.android.gms.oss.licenses.OssLicensesMenuActivity"
android:theme="@style/Theme.AppCompat.DayNight.DarkActionBar"/>

<activity android:name="com.google.android.gms.oss.licenses.OssLicensesActivity"
android:theme="@style/Theme.AppCompat.DayNight.DarkActionBar"
android:parentActivityName=".InfoActivity"/>

<activity android:name=".InfoActivity"
android:parentActivityName=".MainActivityImpl"/>
<activity android:name=".SettingsActivity"
android:parentActivityName=".MainActivityImpl"/>
<activity android:name=".UpdatesActivity"
android:parentActivityName=".MainActivityImpl"/>
<service android:name=".RadarServiceImpl"/>
<service android:name=".AuthServiceImpl"/>
<receiver android:name=".UpdateAlarmReceiver"/>

<!-- ATTENTION: This was auto-generated to add Google Play services to your project for
App Indexing. See https://g.co/AppIndexing/AndroidStudio for more information. -->
<activity
android:name="com.google.android.gms.oss.licenses.OssLicensesMenuActivity"
android:screenOrientation="userPortrait"
android:theme="@style/Theme.AppCompat.DayNight.DarkActionBar" />
<activity
android:name="com.google.android.gms.oss.licenses.OssLicensesActivity"
android:screenOrientation="userPortrait"
android:parentActivityName=".InfoActivity"
android:theme="@style/Theme.AppCompat.DayNight.DarkActionBar" />
<activity
android:name=".InfoActivity"
android:screenOrientation="userPortrait"
android:parentActivityName=".MainActivityImpl" />
<activity
android:name=".SettingsActivity"
android:screenOrientation="userPortrait"
android:parentActivityName=".MainActivityImpl" />
<service android:name=".RadarServiceImpl" />
<service android:name=".AuthServiceImpl" />

<!--
ATTENTION: This was auto-generated to add Google Play services to your project for
App Indexing. See https://g.co/AppIndexing/AndroidStudio for more information.
-->
<meta-data
android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version" />
Expand All @@ -122,7 +132,8 @@
android:name=".UncaughtExceptionHandlerContentProvider"
android:authorities="${applicationId}"
android:exported="false"
android:initOrder="101"
android:grantUriPermissions="false" />
android:grantUriPermissions="false"
android:initOrder="101" />
</application>
</manifest>

</manifest>
Binary file removed app/src/main/ic_launcher-web.png
Binary file not shown.
Loading

0 comments on commit 4b94b9d

Please sign in to comment.