[PlayStore] Enrolled first viable PlayStore Version
In order to have AA work properly also on production devices the app needs to be installed from a trusted install source, which is the Google PlayStore. So the app is now rolled out via GooglePlay for Beta-Testers.
This commit is contained in:
15
.idea/deploymentTargetDropDown.xml
generated
15
.idea/deploymentTargetDropDown.xml
generated
@@ -3,7 +3,20 @@
|
|||||||
<component name="deploymentTargetDropDown">
|
<component name="deploymentTargetDropDown">
|
||||||
<value>
|
<value>
|
||||||
<entry key="app">
|
<entry key="app">
|
||||||
<State />
|
<State>
|
||||||
|
<targetSelectedWithDropDown>
|
||||||
|
<Target>
|
||||||
|
<type value="QUICK_BOOT_TARGET" />
|
||||||
|
<deviceKey>
|
||||||
|
<Key>
|
||||||
|
<type value="VIRTUAL_DEVICE_PATH" />
|
||||||
|
<value value="$USER_HOME$/.android/avd/Pixel_7_Pro_API_Baklava.avd" />
|
||||||
|
</Key>
|
||||||
|
</deviceKey>
|
||||||
|
</Target>
|
||||||
|
</targetSelectedWithDropDown>
|
||||||
|
<timeTargetWasSelectedWithDropDown value="2025-04-10T09:27:54.222047395Z" />
|
||||||
|
</State>
|
||||||
</entry>
|
</entry>
|
||||||
</value>
|
</value>
|
||||||
</component>
|
</component>
|
||||||
|
|||||||
1
.idea/gradle.xml
generated
1
.idea/gradle.xml
generated
@@ -15,5 +15,6 @@
|
|||||||
<option name="resolveExternalAnnotations" value="false" />
|
<option name="resolveExternalAnnotations" value="false" />
|
||||||
</GradleProjectSettings>
|
</GradleProjectSettings>
|
||||||
</option>
|
</option>
|
||||||
|
<option name="offlineMode" value="true" />
|
||||||
</component>
|
</component>
|
||||||
</project>
|
</project>
|
||||||
@@ -8,21 +8,37 @@ android {
|
|||||||
namespace 'com.aldo.apps.familyhelpers'
|
namespace 'com.aldo.apps.familyhelpers'
|
||||||
compileSdk 34
|
compileSdk 34
|
||||||
|
|
||||||
|
signingConfigs {
|
||||||
|
myCustomKeystore {
|
||||||
|
storeFile file(keystorePath)
|
||||||
|
keyAlias myKeystoreAlias
|
||||||
|
storePassword myStorePassword
|
||||||
|
keyPassword myKeyPassword
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
defaultConfig {
|
defaultConfig {
|
||||||
applicationId "com.aldo.apps.familyhelpers"
|
applicationId "com.aldo.apps.familyhelpers"
|
||||||
minSdk 32
|
minSdk 32
|
||||||
targetSdk 34
|
targetSdk 34
|
||||||
versionCode 1
|
versionCode 8
|
||||||
versionName "1.0" // ... other configurations
|
versionName "0.2.3"
|
||||||
|
android.buildFeatures.buildConfig true
|
||||||
|
|
||||||
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
||||||
}
|
}
|
||||||
|
|
||||||
buildTypes {
|
buildTypes {
|
||||||
|
debug {
|
||||||
|
signingConfig signingConfigs.myCustomKeystore
|
||||||
|
buildConfigField "String", "GOOGLE_MAPS_API_KEY", "\"${googleMapsApiKeyRelease}\""
|
||||||
|
manifestPlaceholders.google_maps_api_key = googleMapsApiKeyRelease
|
||||||
|
}
|
||||||
release {
|
release {
|
||||||
minifyEnabled false
|
signingConfig signingConfigs.myCustomKeystore
|
||||||
|
|
||||||
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
|
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
|
||||||
|
buildConfigField "String", "GOOGLE_MAPS_API_KEY", "\"${googleMapsApiKeyRelease}\""
|
||||||
|
manifestPlaceholders.google_maps_api_key = googleMapsApiKeyRelease
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
compileOptions {
|
compileOptions {
|
||||||
|
|||||||
@@ -13,14 +13,6 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"oauth_client": [
|
"oauth_client": [
|
||||||
{
|
|
||||||
"client_id": "1057049253579-7pgnva498827l6e88sags7fam36gktpb.apps.googleusercontent.com",
|
|
||||||
"client_type": 1,
|
|
||||||
"android_info": {
|
|
||||||
"package_name": "com.aldo.apps.familyhelpers",
|
|
||||||
"certificate_hash": "1166e18cf665c3cae0c8ada885a5f0f48d95a9f1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"client_id": "1057049253579-6de9kv08ne2ti29lpptlb10egfcn5s06.apps.googleusercontent.com",
|
"client_id": "1057049253579-6de9kv08ne2ti29lpptlb10egfcn5s06.apps.googleusercontent.com",
|
||||||
"client_type": 3
|
"client_type": 3
|
||||||
@@ -28,7 +20,7 @@
|
|||||||
],
|
],
|
||||||
"api_key": [
|
"api_key": [
|
||||||
{
|
{
|
||||||
"current_key": "AIzaSyB7C4QCJEBvS7mFa_DeIZdzqe2hddtl-vk"
|
"current_key": "AIzaSyAkX3425N7vSXsIdmUo84fISB4VY4sWMA8"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"services": {
|
"services": {
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
xmlns:tools="http://schemas.android.com/tools">
|
xmlns:tools="http://schemas.android.com/tools">
|
||||||
|
|
||||||
<uses-feature
|
<uses-feature
|
||||||
android:name="android.hardware.camera"
|
android:name="android.hardware.camera.any"
|
||||||
android:required="false" />
|
android:required="false" />
|
||||||
|
|
||||||
<uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
|
<uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
|
||||||
@@ -21,7 +21,12 @@
|
|||||||
android:targetSdkVersion="34" />
|
android:targetSdkVersion="34" />
|
||||||
|
|
||||||
<uses-feature
|
<uses-feature
|
||||||
android:name="android.software.car.templates_host"/>
|
android:name="android.software.car.templates_host"
|
||||||
|
android:required="false"/>
|
||||||
|
|
||||||
|
<uses-feature
|
||||||
|
android:name="android.hardware.camera.any"
|
||||||
|
android:required="false" />
|
||||||
|
|
||||||
<application
|
<application
|
||||||
android:allowBackup="true"
|
android:allowBackup="true"
|
||||||
@@ -36,7 +41,7 @@
|
|||||||
|
|
||||||
<meta-data
|
<meta-data
|
||||||
android:name="com.google.android.geo.API_KEY"
|
android:name="com.google.android.geo.API_KEY"
|
||||||
android:value="AIzaSyB7C4QCJEBvS7mFa_DeIZdzqe2hddtl-vk" />
|
android:value="${google_maps_api_key}" />
|
||||||
<meta-data android:name="com.google.android.gms.car.application"
|
<meta-data android:name="com.google.android.gms.car.application"
|
||||||
android:resource="@xml/automotive_app_desc"/>
|
android:resource="@xml/automotive_app_desc"/>
|
||||||
<meta-data
|
<meta-data
|
||||||
|
|||||||
@@ -81,19 +81,16 @@ public class HelperGridActivity extends AppCompatActivity {
|
|||||||
* The {@link ActivityResultLauncher} for the sign in of a firebase user.
|
* The {@link ActivityResultLauncher} for the sign in of a firebase user.
|
||||||
*/
|
*/
|
||||||
private final ActivityResultLauncher<Intent> mSignInLauncher =
|
private final ActivityResultLauncher<Intent> mSignInLauncher =
|
||||||
registerForActivityResult(new FirebaseAuthUIActivityResultContract(), this::onSignInResult); /**
|
registerForActivityResult(new FirebaseAuthUIActivityResultContract(), this::onSignInResult);
|
||||||
|
|
||||||
|
/**
|
||||||
* The {@link ActivityResultLauncher} to ask for the NotificationPermission.
|
* The {@link ActivityResultLauncher} to ask for the NotificationPermission.
|
||||||
*/
|
*/
|
||||||
private final ActivityResultLauncher<String> mRequestPermissionLauncher =
|
private final ActivityResultLauncher<String> mRequestPermissionLauncher =
|
||||||
registerForActivityResult(new ActivityResultContracts.RequestPermission(), isGranted -> {
|
registerForActivityResult(new ActivityResultContracts.RequestPermission(), isGranted -> {
|
||||||
if (isGranted) {
|
if (!isGranted) {
|
||||||
// Permission granted, you can post notifications
|
Toast.makeText(HelperGridActivity.this, "Permission denied, cannot continue",
|
||||||
mSleepTimerTile.launchHelper();
|
|
||||||
} else {
|
|
||||||
// Permission denied, handle accordingly
|
|
||||||
Toast.makeText(HelperGridActivity.this, R.string.sleep_timer_show_notifications_rationale,
|
|
||||||
Toast.LENGTH_LONG).show();
|
Toast.LENGTH_LONG).show();
|
||||||
requestNotificationPermission();
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -298,7 +295,7 @@ public class HelperGridActivity extends AppCompatActivity {
|
|||||||
Log.w(TAG, "onSignInResult: User canceled, cannot continue");
|
Log.w(TAG, "onSignInResult: User canceled, cannot continue");
|
||||||
} else {
|
} else {
|
||||||
Log.e(TAG, "onSignInResult: Login failed with errorCode ["
|
Log.e(TAG, "onSignInResult: Login failed with errorCode ["
|
||||||
+ idpResponse.getError().getErrorCode() + "]");
|
+ idpResponse.getError().getErrorCode() + "] == " + idpResponse.getError().getMessage());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -18,4 +18,11 @@ android.useAndroidX=true
|
|||||||
# Enables namespacing of each library's R class so that its R class includes only the
|
# Enables namespacing of each library's R class so that its R class includes only the
|
||||||
# resources declared in the library itself and none from the library's dependencies,
|
# resources declared in the library itself and none from the library's dependencies,
|
||||||
# thereby reducing the size of the R class for that library
|
# thereby reducing the size of the R class for that library
|
||||||
android.nonTransitiveRClass=true
|
android.nonTransitiveRClass=true
|
||||||
|
googleMapsApiKeyDebug=AIzaSyAy5N6gqnWhPwIbuG7-_uS19XMaGQPiaYw
|
||||||
|
googleMapsApiKeyRelease=AIzaSyAInTfubu896jI1LKl-fLyJSMusuiuwc3Y
|
||||||
|
|
||||||
|
keystorePath=../.secrets/AldoApps_KeystoreUpload.jks
|
||||||
|
myKeystoreAlias=upload
|
||||||
|
myStorePassword=p49Js5ewYPZbkvhj
|
||||||
|
myKeyPassword=p49Js5ewYPZbkvhj
|
||||||
|
|||||||
Reference in New Issue
Block a user