Merged develop into master

This commit is contained in:
Dennis Thiessen
2020-10-03 18:19:12 +02:00
51 changed files with 646 additions and 556 deletions

4
.gitignore vendored
View File

@@ -1,7 +1,7 @@
.gradle
/local.properties
/.idea/workspace.xml
/.idea/libraries
/app/release/
.idea
.DS_Store
/build
/captures

Binary file not shown.

Binary file not shown.

116
.idea/codeStyles/Project.xml generated Normal file
View File

@@ -0,0 +1,116 @@
<component name="ProjectCodeStyleConfiguration">
<code_scheme name="Project" version="173">
<codeStyleSettings language="XML">
<indentOptions>
<option name="CONTINUATION_INDENT_SIZE" value="4" />
</indentOptions>
<arrangement>
<rules>
<section>
<rule>
<match>
<AND>
<NAME>xmlns:android</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>xmlns:.*</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
<order>BY_NAME</order>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*:id</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*:name</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>name</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>style</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
<order>BY_NAME</order>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
</AND>
</match>
<order>ANDROID_ATTRIBUTE_ORDER</order>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>.*</XML_NAMESPACE>
</AND>
</match>
<order>BY_NAME</order>
</rule>
</section>
</rules>
</arrangement>
</codeStyleSettings>
</code_scheme>
</component>

6
.idea/gradle.xml generated
View File

@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="GradleMigrationSettings" migrationVersion="1" />
<component name="GradleSettings">
<option name="linkedExternalProjectsSettings">
<GradleProjectSettings>
<compositeConfiguration>
<compositeBuild compositeDefinitionSource="SCRIPT" />
</compositeConfiguration>
<option name="delegatedBuild" value="false" />
<option name="testRunner" value="PLATFORM" />
<option name="distributionType" value="DEFAULT_WRAPPED" />
<option name="externalProjectPath" value="$PROJECT_DIR$" />
<option name="gradleHome" value="$APPLICATION_HOME_DIR$/gradle/gradle-4.1" />

View File

@@ -1,7 +0,0 @@
<component name="InspectionProjectProfileManager">
<settings>
<option name="PROJECT_PROFILE" value="Project Default" />
<option name="USE_PROJECT_PROFILE" value="true" />
<version value="1.0" />
</settings>
</component>

30
.idea/jarRepositories.xml generated Normal file
View File

@@ -0,0 +1,30 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="RemoteRepositoriesConfiguration">
<remote-repository>
<option name="id" value="central" />
<option name="name" value="Maven Central repository" />
<option name="url" value="https://repo1.maven.org/maven2" />
</remote-repository>
<remote-repository>
<option name="id" value="jboss.community" />
<option name="name" value="JBoss Community repository" />
<option name="url" value="https://repository.jboss.org/nexus/content/repositories/public/" />
</remote-repository>
<remote-repository>
<option name="id" value="maven" />
<option name="name" value="maven" />
<option name="url" value="https://maven.fabric.io/public" />
</remote-repository>
<remote-repository>
<option name="id" value="maven2" />
<option name="name" value="maven2" />
<option name="url" value="https://maven.google.com/" />
</remote-repository>
<remote-repository>
<option name="id" value="BintrayJCenter" />
<option name="name" value="BintrayJCenter" />
<option name="url" value="https://jcenter.bintray.com/" />
</remote-repository>
</component>
</project>

21
.idea/misc.xml generated
View File

@@ -2,24 +2,39 @@
<project version="4">
<component name="NullableNotNullManager">
<option name="myDefaultNullable" value="android.support.annotation.Nullable" />
<option name="myDefaultNotNull" value="android.support.annotation.NonNull" />
<option name="myDefaultNotNull" value="androidx.annotation.NonNull" />
<option name="myNullables">
<value>
<list size="4">
<list size="12">
<item index="0" class="java.lang.String" itemvalue="org.jetbrains.annotations.Nullable" />
<item index="1" class="java.lang.String" itemvalue="javax.annotation.Nullable" />
<item index="2" class="java.lang.String" itemvalue="edu.umd.cs.findbugs.annotations.Nullable" />
<item index="3" class="java.lang.String" itemvalue="android.support.annotation.Nullable" />
<item index="4" class="java.lang.String" itemvalue="javax.annotation.CheckForNull" />
<item index="5" class="java.lang.String" itemvalue="androidx.annotation.Nullable" />
<item index="6" class="java.lang.String" itemvalue="android.annotation.Nullable" />
<item index="7" class="java.lang.String" itemvalue="androidx.annotation.RecentlyNullable" />
<item index="8" class="java.lang.String" itemvalue="org.checkerframework.checker.nullness.qual.Nullable" />
<item index="9" class="java.lang.String" itemvalue="org.checkerframework.checker.nullness.compatqual.NullableDecl" />
<item index="10" class="java.lang.String" itemvalue="org.checkerframework.checker.nullness.compatqual.NullableType" />
<item index="11" class="java.lang.String" itemvalue="com.android.annotations.Nullable" />
</list>
</value>
</option>
<option name="myNotNulls">
<value>
<list size="4">
<list size="11">
<item index="0" class="java.lang.String" itemvalue="org.jetbrains.annotations.NotNull" />
<item index="1" class="java.lang.String" itemvalue="javax.annotation.Nonnull" />
<item index="2" class="java.lang.String" itemvalue="edu.umd.cs.findbugs.annotations.NonNull" />
<item index="3" class="java.lang.String" itemvalue="android.support.annotation.NonNull" />
<item index="4" class="java.lang.String" itemvalue="androidx.annotation.NonNull" />
<item index="5" class="java.lang.String" itemvalue="android.annotation.NonNull" />
<item index="6" class="java.lang.String" itemvalue="androidx.annotation.RecentlyNonNull" />
<item index="7" class="java.lang.String" itemvalue="org.checkerframework.checker.nullness.qual.NonNull" />
<item index="8" class="java.lang.String" itemvalue="org.checkerframework.checker.nullness.compatqual.NonNullDecl" />
<item index="9" class="java.lang.String" itemvalue="org.checkerframework.checker.nullness.compatqual.NonNullType" />
<item index="10" class="java.lang.String" itemvalue="com.android.annotations.NonNull" />
</list>
</value>
</option>

4
.idea/modules.xml generated
View File

@@ -2,8 +2,8 @@
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/RiskAhead-Android.iml" filepath="$PROJECT_DIR$/RiskAhead-Android.iml" />
<module fileurl="file://$PROJECT_DIR$/app/app.iml" filepath="$PROJECT_DIR$/app/app.iml" />
<module fileurl="file://$PROJECT_DIR$/RiskAhead-Android.iml" filepath="$PROJECT_DIR$/RiskAhead-Android.iml" group="RiskAhead-Android" />
<module fileurl="file://$PROJECT_DIR$/app/app.iml" filepath="$PROJECT_DIR$/app/app.iml" group="RiskAhead-Android/app" />
</modules>
</component>
</project>

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<module external.linked.project.id="RiskAhead-Android" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$" external.system.id="GRADLE" type="JAVA_MODULE" version="4">
<module external.linked.project.id="RiskAhead-Android" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$" external.system.id="GRADLE" external.system.module.group="" external.system.module.version="unspecified" type="JAVA_MODULE" version="4">
<component name="FacetManager">
<facet type="java-gradle" name="Java-Gradle">
<configuration>

View File

@@ -1,9 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<module external.linked.project.id=":app" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$/.." external.system.id="GRADLE" type="JAVA_MODULE" version="4">
<module external.linked.project.id=":app" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$/.." external.system.id="GRADLE" external.system.module.group="RiskAhead-Android" external.system.module.version="unspecified" type="JAVA_MODULE" version="4">
<component name="FacetManager">
<facet type="android-gradle" name="Android-Gradle">
<configuration>
<option name="GRADLE_PROJECT_PATH" value=":app" />
<option name="LAST_SUCCESSFUL_SYNC_AGP_VERSION" value="4.0.1" />
<option name="LAST_KNOWN_AGP_VERSION" value="4.0.1" />
</configuration>
</facet>
<facet type="android" name="Android">
@@ -17,32 +19,30 @@
<option name="ALLOW_USER_CONFIGURATION" value="false" />
<option name="MANIFEST_FILE_RELATIVE_PATH" value="/src/main/AndroidManifest.xml" />
<option name="RES_FOLDER_RELATIVE_PATH" value="/src/main/res" />
<option name="RES_FOLDERS_RELATIVE_PATH" value="file://$MODULE_DIR$/src/main/res;file://$MODULE_DIR$/build/generated/fabric/res/debug;file://$MODULE_DIR$/build/generated/res/google-services/debug;file://$MODULE_DIR$/build/generated/res/resValues/debug" />
<option name="TEST_RES_FOLDERS_RELATIVE_PATH" value="" />
<option name="RES_FOLDERS_RELATIVE_PATH" value="file://$MODULE_DIR$/src/main/res;file://$MODULE_DIR$/src/debug/res;file://$MODULE_DIR$/build/generated/res/google-services/debug;file://$MODULE_DIR$/build/generated/crashlytics/res/debug;file://$MODULE_DIR$/build/generated/res/rs/debug" />
<option name="TEST_RES_FOLDERS_RELATIVE_PATH" value="file://$MODULE_DIR$/src/androidTest/res;file://$MODULE_DIR$/src/test/res;file://$MODULE_DIR$/src/androidTestDebug/res;file://$MODULE_DIR$/src/testDebug/res;file://$MODULE_DIR$/build/generated/res/rs/androidTest/debug" />
<option name="ASSETS_FOLDER_RELATIVE_PATH" value="/src/main/assets" />
</configuration>
</facet>
</component>
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8">
<output url="file://$MODULE_DIR$/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes" />
<output-test url="file://$MODULE_DIR$/build/intermediates/javac/debugUnitTest/compileDebugUnitTestJavaWithJavac/classes" />
<output url="file://$MODULE_DIR$/build/intermediates/javac/debug/classes" />
<output-test url="file://$MODULE_DIR$/build/intermediates/javac/debugUnitTest/classes" />
<exclude-output />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/apt/debug" isTestSource="false" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/aidl_source_output_dir/debug/compileDebugAidl/out" isTestSource="false" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/ap_generated_sources/debug/out" isTestSource="false" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/aidl_source_output_dir/debug/out" isTestSource="false" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/buildConfig/debug" isTestSource="false" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/renderscript_source_output_dir/debug/compileDebugRenderscript/out" isTestSource="false" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/fabric/res/debug" type="java-resource" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/res/google-services/debug" type="java-resource" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/res/rs/debug" type="java-resource" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/res/resValues/debug" type="java-resource" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/apt/androidTest/debug" isTestSource="true" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/aidl_source_output_dir/debugAndroidTest/compileDebugAndroidTestAidl/out" isTestSource="true" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/renderscript_source_output_dir/debug/out" isTestSource="false" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/res/google-services/debug" type="java-resource" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/crashlytics/res/debug" type="java-resource" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/res/rs/debug" type="java-resource" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/ap_generated_sources/debugAndroidTest/out" isTestSource="true" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/aidl_source_output_dir/debugAndroidTest/out" isTestSource="true" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/buildConfig/androidTest/debug" isTestSource="true" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/renderscript_source_output_dir/debugAndroidTest/compileDebugAndroidTestRenderscript/out" isTestSource="true" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/res/rs/androidTest/debug" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/res/resValues/androidTest/debug" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/apt/test/debug" isTestSource="true" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/renderscript_source_output_dir/debugAndroidTest/out" isTestSource="true" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/res/rs/androidTest/debug" type="java-test-resource" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/ap_generated_sources/debugUnitTest/out" isTestSource="true" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/src/debug/res" type="java-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/debug/resources" type="java-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/debug/assets" type="java-resource" />
@@ -50,13 +50,6 @@
<sourceFolder url="file://$MODULE_DIR$/src/debug/java" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/debug/rs" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/debug/shaders" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/testDebug/res" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/testDebug/resources" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/testDebug/assets" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/testDebug/aidl" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/testDebug/java" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/testDebug/rs" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/testDebug/shaders" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/res" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/resources" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/assets" type="java-test-resource" />
@@ -64,6 +57,13 @@
<sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/java" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/rs" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/shaders" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/testDebug/res" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/testDebug/resources" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/testDebug/assets" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/testDebug/aidl" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/testDebug/java" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/testDebug/rs" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/testDebug/shaders" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/main/res" type="java-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/main/assets" type="java-resource" />
@@ -85,157 +85,119 @@
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/test/rs" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/test/shaders" isTestSource="true" />
<excludeFolder url="file://$MODULE_DIR$/build/generated/not_namespaced_r_class_sources" />
<excludeFolder url="file://$MODULE_DIR$/build/generated/source/r" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/annotation_processor_list" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/apk_list" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/blame" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/build-info" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/bundle_manifest" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/check_manifest_result" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/compatible_screen_manifest" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/duplicate_classes_check" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental-runtime-classes" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental-verifier" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/instant-run-apk" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/instant_app_manifest" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/instant_run_app_info_output_file" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/instant_run_main_apk_resources" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/instant_run_merged_manifests" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/instant_run_split_apk_resources" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/javac" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/legacy_multidex_aapt_derived_proguard_rules" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/legacy_multidex_main_dex_list" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/lint_jar" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/manifest-checker" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/merged-not-compiled-resources" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/merged_assets" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/merged_jni_libs" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/merged_manifests" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/merged_shaders" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/metadata_application_id" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/metadata_feature_manifest" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/prebuild" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/processed_res" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/proguard-files" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/proguard-rules" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/reload-dex" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/res" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/res_stripped" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/resources" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/shader_assets" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/signing_config" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/split-apk" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/symbols" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/tmp" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/transforms" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/validate_signing_config" />
<excludeFolder url="file://$MODULE_DIR$/build/outputs" />
<excludeFolder url="file://$MODULE_DIR$/build/reports" />
<excludeFolder url="file://$MODULE_DIR$/build/tmp" />
<excludeFolder url="file://$MODULE_DIR$/build" />
</content>
<orderEntry type="jdk" jdkName="Android API 28 Platform" jdkType="Android SDK" />
<orderEntry type="jdk" jdkName="Android API 29 Platform" jdkType="Android SDK" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-ads-identifier:16.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.documentfile:documentfile:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-ads-lite:17.2.1@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.zxing:core:3.3.0@jar" level="project" />
<orderEntry type="library" name="Gradle: androidx.customview:customview:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-ads-base:17.2.1@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.firebase:firebase-core:16.0.9@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.asynclayoutinflater:asynclayoutinflater:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.facebook.android:facebook-common:4.42.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.facebook.android:facebook-login:4.42.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-maps:16.1.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.slidingpanelayout:slidingpanelayout:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.media:media:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.squareup.retrofit2:retrofit:2.3.0@jar" level="project" />
<orderEntry type="library" name="Gradle: com.mikepenz:materialize:1.1.2@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.coordinatorlayout:coordinatorlayout:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-auth:16.0.1@aar" level="project" />
<orderEntry type="library" name="Gradle: com.squareup.okhttp3:okhttp:3.8.0@jar" level="project" />
<orderEntry type="library" name="Gradle: androidx.legacy:legacy-support-v4:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.multidex:multidex:2.0.1@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-plus:16.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.viewpager:viewpager:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.appcompat:appcompat:1.0.2@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-gcm:16.1.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.browser:browser:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.parse.bolts:bolts-applinks:1.4.0@jar" level="project" />
<orderEntry type="library" name="Gradle: com.crashlytics.sdk.android:beta:1.2.9@aar" level="project" />
<orderEntry type="library" name="Gradle: com.mikepenz:google-material-typeface:3.0.1.2.original@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.legacy:legacy-support-core-utils:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.print:print:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-measurement:16.5.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.arch.core:core-common:2.0.0@jar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-iid:16.0.1@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.firebase:firebase-common:16.1.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.facebook.android:facebook-core:4.42.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.core:core:1.0.1@aar" level="project" />
<orderEntry type="library" name="Gradle: com.mikepenz:materialdrawer:6.0.8@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.firebase:firebase-measurement-connector:17.0.1@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.auto.value:auto-value-annotations:1.6@jar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-measurement-sdk-api:16.5.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.material:material:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.drawerlayout:drawerlayout:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-measurement-base:16.5.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.localbroadcastmanager:localbroadcastmanager:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.cardview:cardview:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.recyclerview:recyclerview:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.lifecycle:lifecycle-runtime:2.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.lifecycle:lifecycle-livedata-core:2.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.cursoradapter:cursoradapter:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.mikepenz:iconics-core:3.0.4@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.vectordrawable:vectordrawable:1.0.1@aar" level="project" />
<orderEntry type="library" name="Gradle: com.squareup.retrofit2:converter-gson:2.3.0@jar" level="project" />
<orderEntry type="library" name="Gradle: androidx.interpolator:interpolator:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.fragment:fragment:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.crashlytics.sdk.android:crashlytics-core:2.6.3@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-audience:16.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-location:16.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-basement:16.2.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-auth-api-phone:16.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-places-placereport:16.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.firebase:firebase-iid:17.1.2@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.arch.core:core-runtime:2.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.mikepenz:fastadapter-commons:3.2.7@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-measurement-sdk:16.5.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.swiperefreshlayout:swiperefreshlayout:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.legacy:legacy-support-core-ui:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-auth-base:16.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.loader:loader:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-ads:17.2.1@aar" level="project" />
<orderEntry type="library" name="Gradle: com.parse.bolts:bolts-android:1.4.0@jar" level="project" />
<orderEntry type="library" name="Gradle: com.parse.bolts:bolts-tasks:1.4.0@jar" level="project" />
<orderEntry type="library" name="Gradle: com.squareup.okio:okio:1.13.0@jar" level="project" />
<orderEntry type="library" name="Gradle: com.google.firebase:firebase-iid-interop:16.0.1@aar" level="project" />
<orderEntry type="library" name="Gradle: com.mikepenz:fastadapter-extensions-expandable:3.2.7@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.lifecycle:lifecycle-livedata:2.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: io.fabric.sdk.android:fabric:1.4.3@aar" level="project" />
<orderEntry type="library" name="Gradle: com.mcxiaoke.volley:library:1.0.19@jar" level="project" />
<orderEntry type="library" name="Gradle: androidx.vectordrawable:vectordrawable-animated:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.lifecycle:lifecycle-common:2.0.0@jar" level="project" />
<orderEntry type="library" name="Gradle: androidx.versionedparcelable:versionedparcelable:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.mikepenz:fastadapter:3.2.7@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-stats:16.0.1@aar" level="project" />
<orderEntry type="library" name="Gradle: com.crashlytics.sdk.android:answers:1.4.2@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.lifecycle:lifecycle-viewmodel:2.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.firebase:firebase-analytics:16.5.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-base:16.0.1@aar" level="project" />
<orderEntry type="library" name="Gradle: com.twitter.sdk.android:twitter-core:3.3.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.transition:transition:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.annotation:annotation:1.0.0@jar" level="project" />
<orderEntry type="library" name="Gradle: com.crashlytics.sdk.android:crashlytics:2.9.4@aar" level="project" />
<orderEntry type="library" name="Gradle: com.beardedhen:androidbootstrap:2.3.2@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.code.gson:gson:2.8.2@jar" level="project" />
<orderEntry type="library" name="Gradle: com.google.maps.android:android-maps-utils:0.5@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-measurement-api:16.5.0@aar" level="project" />
<orderEntry type="library" scope="TEST" name="Gradle: androidx.multidex:multidex-instrumentation:2.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-measurement-impl:16.5.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-gass:17.2.1@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.collection:collection:1.0.0@jar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-tasks:16.0.1@aar" level="project" />
<orderEntry type="library" name="Gradle: android-android-28" level="project" />
<orderEntry type="library" name="Gradle: com.parse.bolts:bolts-android:1.4.0@jar" level="project" />
<orderEntry type="library" name="Gradle: com.parse.bolts:bolts-applinks:1.4.0@jar" level="project" />
<orderEntry type="library" name="Gradle: com.parse.bolts:bolts-tasks:1.4.0@jar" level="project" />
<orderEntry type="library" name="Gradle: com.google.firebase:firebase-encoders:16.0.0@jar" level="project" />
<orderEntry type="library" name="Gradle: androidx.collection:collection:1.1.0@jar" level="project" />
<orderEntry type="library" name="Gradle: androidx.lifecycle:lifecycle-common:2.1.0@jar" level="project" />
<orderEntry type="library" name="Gradle: androidx.arch.core:core-common:2.1.0@jar" level="project" />
<orderEntry type="library" name="Gradle: androidx.annotation:annotation:1.1.0@jar" level="project" />
<orderEntry type="library" name="Gradle: com.google.zxing:core:3.3.0@jar" level="project" />
<orderEntry type="library" name="Gradle: com.google.guava:listenablefuture:1.0@jar" level="project" />
<orderEntry type="library" name="Gradle: com.squareup.retrofit2:converter-gson:2.3.0@jar" level="project" />
<orderEntry type="library" name="Gradle: com.squareup.retrofit2:retrofit:2.3.0@jar" level="project" />
<orderEntry type="library" name="Gradle: com.squareup.okhttp3:okhttp:3.12.1@jar" level="project" />
<orderEntry type="library" name="Gradle: com.squareup.okio:okio:1.15.0@jar" level="project" />
<orderEntry type="library" name="Gradle: com.google.code.gson:gson:2.8.5@jar" level="project" />
<orderEntry type="library" name="Gradle: com.google.dagger:dagger:2.27@jar" level="project" />
<orderEntry type="library" name="Gradle: javax.inject:javax.inject:1@jar" level="project" />
<orderEntry type="library" name="Gradle: com.mcxiaoke.volley:library:1.0.19@jar" level="project" />
<orderEntry type="library" name="Gradle: androidx.multidex:multidex:2.0.1@aar" level="project" />
<orderEntry type="library" name="Gradle: com.facebook.android:facebook-login:4.42.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.facebook.android:facebook-common:4.42.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.facebook.android:facebook-core:4.42.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.mikepenz:materialdrawer:6.0.8@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-ads:19.4.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.browser:browser:1.2.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.material:material:1.2.1@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.cardview:cardview:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.mikepenz:fastadapter-extensions-expandable:3.2.7@aar" level="project" />
<orderEntry type="library" name="Gradle: com.mikepenz:fastadapter-commons:3.2.7@aar" level="project" />
<orderEntry type="library" name="Gradle: com.mikepenz:fastadapter:3.2.7@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.appcompat:appcompat:1.2.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.beardedhen:androidbootstrap:2.3.2@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.firebase:firebase-crashlytics-ndk:17.2.2@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.firebase:firebase-crashlytics:17.2.2@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.datatransport:transport-backend-cct:2.3.1@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.datatransport:transport-runtime:2.2.4@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.datatransport:transport-api:2.2.1@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.firebase:firebase-core:17.5.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.firebase:firebase-analytics:17.5.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-measurement-api:17.5.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.firebase:firebase-installations:16.3.3@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.firebase:firebase-common:19.3.1@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.firebase:firebase-components:16.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.firebase:firebase-encoders-json:17.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.viewpager2:viewpager2:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.recyclerview:recyclerview:1.1.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.legacy:legacy-support-v4:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-gcm:17.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-auth:18.1.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-plus:17.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-location:17.1.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-maps:17.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.firebase:firebase-installations-interop:16.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-auth-api-phone:17.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-auth-base:17.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-iid:17.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-audience:17.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-base:17.3.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-gass:19.4.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-tasks:17.1.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.firebase:firebase-measurement-connector:18.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-measurement:17.5.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-measurement-sdk:17.5.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-measurement-impl:17.5.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-stats:17.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-places-placereport:17.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-ads-identifier:17.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-ads-lite:19.4.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-measurement-sdk-api:17.5.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-measurement-base:17.5.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-basement:17.3.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.fragment:fragment:1.1.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.appcompat:appcompat-resources:1.2.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.legacy:legacy-support-core-ui:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.drawerlayout:drawerlayout:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.media:media:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.legacy:legacy-support-core-utils:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.coordinatorlayout:coordinatorlayout:1.1.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.transition:transition:1.2.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.vectordrawable:vectordrawable-animated:1.1.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.vectordrawable:vectordrawable:1.1.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.loader:loader:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.viewpager:viewpager:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.slidingpanelayout:slidingpanelayout:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.customview:customview:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.activity:activity:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.swiperefreshlayout:swiperefreshlayout:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.asynclayoutinflater:asynclayoutinflater:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.core:core:1.3.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.cursoradapter:cursoradapter:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.lifecycle:lifecycle-runtime:2.1.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.versionedparcelable:versionedparcelable:1.1.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.lifecycle:lifecycle-viewmodel:2.1.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.documentfile:documentfile:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.localbroadcastmanager:localbroadcastmanager:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.print:print:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.interpolator:interpolator:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.savedstate:savedstate:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.lifecycle:lifecycle-livedata:2.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.lifecycle:lifecycle-livedata-core:2.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.arch.core:core-runtime:2.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.twitter.sdk.android:twitter-core:3.3.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.mikepenz:iconics-core:3.0.4@aar" level="project" />
<orderEntry type="library" name="Gradle: com.mikepenz:google-material-typeface:3.0.1.2.original@aar" level="project" />
<orderEntry type="library" name="Gradle: com.mikepenz:materialize:1.1.2@aar" level="project" />
<orderEntry type="library" name="Gradle: androidx.annotation:annotation-experimental:1.0.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.android.gms:play-services-ads-base:19.4.0@aar" level="project" />
<orderEntry type="library" name="Gradle: com.google.maps.android:android-maps-utils:0.5@aar" level="project" />
<orderEntry type="library" name="Gradle: android-android-29" level="project" />
</component>
</module>

View File

@@ -1,16 +1,17 @@
apply plugin: 'com.android.application'
apply plugin: 'io.fabric'
apply plugin: 'com.google.gms.google-services'
apply plugin: 'com.google.firebase.crashlytics'
android {
compileSdkVersion 28
buildToolsVersion '28.0.3'
compileSdkVersion 29
buildToolsVersion '29.0.2'
defaultConfig {
applicationId "org.deke.risk.riskahead"
minSdkVersion 19
targetSdkVersion 28
versionCode 55
versionName "3.2.0"
targetSdkVersion 29
versionCode 58
versionName "3.2.2"
multiDexEnabled true
}
buildTypes {
@@ -48,34 +49,31 @@ dependencies {
transitive = true
}
implementation('com.crashlytics.sdk.android:crashlytics:2.9.4@aar') {
transitive = true
}
implementation 'com.google.firebase:firebase-crashlytics:17.2.2'
implementation 'com.google.firebase:firebase-crashlytics-ndk:17.2.2'
implementation 'com.mikepenz:iconics-core:3.0.3@aar'
implementation 'com.mikepenz:iconics-core:3.0.4@aar'
implementation 'com.mikepenz:google-material-typeface:3.0.1.2.original@aar'
implementation('com.mikepenz:materialdrawer:6.0.8@aar') {
transitive = true
}
implementation 'androidx.browser:browser:1.0.0'
implementation 'androidx.browser:browser:1.2.0'
implementation 'androidx.cardview:cardview:1.0.0'
implementation 'androidx.appcompat:appcompat:1.0.2'
implementation 'androidx.appcompat:appcompat:1.2.0'
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
implementation 'com.google.android.material:material:1.0.0'
implementation 'com.google.android.material:material:1.2.1'
implementation 'com.google.android.gms:play-services-auth:16.0.1'
implementation 'com.google.android.gms:play-services-gcm:16.1.0'
implementation 'com.google.android.gms:play-services-plus:16.0.0'
implementation 'com.google.android.gms:play-services-location:16.0.0'
implementation 'com.google.android.gms:play-services-ads:17.2.1'
implementation 'com.google.android.gms:play-services-maps:16.1.0'
implementation 'com.google.android.gms:play-services-auth:18.1.0'
implementation 'com.google.android.gms:play-services-gcm:17.0.0'
implementation 'com.google.android.gms:play-services-plus:17.0.0'
implementation 'com.google.android.gms:play-services-location:17.1.0'
implementation 'com.google.android.gms:play-services-ads:19.4.0'
implementation 'com.google.android.gms:play-services-maps:17.0.0'
implementation 'com.google.maps.android:android-maps-utils:0.5'
implementation 'com.google.code.gson:gson:2.8.2'
implementation 'com.google.code.gson:gson:2.8.5'
implementation 'com.beardedhen:androidbootstrap:2.3.2'
implementation 'com.mcxiaoke.volley:library:1.0.19'
implementation 'com.google.firebase:firebase-core:16.0.9'
implementation 'com.google.firebase:firebase-core:17.5.0'
}
apply plugin: 'com.google.gms.google-services'

View File

@@ -38,7 +38,7 @@ import org.json.JSONObject;
import com.android.volley.Request.Method;
import com.android.volley.toolbox.StringRequest;
import com.beardedhen.androidbootstrap.BootstrapButton;
import com.crashlytics.android.Crashlytics;
import com.google.firebase.crashlytics.FirebaseCrashlytics;
import java.util.HashMap;
import java.util.Map;
@@ -112,7 +112,7 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
if(connectivityManager != null){
activeNetworkInfo = connectivityManager.getActiveNetworkInfo();
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get connectivityManager");
FirebaseCrashlytics.getInstance().log("Could not get connectivityManager");
}
if(activeNetworkInfo == null){
@@ -284,8 +284,8 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
}
}
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught");
FirebaseCrashlytics.getInstance().recordException(e);
}
}, error -> {
}) {
@@ -332,8 +332,8 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
}
}
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught");
FirebaseCrashlytics.getInstance().recordException(e);
}
}, error -> {
}) {
@@ -346,8 +346,8 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
try {
versionCode = getPackageManager().getPackageInfo(getPackageName(), 0).versionCode;
} catch (PackageManager.NameNotFoundException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught");
FirebaseCrashlytics.getInstance().recordException(e);
}
params.put("version", Integer.toString(versionCode));
@@ -500,16 +500,16 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
finish();
} else {
String errorMsg = jObj.getString("error_msg");
Crashlytics.log(Log.ERROR, TAG, "Error at social media login (Server returned error): " + errorMsg);
FirebaseCrashlytics.getInstance().log("Error at social media login (Server returned error): " + errorMsg);
Toast.makeText(getApplicationContext(), getResources().getString(R.string.txt_errormsg_login)+getResources().getString(R.string.txt_errormsg_suffix), Toast.LENGTH_LONG).show();
}
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught");
FirebaseCrashlytics.getInstance().recordException(e);
}
}, error -> {
Crashlytics.log(Log.ERROR, TAG, "Social Media Login Error: " + error.getMessage());
FirebaseCrashlytics.getInstance().log("Social Media Login Error: " + error.getMessage());
Toast.makeText(getApplicationContext(), getResources().getString(R.string.txt_errormsg_login)+getResources().getString(R.string.txt_errormsg_suffix), Toast.LENGTH_LONG).show();
hideDialog();
}) {
@@ -595,15 +595,15 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
}
} else {
String errorMsg = jObj.getString("error_msg");
Crashlytics.log(Log.ERROR, TAG, "Error at login (Server returned error): " + errorMsg);
FirebaseCrashlytics.getInstance().log("Error at login (Server returned error): " + errorMsg);
Toast.makeText(getApplicationContext(), getResources().getString(R.string.txt_errormsg_login), Toast.LENGTH_LONG).show();
}
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught");
FirebaseCrashlytics.getInstance().recordException(e);
}
}, error -> {
Crashlytics.log(Log.ERROR, TAG, "Login Error: " + error.getMessage());
FirebaseCrashlytics.getInstance().log("Login Error: " + error.getMessage());
Toast.makeText(getApplicationContext(), getResources().getString(R.string.txt_errormsg_login), Toast.LENGTH_LONG).show();
hideDialog();
}) {
@@ -639,15 +639,15 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
} else {
String errorMsg = jObj.getString("error_msg");
Crashlytics.log(Log.ERROR, TAG, "Error occured: "+errorMsg);
FirebaseCrashlytics.getInstance().log("Error occured: "+errorMsg);
Toast.makeText(getApplicationContext(), getResources().getString(R.string.txt_errormsg_register), Toast.LENGTH_LONG).show();
}
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "Exception caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("Exception caught");
FirebaseCrashlytics.getInstance().recordException(e);
}
}, error -> {
Crashlytics.log(Log.ERROR, TAG, "Registration Error: " + error.getMessage());
FirebaseCrashlytics.getInstance().log("Registration Error: " + error.getMessage());
Toast.makeText(getApplicationContext(),
getResources().getString(R.string.txt_errormsg_register), Toast.LENGTH_LONG).show();
hideDialog();
@@ -681,15 +681,15 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
} else {
String errorMsg = jObj.getString("error_msg");
Crashlytics.log(Log.ERROR, TAG, "Error occured: "+errorMsg);
FirebaseCrashlytics.getInstance().log("Error occured: "+errorMsg);
Toast.makeText(getApplicationContext(), getResources().getString(R.string.txt_errormsg_register), Toast.LENGTH_LONG).show();
}
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught");
FirebaseCrashlytics.getInstance().recordException(e);
}
}, error -> {
Crashlytics.log(Log.ERROR, TAG, "Registration Error: " + error.getMessage());
FirebaseCrashlytics.getInstance().log("Registration Error: " + error.getMessage());
Toast.makeText(getApplicationContext(),
getResources().getString(R.string.txt_errormsg_register), Toast.LENGTH_LONG).show();
hideDialog();
@@ -820,17 +820,17 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
showMessage(getString(R.string.alert_passwordreset_confirmation));
} else {
String errorMsg = jObj.getString("error_msg");
Crashlytics.log(Log.ERROR, TAG, "Reset PW returned error value: "+errorMsg);
FirebaseCrashlytics.getInstance().log("Reset PW returned error value: "+errorMsg);
Toast.makeText(getApplicationContext(),
getResources().getString(R.string.txt_errormsg_getpwreset), Toast.LENGTH_LONG).show();
}
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught");
FirebaseCrashlytics.getInstance().recordException(e);
}
}, error -> {
Crashlytics.log(Log.ERROR, TAG, "E-Mail pw resend Error: " + error.getMessage());
FirebaseCrashlytics.getInstance().log("E-Mail pw resend Error: " + error.getMessage());
Toast.makeText(getApplicationContext(),
getResources().getString(R.string.txt_errormsg_getpwreset), Toast.LENGTH_LONG).show();
hideDialog();
@@ -856,17 +856,17 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
boolean error = jObj.getBoolean("error");
if (error) {
String errorMsg = jObj.getString("error_msg");
Crashlytics.log(Log.ERROR, TAG,"Resend E-Mail returned error value: "+errorMsg);
FirebaseCrashlytics.getInstance().log("Resend E-Mail returned error value: "+errorMsg);
Toast.makeText(getApplicationContext(),
getResources().getString(R.string.txt_errormsg_getactivationlink) + ":"+errorMsg, Toast.LENGTH_LONG).show();
}
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught");
FirebaseCrashlytics.getInstance().recordException(e);
}
}, error -> {
Crashlytics.log(Log.ERROR, TAG, "E-Mail pw resend error: " + error.getMessage());
FirebaseCrashlytics.getInstance().log("E-Mail pw resend error: " + error.getMessage());
Toast.makeText(getApplicationContext(),
getResources().getString(R.string.txt_errormsg_getactivationlink), Toast.LENGTH_LONG).show();
hideDialog();
@@ -906,15 +906,15 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
.show();
} else if (error){
String errorMsg = jObj.getString("error_msg");
Crashlytics.log(Log.ERROR, TAG, "Error occured: "+errorMsg);
FirebaseCrashlytics.getInstance().log("Error occured: "+errorMsg);
Toast.makeText(getApplicationContext(), getResources().getString(R.string.txt_errormsg_register), Toast.LENGTH_LONG).show();
}
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught");
FirebaseCrashlytics.getInstance().recordException(e);
}
}, error -> {
Crashlytics.log(Log.ERROR, TAG, "Registration Error: " + error.getMessage());
FirebaseCrashlytics.getInstance().log("Registration Error: " + error.getMessage());
Toast.makeText(getApplicationContext(),
getResources().getString(R.string.txt_errormsg_register), Toast.LENGTH_LONG).show();
hideDialog();
@@ -982,7 +982,7 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
Log.d(TAG, "testest");
if (requestCode == GooglePlusButtonFragment.RC_SIGN_IN) {
GooglePlusButtonFragment fragment = (GooglePlusButtonFragment) getSupportFragmentManager().findFragmentById(R.id.frag_login_btnGP);
fragment.onActivityResult(requestCode, resultCode, data);
if(fragment != null) fragment.onActivityResult(requestCode, resultCode, data);
}
TwitterButtonFragment twitter_fragment = (TwitterButtonFragment) getSupportFragmentManager().findFragmentById(R.id.frag_login_btnTW);

View File

@@ -30,7 +30,7 @@ import android.widget.LinearLayout;
import android.widget.RatingBar;
import android.widget.TextView;
import com.crashlytics.android.Crashlytics;
import com.google.firebase.crashlytics.FirebaseCrashlytics;
import com.android.volley.Request;
import com.android.volley.toolbox.StringRequest;
@@ -150,7 +150,7 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
}
@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String permissions[], @NonNull int[] grantResults) {
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
Log.d(TAG, "Getting permission results...");
switch (requestCode) {
case MY_PERMISSIONS_REQUEST_LOCATION: {
@@ -361,8 +361,7 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
try {
mClusterManager.addItem(new IncidentReport(incidents.getJSONObject(i)));
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught: " + e);
}
}
@@ -384,8 +383,7 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
try {
heatMapPositions.add(new WeightedLatLng(new LatLng(incidents.getJSONObject(i).getDouble("latitude"), incidents.getJSONObject(i).getDouble("longitude")), 1.0));
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught: " + e);
}
}
@@ -419,16 +417,15 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
String errorMsg = jObj.getString("error_msg");
int loglevel = errorMsg.contains("Could not retrieve incidents from bound") ? Log.INFO : Log.ERROR;
Crashlytics.log(loglevel, TAG, "Error getting map heat map positions (server returned error): " + errorMsg);
FirebaseCrashlytics.getInstance().log("Error getting map heat map positions (server returned error): " + errorMsg);
}
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught: " + e);
}
}, error -> {
hideProgress();
Crashlytics.log(Log.ERROR, TAG, "Error getting map positions: " + error.getMessage());
FirebaseCrashlytics.getInstance().log("Error getting map positions: " + error.getMessage());
handleVolleyErrorResponse();
}) {
@Override
@@ -460,16 +457,15 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
addIncidentMarkersOnMap(incidents);
} else {
String errorMsg = jObj.getString("error_msg");
Crashlytics.log(Log.INFO, TAG, "Error getting map positions (server returned error): " + errorMsg);
FirebaseCrashlytics.getInstance().log("Error getting map positions (server returned error): " + errorMsg);
}
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught: " + e);
}
}, error -> {
hideProgress();
Crashlytics.log(Log.ERROR, TAG, "Error getting map positions: " + error.getMessage());
FirebaseCrashlytics.getInstance().log("Error getting map positions: " + error.getMessage());
showMessage(getString(R.string.errormsg_couldnotretrieve));
}) {
@Override
@@ -546,13 +542,12 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
showMessage(getResources().getString(R.string.txt_errormsg_getinfowindow));
}
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught: " + e);
}
}, error -> {
hideProgress();
Crashlytics.log(Log.ERROR, TAG, "Error getting incident details: " + error.getMessage());
FirebaseCrashlytics.getInstance().log("Error getting incident details: " + error.getMessage());
handleVolleyErrorResponse();
}) {
@Override
@@ -664,13 +659,13 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
private void doSearch(String query) {
Bundle data = new Bundle();
data.putString("query", query);
getSupportLoaderManager().restartLoader(0, data, this);
LoaderManager.getInstance(this).restartLoader(0, data, this);
}
private void getPlace(String query) {
Bundle data = new Bundle();
data.putString("query", query);
getSupportLoaderManager().restartLoader(1, data, this);
LoaderManager.getInstance(this).restartLoader(1, data, this);
}
private void showLocation(Cursor c) {
@@ -793,8 +788,7 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
mMap.moveCamera(CameraUpdateFactory.newLatLng(myLocation));
}
} catch (Exception e) {
Crashlytics.log(Log.ERROR, TAG, "Exception caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("Exception caught: " + e);
}
}
}
@@ -805,8 +799,7 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
}catch(SecurityException se){
ActivityCompat.requestPermissions(this, new String[]{android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.ACCESS_COARSE_LOCATION}, MY_PERMISSIONS_REQUEST_LOCATION);
}catch(AssertionError ae){
Crashlytics.log(Log.ERROR, TAG, "Could not find mapFragment view");
Crashlytics.logException(ae);
FirebaseCrashlytics.getInstance().log("Could not find mapFragment view: " + ae);
}
}
@@ -831,7 +824,7 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
txtSearch.setHintTextColor(Color.DKGRAY);
txtSearch.setTextColor(Color.BLACK);
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get searchManager");
FirebaseCrashlytics.getInstance().log("Could not get searchManager");
}
return true;

View File

@@ -27,7 +27,7 @@ import com.android.volley.toolbox.StringRequest;
import com.beardedhen.androidbootstrap.BootstrapButton;
import com.beardedhen.androidbootstrap.api.defaults.DefaultBootstrapBrand;
import com.google.android.gms.maps.model.LatLng;
import com.crashlytics.android.Crashlytics;
import com.google.firebase.crashlytics.FirebaseCrashlytics;
import com.google.gson.Gson;
import org.deke.risk.riskahead.fragment.BaseReportWFFragment;
@@ -201,8 +201,7 @@ public class ReportWFActivity extends BaseActivity implements ReportWF_1_Fragmen
}
}
} catch (IOException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught: " + e);
incident.setIncidentPositionDescription("Latitude: " + latlngpos.latitude + "\nLongitude: " + latlngpos.longitude);
}
}
@@ -310,17 +309,16 @@ public class ReportWFActivity extends BaseActivity implements ReportWF_1_Fragmen
showShareDialog(incident);
} else {
String errorMsg = jObj.getString("error_msg");
Crashlytics.log(Log.ERROR, TAG, "Error adding incident (Server returned error): " + errorMsg);
FirebaseCrashlytics.getInstance().log("Error adding incident (Server returned error): " + errorMsg);
showMessage(getResources().getString(R.string.txt_errormsg_createincident));
}
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught: " + e);
}
hideDialog();
}, error -> {
Crashlytics.log(Log.ERROR, TAG, "Error adding incident: " + error.getMessage());
FirebaseCrashlytics.getInstance().log("Error adding incident: " + error.getMessage());
handleVolleyErrorResponse();
hideDialog();
}) {
@@ -369,7 +367,7 @@ public class ReportWFActivity extends BaseActivity implements ReportWF_1_Fragmen
}
@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String permissions[], @NonNull int[] grantResults) {
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
switch (requestCode) {
case MY_PERMISSIONS_REQUEST_STORAGE: {
if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
@@ -448,7 +446,9 @@ public class ReportWFActivity extends BaseActivity implements ReportWF_1_Fragmen
super.onResume();
Gson gson = new Gson();
if(!mPrefs.getString("incident", "").equals("")) incident = gson.fromJson(mPrefs.getString("incident", ""), IncidentReport.class);
String tmpString = mPrefs.getString("incident", "");
if(tmpString != null && !tmpString.equals("")) incident = gson.fromJson(tmpString, IncidentReport.class);
Intent intent = getIntent();
String pos = intent.getStringExtra(EXTRA_MESSAGE);

View File

@@ -19,7 +19,7 @@ import android.widget.LinearLayout;
import com.android.vending.billing.IInAppBillingService;
import com.android.volley.Request;
import com.android.volley.toolbox.StringRequest;
import com.crashlytics.android.Crashlytics;
import com.google.firebase.crashlytics.FirebaseCrashlytics;
import org.deke.risk.riskahead.adapter.SubscriptionsPagerAdapter;
import org.deke.risk.riskahead.fragment.SubscriptionItemFragment;
@@ -191,8 +191,8 @@ public class SubscriptionsActivity extends BaseActivity{
}
} catch (RemoteException e) {
Crashlytics.log(Log.ERROR, TAG, "RemoteException caught");
Crashlytics.logException(e);
FirebaseCrashlytics crashlytics = FirebaseCrashlytics.getInstance();
crashlytics.log("RemoteException caught: " + e);
}
}
@@ -252,7 +252,7 @@ public class SubscriptionsActivity extends BaseActivity{
Log.d(TAG,"Product: "+sku+" Price: "+price+" Title: "+title+" Description: "+description);
}
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get responseList");
FirebaseCrashlytics.getInstance().log("Could not get responseList");
}
((SubscriptionItemFragment) subscriptionsAdapter.getItem(0)).initSubscription(purchaseMap.get("no_ads_03"));
@@ -260,8 +260,7 @@ public class SubscriptionsActivity extends BaseActivity{
}
} catch (Exception e) {
Crashlytics.log(Log.ERROR, TAG, "Exception caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("Exception caught: " + e);
}
}
@@ -276,13 +275,13 @@ public class SubscriptionsActivity extends BaseActivity{
startIntentSenderForResult(pendingIntent.getIntentSender(),1001, new Intent(), 0, 0, 0);
}
} catch (Exception e) {
Crashlytics.log(Log.ERROR, TAG, "Exception caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("Exception caught: " + e);
}
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == 1001) {
int responseCode = data.getIntExtra("RESPONSE_CODE", 0);
String purchaseData = data.getStringExtra("INAPP_PURCHASE_DATA");
@@ -297,11 +296,9 @@ public class SubscriptionsActivity extends BaseActivity{
showMessage(String.format("%s %s. %s", getResources().getString(R.string.txt_subs_youbought), purchaseMap.get(sku).getString("title"), getResources().getString(R.string.txt_subs_thankyou)));
addSubscription(purchaseMap.get(sku).getString("productId"), purchaseMap.get(sku).getString("type"), purchaseMap.get(sku).getString("price_amount_micros"), purchaseMap.get(sku).getString("price_currency_code"));
}
catch (JSONException e) {
} catch (JSONException e) {
showMessage(getResources().getString(R.string.txt_errormsg_subs));
Crashlytics.log(Log.ERROR, TAG, "JSONException caught while purchasing!");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught while purchasing!: " + e);
}
}
}
@@ -323,20 +320,19 @@ public class SubscriptionsActivity extends BaseActivity{
if (error) {
String errorMsg = jObj.getString("error_msg");
Crashlytics.log(Log.ERROR, TAG, "Error adding subscription (Server returned error): " + errorMsg);
FirebaseCrashlytics.getInstance().log("Error adding subscription (Server returned error): " + errorMsg);
showMessage(getResources().getString(R.string.txt_errormsg_subs));
} else {
gotoSubscriptionsActivity();
}
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught: " + e);
}
hideDialog();
}, error -> {
Crashlytics.log(Log.ERROR, TAG, "Error adding subscription: " + error.getMessage());
FirebaseCrashlytics.getInstance().log("Error adding subscription: " + error.getMessage());
showMessage(getResources().getString(R.string.txt_errormsg_subs));
hideDialog();
}) {
@@ -387,11 +383,10 @@ public class SubscriptionsActivity extends BaseActivity{
syncWithDatabase(ownedSkus);
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught: " + e);
}
}, error -> {
Crashlytics.log(Log.ERROR, TAG, "Error getting subscription: " + error.getMessage());
FirebaseCrashlytics.getInstance().log("Error getting subscription: " + error.getMessage());
handleVolleyErrorResponse();
}) {
@@ -424,16 +419,15 @@ public class SubscriptionsActivity extends BaseActivity{
if (error) {
String errorMsg = jObj.getString("error_msg");
Crashlytics.log(Log.ERROR, TAG, "Error deactivating subscription (Server returned error): " + errorMsg);
FirebaseCrashlytics.getInstance().log("Error deactivating subscription (Server returned error): " + errorMsg);
}else{
Log.d(TAG,"Sub with uid: "+subscriptionId+" deactivated in DB");
}
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught: " + e);
}
}, error -> Crashlytics.log(Log.ERROR, TAG, "Error deactivating subscription: " + error.getMessage())) {
}, error -> FirebaseCrashlytics.getInstance().log("Error deactivating subscription: " + error.getMessage())) {
@Override
protected Map<String, String> getParams() {

View File

@@ -17,7 +17,7 @@ import com.android.volley.Request;
import com.android.volley.toolbox.StringRequest;
import com.beardedhen.androidbootstrap.AwesomeTextView;
import com.beardedhen.androidbootstrap.BootstrapLabel;
import com.crashlytics.android.Crashlytics;
import com.google.firebase.crashlytics.FirebaseCrashlytics;
import com.mikepenz.google_material_typeface_library.GoogleMaterial;
import com.mikepenz.iconics.IconicsDrawable;
@@ -146,15 +146,14 @@ public class ViewReportActivity extends BaseActivity {
gotoProfileActivity();
} else {
String errorMsg = jObj.getString("error_msg");
Crashlytics.log(Log.ERROR, TAG, "Error deleting incident (Server returned error): " + errorMsg);
FirebaseCrashlytics.getInstance().log("Error deleting incident (Server returned error): " + errorMsg);
showMessage(getResources().getString(R.string.txt_errormsg_deleteincident));
}
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught: " + e);
}
}, error -> {
Crashlytics.log(Log.ERROR, TAG, "Error deleting incident: " + error.getMessage());
FirebaseCrashlytics.getInstance().log("Error deleting incident: " + error.getMessage());
handleVolleyErrorResponse();
hideDialog();
}) {
@@ -196,15 +195,14 @@ public class ViewReportActivity extends BaseActivity {
} else {
String errorMsg = jObj.getString("error_msg");
Crashlytics.log(Log.ERROR, TAG, "Error get incident (Server returned error): " + errorMsg);
FirebaseCrashlytics.getInstance().log( "Error get incident (Server returned error): " + errorMsg);
showMessage(getResources().getString(R.string.txt_errormsg_getincidentdetail));
}
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught: " + e);
}
}, error -> {
Crashlytics.log(Log.ERROR, TAG, "Error get incident: " + error.getMessage());
FirebaseCrashlytics.getInstance().log("Error get incident: " + error.getMessage());
handleVolleyErrorResponse();
hideDialog();
}) {
@@ -320,8 +318,7 @@ public class ViewReportActivity extends BaseActivity {
txtPosition.setText(sb.toString());
}
} catch (IOException e) {
Crashlytics.log(Log.ERROR, TAG, "IOException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("IOException caught: " + e);
}
final String latitude = Double.toString(incident.getPosition().latitude);
@@ -333,7 +330,7 @@ public class ViewReportActivity extends BaseActivity {
findViewById(R.id.btn_viewreport_position).setOnClickListener(v -> gotoMapActivity(latitude + ":" + longitude));
String uid = user.get(SessionManager.KEY_UID);
if (incident.getFidFromUser() != Integer.valueOf(uid)) {
if (incident.getFidFromUser() != Integer.parseInt(uid)) {
findViewById(R.id.layoutFooter).setVisibility(View.GONE);
} else {
findViewById(R.id.layoutFooter).setVisibility(View.VISIBLE);
@@ -376,15 +373,14 @@ public class ViewReportActivity extends BaseActivity {
checkVotetypeAndSetVoteButtons(jPoints);
} else {
String errorMsg = jObj.getString("error_msg");
Crashlytics.log(Log.ERROR, TAG, "Error voting incident (Server returned error): " + errorMsg);
FirebaseCrashlytics.getInstance().log("Error voting incident (Server returned error): " + errorMsg);
showMessage(getResources().getString(R.string.txt_errormsg_couldnotvote));
}
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught: " + e);
}
}, error -> {
Crashlytics.log(Log.ERROR, TAG, "Error voting incident: " + error.getMessage());
FirebaseCrashlytics.getInstance().log("Error voting incident: " + error.getMessage());
handleVolleyErrorResponse();
}) {
@@ -422,14 +418,14 @@ public class ViewReportActivity extends BaseActivity {
checkVotetypeAndSetVoteButtons(jPoints);
} else {
String errorMsg = jObj.getString("error_msg");
Crashlytics.log(Log.ERROR, TAG, "Error deleting voting incident (Server returned error): " + errorMsg);
FirebaseCrashlytics.getInstance().log("Error deleting voting incident (Server returned error): " + errorMsg);
}
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught");
FirebaseCrashlytics.getInstance().recordException(e);
}
}, error -> {
Crashlytics.log(Log.ERROR, TAG, "Error deleting voting incident: " + error.getMessage());
FirebaseCrashlytics.getInstance().log("Error deleting voting incident: " + error.getMessage());
handleVolleyErrorResponse();
}) {

View File

@@ -1,6 +1,8 @@
package org.deke.risk.riskahead.adapter;
import android.os.Bundle;
import androidx.annotation.NonNull;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentManager;
import androidx.fragment.app.FragmentStatePagerAdapter;
@@ -21,14 +23,15 @@ public class ProfilePagerAdapter extends FragmentStatePagerAdapter {
private String userID;
public ProfilePagerAdapter(FragmentManager fm, int NumOfTabs, String userID) {
super(fm);
super(fm, FragmentStatePagerAdapter.BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENT);
this.mNumOfTabs = NumOfTabs;
this.userID = userID;
}
@NonNull
@Override
public Fragment getItem(int position) {
Fragment returnFragment = null;
Fragment returnFragment = new Fragment();
if(mNumOfTabs == 2){
switch (position) {
@@ -38,8 +41,6 @@ public class ProfilePagerAdapter extends FragmentStatePagerAdapter {
case 1:
returnFragment = newReportListInstance(userID);
break;
default:
return null;
}
}else if(mNumOfTabs == 3){
switch (position) {
@@ -52,8 +53,6 @@ public class ProfilePagerAdapter extends FragmentStatePagerAdapter {
case 2:
returnFragment = newReportListInstance(userID);
break;
default:
return null;
}
}

View File

@@ -14,7 +14,9 @@ import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
import com.crashlytics.android.Crashlytics;
import androidx.core.content.ContextCompat;
import com.google.firebase.crashlytics.FirebaseCrashlytics;
import org.deke.risk.riskahead.R;
import org.deke.risk.riskahead.helper.IncidentReport;
@@ -33,13 +35,11 @@ import java.util.List;
public class ReportListAdapter extends BaseAdapter {
private final static String TAG = ReportListAdapter.class.getSimpleName();
private Context context;
private List<JSONObject> data;
private static LayoutInflater inflater = null;
public ReportListAdapter(Context context, List<JSONObject> data) {
this.context = context;
this.data = data;
inflater = (LayoutInflater) context
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
@@ -79,8 +79,8 @@ public class ReportListAdapter extends BaseAdapter {
status = false;
}
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics crashlytics = FirebaseCrashlytics.getInstance();
crashlytics.log("JSONException caught: " + e);
}
if(!status){
@@ -109,11 +109,8 @@ public class ReportListAdapter extends BaseAdapter {
iv.setVisibility(View.VISIBLE);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
iv.setBackground(parent.getContext().getDrawable(item.getIconDrawable()));
} else {
iv.setBackground(parent.getResources().getDrawable(item.getIconDrawable()));
iv.setBackground(ContextCompat.getDrawable(parent.getContext(), item.getIconDrawable()));
}
}
return vi;
}

View File

@@ -50,7 +50,7 @@ public class SpinnerHintAdapter implements SpinnerAdapter, ListAdapter {
return getNothingSelectedView(parent);
}else{
int numOfItems = adapter.getCount();
position = (position > numOfItems-1) ? numOfItems-1 : position;
position = Math.min(position, numOfItems - 1);
return adapter.getView(position - EXTRA, null, parent);
}

View File

@@ -1,5 +1,6 @@
package org.deke.risk.riskahead.adapter;
import androidx.annotation.NonNull;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentManager;
import androidx.fragment.app.FragmentStatePagerAdapter;
@@ -20,13 +21,14 @@ public class SubscriptionsPagerAdapter extends FragmentStatePagerAdapter {
private SubscriptionItemFragment frag2;
public SubscriptionsPagerAdapter(FragmentManager fm, int NumOfTabs) {
super(fm);
super(fm, FragmentStatePagerAdapter.BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENT);
this.mNumOfTabs = NumOfTabs;
}
@NonNull
@Override
public Fragment getItem(int position) {
Fragment returnFragment;
Fragment returnFragment = new Fragment();
switch (position) {
case 0:
@@ -37,8 +39,6 @@ public class SubscriptionsPagerAdapter extends FragmentStatePagerAdapter {
if(frag2 == null) frag2 = new SubscriptionItemFragment();
returnFragment = frag2;
break;
default:
return null;
}
return returnFragment;

View File

@@ -9,7 +9,7 @@ import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;
import com.crashlytics.android.Crashlytics;
import com.google.firebase.crashlytics.FirebaseCrashlytics;
import org.deke.risk.riskahead.R;
import org.json.JSONException;
@@ -81,8 +81,8 @@ public class Top10ListAdapter extends BaseAdapter {
context.getResources().getString(R.string.txt_top10_membersince),
data.get(position).getString("created_at").split(" ")[0]));
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught: " + e);
FirebaseCrashlytics.getInstance().recordException(e);
}
return vi;
}

View File

@@ -24,7 +24,7 @@ public abstract class BaseReportWFFragment extends Fragment {
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
return new TextView(getActivity());
}

View File

@@ -12,7 +12,7 @@ import android.view.View;
import android.view.ViewGroup;
import com.beardedhen.androidbootstrap.BootstrapButton;
import com.crashlytics.android.Crashlytics;
import com.google.firebase.crashlytics.FirebaseCrashlytics;
import com.facebook.AccessToken;
import com.facebook.CallbackManager;
import com.facebook.FacebookCallback;
@@ -90,7 +90,7 @@ public class FacebookButtonFragment extends Fragment {
if(activity != null){
LoginManager.getInstance().logInWithReadPermissions(activity, Arrays.asList("public_profile", "email"));
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get activity when initializing the facebook button");
FirebaseCrashlytics.getInstance().log("Could not get activity when initializing the facebook button");
}
});
@@ -108,7 +108,7 @@ public class FacebookButtonFragment extends Fragment {
if(activity != null){
activity.showMessage("Facebook LogIn canceled. Please use E-Mail instead.");
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get activity for showing onCancel message");
FirebaseCrashlytics.getInstance().log("Could not get activity for showing onCancel message");
}
}
@@ -119,7 +119,7 @@ public class FacebookButtonFragment extends Fragment {
if(activity != null){
activity.showMessage("Could not log in with Facebook. Please use E-Mail instead or try again later.");
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get activity for showing onError message");
FirebaseCrashlytics.getInstance().log("Could not get activity for showing onError message");
}
}
});
@@ -132,11 +132,11 @@ public class FacebookButtonFragment extends Fragment {
if(activity != null){
activity.handleSocialMediaLogin(objects.getString("id"), "facebook", objects.getString("first_name"), objects.getString("email"));
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get activity for handleSocialMediaLogin");
FirebaseCrashlytics.getInstance().log("Could not get activity for handleSocialMediaLogin");
}
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "Exception caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("Exception caught: " + e);
FirebaseCrashlytics.getInstance().recordException(e);
}
});
Bundle parameters = new Bundle();

View File

@@ -12,7 +12,7 @@ import android.view.View;
import android.view.ViewGroup;
import com.beardedhen.androidbootstrap.BootstrapButton;
import com.crashlytics.android.Crashlytics;
import com.google.firebase.crashlytics.FirebaseCrashlytics;
import com.google.android.gms.auth.api.signin.GoogleSignIn;
import com.google.android.gms.auth.api.signin.GoogleSignInAccount;
import com.google.android.gms.auth.api.signin.GoogleSignInClient;
@@ -47,7 +47,7 @@ public class GooglePlusButtonFragment extends Fragment{
if(mActivity != null){
mContext = mActivity.getApplicationContext();
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not retrieve activity for Google+ onCreate Method");
FirebaseCrashlytics.getInstance().log("Could not retrieve activity for Google+ onCreate Method");
}
}
@@ -84,7 +84,7 @@ public class GooglePlusButtonFragment extends Fragment{
if(account != null){
mActivity.handleSocialMediaLogin(account.getId(),"google",account.getDisplayName(),account.getEmail());
}else{
Crashlytics.log(Log.ERROR, TAG,"Could not handle G+ SignIn Result");
FirebaseCrashlytics.getInstance().log("Could not handle G+ SignIn Result");
}
}
}
@@ -93,7 +93,7 @@ public class GooglePlusButtonFragment extends Fragment{
try {
return completedTask.getResult(ApiException.class);
} catch (ApiException e) {
Crashlytics.log(Log.ERROR, TAG, "signInResult:failed code=" + e.getStatusCode());
FirebaseCrashlytics.getInstance().log("signInResult:failed code=" + e.getStatusCode());
return null;
}
}

View File

@@ -13,7 +13,7 @@ import com.android.volley.Request;
import com.android.volley.toolbox.StringRequest;
import com.beardedhen.androidbootstrap.BootstrapButton;
import com.beardedhen.androidbootstrap.api.defaults.DefaultBootstrapBrand;
import com.crashlytics.android.Crashlytics;
import com.google.firebase.crashlytics.FirebaseCrashlytics;
import org.deke.risk.riskahead.ProfileActivity;
import org.deke.risk.riskahead.R;
@@ -75,7 +75,7 @@ public class ProfileStatisticsFragment extends Fragment {
uid = getArguments().getString("uid",parent.user.get(SessionManager.KEY_UID));
getProfileStatsForList();
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not retrieve arguments");
FirebaseCrashlytics.getInstance().log("Could not retrieve arguments");
}
return view;
@@ -90,7 +90,7 @@ public class ProfileStatisticsFragment extends Fragment {
String tag_string_req = "req_profilestats";
AppController.getInstance().addToRequestQueue(strReq, tag_string_req);
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not retrieve activity for ProfileStats");
FirebaseCrashlytics.getInstance().log("Could not retrieve activity for ProfileStats");
}
}
@@ -145,7 +145,7 @@ public class ProfileStatisticsFragment extends Fragment {
activity.session.setSubsPremium(false);
}
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not retrieve activity for ProfileStatistics. Could not set statusLevel");
FirebaseCrashlytics.getInstance().log("Could not retrieve activity for ProfileStatistics. Could not set statusLevel");
}
}
@@ -157,24 +157,24 @@ public class ProfileStatisticsFragment extends Fragment {
}
} else {
String errorMsg = jObj.getString("error_msg");
Crashlytics.log(Log.ERROR, TAG, "Error getting user stats (server returned error): " + errorMsg);
FirebaseCrashlytics.getInstance().log("Error getting user stats (server returned error): " + errorMsg);
parent.showMessage(getResources().getString(R.string.txt_errormsg_retrievestats));
}
((ProfileActivity)getActivity()).hideDialog();
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught");
FirebaseCrashlytics.getInstance().recordException(e);
}
}, error -> {
Crashlytics.log(Log.ERROR, TAG, "Error getting user stats: " + error.getMessage());
FirebaseCrashlytics.getInstance().log("Error getting user stats: " + error.getMessage());
ProfileActivity activity = (ProfileActivity) getActivity();
if(activity != null){
activity.hideDialog();
activity.handleVolleyErrorResponse();
}else {
Crashlytics.log(Log.ERROR, TAG, "Could not retrieve activity for onErrorResponse");
FirebaseCrashlytics.getInstance().log("Could not retrieve activity for onErrorResponse");
}
}) {

View File

@@ -12,7 +12,7 @@ import android.widget.ListView;
import com.android.volley.Request;
import com.android.volley.toolbox.StringRequest;
import com.crashlytics.android.Crashlytics;
import com.google.firebase.crashlytics.FirebaseCrashlytics;
import org.deke.risk.riskahead.ProfileActivity;
import org.deke.risk.riskahead.R;
@@ -56,7 +56,7 @@ public class ReportListFragment extends Fragment{
if(arguments != null && parent != null){
uid = getArguments().getString("uid",parent.user.get(SessionManager.KEY_UID));
}else{
Crashlytics.log(Log.ERROR, TAG, "Could either not get arguments or parent activity");
FirebaseCrashlytics.getInstance().log("Could either not get arguments or parent activity");
}
myListView = view.findViewById(R.id.lv_reportlist_list);
@@ -69,8 +69,8 @@ public class ReportListFragment extends Fragment{
parent.gotoViewReportActivity(resultList.get(position).getInt("id"));
}
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "Catched JSONException");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("Catched JSONException");
FirebaseCrashlytics.getInstance().recordException(e);
}
});
@@ -86,7 +86,7 @@ public class ReportListFragment extends Fragment{
StringRequest strReq = getStringRequestGetIncidentsWithPositionFromUserID();
AppController.getInstance().addToRequestQueue(strReq, tag_string_req);
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get parent activity");
FirebaseCrashlytics.getInstance().log("Could not get parent activity");
}
}
@@ -116,21 +116,21 @@ public class ReportListFragment extends Fragment{
} else {
String errorMsg = jObj.getString("error_msg");
Crashlytics.log(Log.ERROR, TAG, "Error getting incident list (Server returned error): " + errorMsg);
FirebaseCrashlytics.getInstance().log("Error getting incident list (Server returned error): " + errorMsg);
}
ProfileActivity activity = (ProfileActivity) getActivity();
if(activity != null){
activity.hideDialog();
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get parent activity");
FirebaseCrashlytics.getInstance().log("Could not get parent activity");
}
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "Catched JSONException");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("Catched JSONException");
FirebaseCrashlytics.getInstance().recordException(e);
}
}, error -> {
Crashlytics.log(Log.ERROR, TAG, "Error getting incident list: " + error.getMessage());
FirebaseCrashlytics.getInstance().log("Error getting incident list: " + error.getMessage());
parent.handleVolleyErrorResponse();
parent.hideDialog();
}) {

View File

@@ -13,7 +13,9 @@ import android.widget.RelativeLayout;
import android.widget.Spinner;
import android.widget.TextView;
import com.crashlytics.android.Crashlytics;
import androidx.annotation.NonNull;
import com.google.firebase.crashlytics.FirebaseCrashlytics;
import org.deke.risk.riskahead.R;
import org.deke.risk.riskahead.ReportWFActivity;
@@ -58,7 +60,7 @@ public class ReportWF_1_Fragment extends BaseReportWFFragment{
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
viewFragment = inflater.inflate(R.layout.fragment_reportwf_1, container, false);
initInputElements();
@@ -88,7 +90,7 @@ public class ReportWF_1_Fragment extends BaseReportWFFragment{
if(activity != null){
activity.setMapButtonVisibility(false);
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get parent activity");
FirebaseCrashlytics.getInstance().log("Could not get parent activity");
}
@@ -162,7 +164,7 @@ public class ReportWF_1_Fragment extends BaseReportWFFragment{
ArrayAdapter<CharSequence> adapter_main_1 = ArrayAdapter.createFromResource(activity, stringId, android.R.layout.simple_spinner_dropdown_item);
crimeCategory.setAdapter(new SpinnerHintAdapter(adapter_main_1, R.layout.contact_spinner_row_nothing_selected, activity));
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get parent activity");
FirebaseCrashlytics.getInstance().log("Could not get parent activity");
}
}
@@ -200,7 +202,7 @@ public class ReportWF_1_Fragment extends BaseReportWFFragment{
if(activity != null){
incident = activity.getIncident();
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get parent activity");
FirebaseCrashlytics.getInstance().log("Could not get parent activity");
}
if(incident != null){
@@ -242,12 +244,12 @@ public class ReportWF_1_Fragment extends BaseReportWFFragment{
if(activity != null){
activity.setIncident(incident);
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get parent activity");
FirebaseCrashlytics.getInstance().log("Could not get parent activity");
}
}
@Override
public void onAttach(Context context) {
public void onAttach(@NonNull Context context) {
super.onAttach(context);
try {

View File

@@ -23,7 +23,7 @@ import android.widget.RelativeLayout;
import android.widget.Spinner;
import android.widget.TimePicker;
import com.crashlytics.android.Crashlytics;
import com.google.firebase.crashlytics.FirebaseCrashlytics;
import org.deke.risk.riskahead.R;
import org.deke.risk.riskahead.ReportWFActivity;
@@ -83,7 +83,7 @@ public class ReportWF_2_Fragment extends BaseReportWFFragment {
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
viewFragment = inflater.inflate(R.layout.fragment_reportwf_2, container, false);
initInputElements();
@@ -187,7 +187,7 @@ public class ReportWF_2_Fragment extends BaseReportWFFragment {
ArrayAdapter<CharSequence> adapter_main_1 = ArrayAdapter.createFromResource(getActivity(), stringId , android.R.layout.simple_spinner_dropdown_item);
timeCategory.setAdapter(new SpinnerHintAdapter(adapter_main_1, R.layout.contact_spinner_row_nothing_selected, getActivity()));
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get parent activity");
FirebaseCrashlytics.getInstance().log("Could not get parent activity");
}
}
@@ -297,7 +297,7 @@ public class ReportWF_2_Fragment extends BaseReportWFFragment {
timePickerFragment.show(fm, "Pick Time");
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get FragmentManager");
FirebaseCrashlytics.getInstance().log("Could not get FragmentManager");
}
}
@@ -324,19 +324,19 @@ public class ReportWF_2_Fragment extends BaseReportWFFragment {
tmpIsToDate = false;
return tmpDialog;
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get parent Activity");
FirebaseCrashlytics.getInstance().log("Could not get parent Activity");
}
} catch (ParseException e) {
Crashlytics.log(Log.ERROR, TAG, "Exception caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("Exception caught");
FirebaseCrashlytics.getInstance().recordException(e);
}
}
if(activity != null) {
return new DatePickerDialog(activity, this, year, month, day);
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get parent Activity and therefore trying again to retrieve parent");
FirebaseCrashlytics.getInstance().log("Could not get parent Activity and therefore trying again to retrieve parent");
return new DatePickerDialog(getActivity(),this, year, month, day);
}
}
@@ -357,7 +357,7 @@ public class ReportWF_2_Fragment extends BaseReportWFFragment {
datePickerFragment.show(fm, "Pick Date");
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get FragmentManager");
FirebaseCrashlytics.getInstance().log("Could not get FragmentManager");
}
}
@@ -404,7 +404,7 @@ public class ReportWF_2_Fragment extends BaseReportWFFragment {
if(activity != null){
incident = activity.getIncident();
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not retrieve parent activity");
FirebaseCrashlytics.getInstance().log("Could not retrieve parent activity");
}
@@ -472,13 +472,13 @@ public class ReportWF_2_Fragment extends BaseReportWFFragment {
if(activity != null){
activity.setIncident(incident);
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get parent Activity");
FirebaseCrashlytics.getInstance().log("Could not get parent Activity");
}
}
@Override
public void onAttach(Context context) {
public void onAttach(@NonNull Context context) {
super.onAttach(context);
try {

View File

@@ -11,7 +11,9 @@ import android.widget.ArrayAdapter;
import android.widget.EditText;
import android.widget.Spinner;
import com.crashlytics.android.Crashlytics;
import androidx.annotation.NonNull;
import com.google.firebase.crashlytics.FirebaseCrashlytics;
import org.deke.risk.riskahead.R;
import org.deke.risk.riskahead.ReportWFActivity;
@@ -57,7 +59,7 @@ public class ReportWF_3_Fragment extends BaseReportWFFragment {
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
viewFragment = inflater.inflate(R.layout.fragment_reportwf_3, container, false);
initInputElements();
@@ -154,7 +156,7 @@ public class ReportWF_3_Fragment extends BaseReportWFFragment {
ArrayAdapter<CharSequence> adapter_main_1 = ArrayAdapter.createFromResource(activity,stringId, android.R.layout.simple_spinner_dropdown_item);
suspectCategory.setAdapter(new SpinnerHintAdapter(adapter_main_1, R.layout.contact_spinner_row_nothing_selected, activity));
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get parent Activity");
FirebaseCrashlytics.getInstance().log("Could not get parent Activity");
}
}
@@ -188,7 +190,7 @@ public class ReportWF_3_Fragment extends BaseReportWFFragment {
if(activity != null){
incident = activity.getIncident();
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get parent Activity");
FirebaseCrashlytics.getInstance().log("Could not get parent Activity");
}
if(incident != null){
@@ -216,12 +218,12 @@ public class ReportWF_3_Fragment extends BaseReportWFFragment {
if(activity != null){
activity.setIncident(incident);
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get parent Activity");
FirebaseCrashlytics.getInstance().log("Could not get parent Activity");
}
}
@Override
public void onAttach(Context context) {
public void onAttach(@NonNull Context context) {
super.onAttach(context);
try {

View File

@@ -11,7 +11,9 @@ import android.widget.ArrayAdapter;
import android.widget.EditText;
import android.widget.Spinner;
import com.crashlytics.android.Crashlytics;
import androidx.annotation.NonNull;
import com.google.firebase.crashlytics.FirebaseCrashlytics;
import org.deke.risk.riskahead.R;
import org.deke.risk.riskahead.ReportWFActivity;
@@ -54,7 +56,7 @@ public class ReportWF_4_Fragment extends BaseReportWFFragment {
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
viewFragment = inflater.inflate(R.layout.fragment_reportwf_4, container, false);
initInputElements();
@@ -118,7 +120,7 @@ public class ReportWF_4_Fragment extends BaseReportWFFragment {
ArrayAdapter<CharSequence> adapter_main_1 = ArrayAdapter.createFromResource(activity, stringId, android.R.layout.simple_spinner_dropdown_item);
suspectWeapon.setAdapter(new SpinnerHintAdapter(adapter_main_1, R.layout.contact_spinner_row_nothing_selected, activity));
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get parent Activity");
FirebaseCrashlytics.getInstance().log("Could not get parent Activity");
}
}
@@ -143,7 +145,7 @@ public class ReportWF_4_Fragment extends BaseReportWFFragment {
if(activity != null){
incident = activity.getIncident();
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get parent Activity");
FirebaseCrashlytics.getInstance().log("Could not get parent Activity");
}
if(incident != null){
@@ -169,12 +171,12 @@ public class ReportWF_4_Fragment extends BaseReportWFFragment {
if(activity != null){
activity.setIncident(incident);
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get parent Activity");
FirebaseCrashlytics.getInstance().log("Could not get parent Activity");
}
}
@Override
public void onAttach(Context context) {
public void onAttach(@NonNull Context context) {
super.onAttach(context);
try {

View File

@@ -11,7 +11,9 @@ import android.widget.ArrayAdapter;
import android.widget.EditText;
import android.widget.Spinner;
import com.crashlytics.android.Crashlytics;
import androidx.annotation.NonNull;
import com.google.firebase.crashlytics.FirebaseCrashlytics;
import org.deke.risk.riskahead.R;
import org.deke.risk.riskahead.ReportWFActivity;
@@ -53,7 +55,7 @@ public class ReportWF_5_Fragment extends BaseReportWFFragment {
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
viewFragment = inflater.inflate(R.layout.fragment_reportwf_5, container, false);
initInputElements();
@@ -113,7 +115,7 @@ public class ReportWF_5_Fragment extends BaseReportWFFragment {
ArrayAdapter<CharSequence> adapter_main_1 = ArrayAdapter.createFromResource(activity, stringId, android.R.layout.simple_spinner_dropdown_item);
suspectCount.setAdapter(new SpinnerHintAdapter(adapter_main_1, R.layout.contact_spinner_row_nothing_selected, activity));
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get parent Activity");
FirebaseCrashlytics.getInstance().log("Could not get parent Activity");
}
}
@@ -136,7 +138,7 @@ public class ReportWF_5_Fragment extends BaseReportWFFragment {
if(activity != null){
incident = activity.getIncident();
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get parent Activity");
FirebaseCrashlytics.getInstance().log("Could not get parent Activity");
}
if(incident != null){
@@ -162,13 +164,13 @@ public class ReportWF_5_Fragment extends BaseReportWFFragment {
if(activity != null){
activity.setIncident(incident);
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get parent Activity");
FirebaseCrashlytics.getInstance().log("Could not get parent Activity");
}
}
@Override
public void onAttach(Context context) {
public void onAttach(@NonNull Context context) {
super.onAttach(context);
try {

View File

@@ -10,7 +10,9 @@ import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Spinner;
import com.crashlytics.android.Crashlytics;
import androidx.annotation.NonNull;
import com.google.firebase.crashlytics.FirebaseCrashlytics;
import org.deke.risk.riskahead.R;
import org.deke.risk.riskahead.ReportWFActivity;
@@ -48,7 +50,7 @@ public class ReportWF_6_Fragment extends BaseReportWFFragment {
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
viewFragment = inflater.inflate(R.layout.fragment_reportwf_6, container, false);
initInputElements();
@@ -99,7 +101,7 @@ public class ReportWF_6_Fragment extends BaseReportWFFragment {
ArrayAdapter<CharSequence> adapter_main_1 = ArrayAdapter.createFromResource(activity, stringId, android.R.layout.simple_spinner_dropdown_item);
victimType.setAdapter(new SpinnerHintAdapter(adapter_main_1, R.layout.contact_spinner_row_nothing_selected, activity));
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get parent Activity");
FirebaseCrashlytics.getInstance().log("Could not get parent Activity");
}
}
@@ -121,7 +123,7 @@ public class ReportWF_6_Fragment extends BaseReportWFFragment {
if(activity != null){
incident = activity.getIncident();
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get parent Activity");
FirebaseCrashlytics.getInstance().log("Could not get parent Activity");
}
if(incident != null){
@@ -145,12 +147,12 @@ public class ReportWF_6_Fragment extends BaseReportWFFragment {
if(activity != null){
activity.setIncident(incident);
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get parent Activity");
FirebaseCrashlytics.getInstance().log("Could not get parent Activity");
}
}
@Override
public void onAttach(Context context) {
public void onAttach(@NonNull Context context) {
super.onAttach(context);
try {

View File

@@ -11,7 +11,9 @@ import android.widget.ArrayAdapter;
import android.widget.EditText;
import android.widget.Spinner;
import com.crashlytics.android.Crashlytics;
import androidx.annotation.NonNull;
import com.google.firebase.crashlytics.FirebaseCrashlytics;
import org.deke.risk.riskahead.R;
import org.deke.risk.riskahead.ReportWFActivity;
@@ -50,7 +52,7 @@ public class ReportWF_7_Fragment extends BaseReportWFFragment {
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
viewFragment = inflater.inflate(R.layout.fragment_reportwf_7, container, false);
initInputElements();
@@ -110,7 +112,7 @@ public class ReportWF_7_Fragment extends BaseReportWFFragment {
ArrayAdapter<CharSequence> adapter_main_1 = ArrayAdapter.createFromResource(activity, stringId, android.R.layout.simple_spinner_dropdown_item);
victimOrigin.setAdapter(new SpinnerHintAdapter(adapter_main_1, R.layout.contact_spinner_row_nothing_selected, activity));
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get parent Activity");
FirebaseCrashlytics.getInstance().log("Could not get parent Activity");
}
}
@@ -133,7 +135,7 @@ public class ReportWF_7_Fragment extends BaseReportWFFragment {
if(activity != null){
incident = activity.getIncident();
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get parent Activity");
FirebaseCrashlytics.getInstance().log("Could not get parent Activity");
}
if(incident != null){
@@ -159,12 +161,12 @@ public class ReportWF_7_Fragment extends BaseReportWFFragment {
if(activity != null){
activity.setIncident(incident);
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get parent Activity");
FirebaseCrashlytics.getInstance().log("Could not get parent Activity");
}
}
@Override
public void onAttach(Context context) {
public void onAttach(@NonNull Context context) {
super.onAttach(context);
try {

View File

@@ -11,7 +11,9 @@ import android.widget.ArrayAdapter;
import android.widget.EditText;
import android.widget.Spinner;
import com.crashlytics.android.Crashlytics;
import androidx.annotation.NonNull;
import com.google.firebase.crashlytics.FirebaseCrashlytics;
import org.deke.risk.riskahead.R;
import org.deke.risk.riskahead.ReportWFActivity;
@@ -77,7 +79,7 @@ public class ReportWF_8_Fragment extends BaseReportWFFragment {
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
viewFragment = inflater.inflate(R.layout.fragment_reportwf_8, container, false);
initSuspectVehicleInputElements();
@@ -151,7 +153,7 @@ public class ReportWF_8_Fragment extends BaseReportWFFragment {
ArrayAdapter<CharSequence> adapter_main_1 = ArrayAdapter.createFromResource(activity, stringId, android.R.layout.simple_spinner_dropdown_item);
suspectVehicle.setAdapter(new SpinnerHintAdapter(adapter_main_1, R.layout.contact_spinner_row_nothing_selected, activity));
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get parent Activity");
FirebaseCrashlytics.getInstance().log("Could not get parent Activity");
}
}
@@ -206,7 +208,7 @@ public class ReportWF_8_Fragment extends BaseReportWFFragment {
ArrayAdapter<CharSequence> adapter_main_1 = ArrayAdapter.createFromResource(activity, stringId, android.R.layout.simple_spinner_dropdown_item);
victimAffiliation.setAdapter(new SpinnerHintAdapter(adapter_main_1, R.layout.contact_spinner_row_nothing_selected, activity));
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get parent Activity");
FirebaseCrashlytics.getInstance().log("Could not get parent Activity");
}
}
@@ -255,7 +257,7 @@ public class ReportWF_8_Fragment extends BaseReportWFFragment {
ArrayAdapter<CharSequence> adapter_main_1 = ArrayAdapter.createFromResource(activity, stringId, android.R.layout.simple_spinner_dropdown_item);
suspectRecongnition.setAdapter(new SpinnerHintAdapter(adapter_main_1, R.layout.contact_spinner_row_nothing_selected, activity));
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get parent Activity");
FirebaseCrashlytics.getInstance().log("Could not get parent Activity");
}
}
@@ -281,7 +283,7 @@ public class ReportWF_8_Fragment extends BaseReportWFFragment {
if(activity != null){
incident = activity.getIncident();
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get parent Activity");
FirebaseCrashlytics.getInstance().log("Could not get parent Activity");
}
if(incident != null){
@@ -323,12 +325,12 @@ public class ReportWF_8_Fragment extends BaseReportWFFragment {
if(activity != null){
activity.setIncident(incident);
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get parent Activity");
FirebaseCrashlytics.getInstance().log("Could not get parent Activity");
}
}
@Override
public void onAttach(Context context) {
public void onAttach(@NonNull Context context) {
super.onAttach(context);
try {

View File

@@ -9,7 +9,9 @@ import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import com.crashlytics.android.Crashlytics;
import androidx.annotation.NonNull;
import com.google.firebase.crashlytics.FirebaseCrashlytics;
import org.deke.risk.riskahead.R;
import org.deke.risk.riskahead.ReportWFActivity;
@@ -28,7 +30,7 @@ public class ReportWF_Finish_Fragment extends BaseReportWFFragment {
private SendReportListener mCallback;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View viewFragment = inflater.inflate(R.layout.fragment_reportwf_finish, container, false);
Button btnSendReport = viewFragment.findViewById(R.id.btn_reportwf_finish_send);
@@ -43,7 +45,7 @@ public class ReportWF_Finish_Fragment extends BaseReportWFFragment {
if(activity != null){
return activity.getIncident();
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get parent Activity");
FirebaseCrashlytics.getInstance().log("Could not get parent Activity");
return null;
}
}
@@ -53,7 +55,7 @@ public class ReportWF_Finish_Fragment extends BaseReportWFFragment {
}
@Override
public void onAttach(Context context) {
public void onAttach(@NonNull Context context) {
super.onAttach(context);
try {

View File

@@ -11,7 +11,7 @@ import android.util.Log;
import com.android.volley.Request;
import com.android.volley.toolbox.StringRequest;
import com.crashlytics.android.Crashlytics;
import com.google.firebase.crashlytics.FirebaseCrashlytics;
import org.deke.risk.riskahead.R;
import org.deke.risk.riskahead.SettingsActivity;
@@ -225,16 +225,16 @@ public class SettingsFragment extends PreferenceFragment {
((SettingsActivity) getActivity()).showMessage(getString(R.string.alert_passwordreset_confirmation));
}else{
String errorMsg = jObj.getString("error_msg");
Crashlytics.log(Log.ERROR, TAG, "Error request email reset (Server returned error): " + errorMsg);
FirebaseCrashlytics.getInstance().log("Error request email reset (Server returned error): " + errorMsg);
((SettingsActivity) getActivity()).showMessage(getResources().getString(R.string.txt_errormsg_resetpw));
}
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught");
FirebaseCrashlytics.getInstance().recordException(e);
}
}, error -> {
Crashlytics.log(Log.ERROR, TAG, "Error request email reset: " + error.getMessage());
FirebaseCrashlytics.getInstance().log("Error request email reset: " + error.getMessage());
((SettingsActivity) getActivity()).showMessage(getString(R.string.errormsg_couldnotretrieve));
((SettingsActivity) getActivity()).hideDialog();
}) {
@@ -304,13 +304,13 @@ public class SettingsFragment extends PreferenceFragment {
} else {
String errorMsg = jObj.getString("error_msg");
Crashlytics.log(Log.ERROR, TAG, "Error getting user settings (Server returned error): " + errorMsg);
FirebaseCrashlytics.getInstance().log("Error getting user settings (Server returned error): " + errorMsg);
((SettingsActivity) getActivity()).showMessage(getResources().getString(R.string.txt_errormsg_changesettings));
}
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught");
FirebaseCrashlytics.getInstance().recordException(e);
} finally {
updatePrefs();
}
@@ -318,7 +318,7 @@ public class SettingsFragment extends PreferenceFragment {
((SettingsActivity) getActivity()).hideDialog();
}, error -> {
Crashlytics.log(Log.ERROR, TAG, "Error getting user settings: " + error.getMessage());
FirebaseCrashlytics.getInstance().log("Error getting user settings: " + error.getMessage());
((SettingsActivity) getActivity()).showMessage(getString(R.string.errormsg_couldnotretrieve));
((SettingsActivity) getActivity()).hideDialog();
updatePrefs();

View File

@@ -12,7 +12,7 @@ import android.widget.TextView;
import com.beardedhen.androidbootstrap.BootstrapButton;
import com.beardedhen.androidbootstrap.api.defaults.DefaultBootstrapBrand;
import com.crashlytics.android.Crashlytics;
import com.google.firebase.crashlytics.FirebaseCrashlytics;
import org.deke.risk.riskahead.R;
import org.deke.risk.riskahead.SubscriptionsActivity;
@@ -93,8 +93,8 @@ public class SubscriptionItemFragment extends Fragment {
imgSubs.setVisibility(View.VISIBLE);
btnBadge.setVisibility(View.VISIBLE);
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics crashlytics = FirebaseCrashlytics.getInstance();
crashlytics.log("JSONException caught: " + e);
}
}
}

View File

@@ -12,7 +12,7 @@ import android.widget.ListView;
import com.android.volley.Request;
import com.android.volley.toolbox.StringRequest;
import com.crashlytics.android.Crashlytics;
import com.google.firebase.crashlytics.FirebaseCrashlytics;
import org.deke.risk.riskahead.ProfileActivity;
import org.deke.risk.riskahead.R;
@@ -56,8 +56,8 @@ public class Top10Fragment extends Fragment {
try {
parent.gotoProfileActivity(resultList.get(position).getString("id"));
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught");
FirebaseCrashlytics.getInstance().recordException(e);
}
});
@@ -75,7 +75,7 @@ public class Top10Fragment extends Fragment {
String tag_string_req2 = "req_top10";
AppController.getInstance().addToRequestQueue(strReq2, tag_string_req2);
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get parent Activity");
FirebaseCrashlytics.getInstance().log("Could not get parent Activity");
}
}
@@ -103,7 +103,7 @@ public class Top10Fragment extends Fragment {
} else {
String errorMsg = jObj.getString("error_msg");
Crashlytics.log(Log.ERROR, TAG, "Error getting top 10 stats (Server returned error): " + errorMsg);
FirebaseCrashlytics.getInstance().log("Error getting top 10 stats (Server returned error): " + errorMsg);
parent.showMessage(getResources().getString(R.string.txt_errormsg_gettop10));
}
@@ -111,23 +111,23 @@ public class Top10Fragment extends Fragment {
if(activity != null){
activity.hideDialog();
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get parent Activity");
FirebaseCrashlytics.getInstance().log("Could not get parent Activity");
}
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught");
FirebaseCrashlytics.getInstance().recordException(e);
}
}, error -> {
Crashlytics.log(Log.ERROR, TAG, "Error getting top 10 stats: " + error.getMessage());
FirebaseCrashlytics.getInstance().log("Error getting top 10 stats: " + error.getMessage());
ProfileActivity activity = (ProfileActivity) getActivity();
if(activity != null){
activity.hideDialog();
activity.handleVolleyErrorResponse();
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get parent Activity");
FirebaseCrashlytics.getInstance().log("Could not get parent Activity");
}
}) {

View File

@@ -14,7 +14,7 @@ import android.view.ViewGroup;
import android.widget.Toast;
import com.beardedhen.androidbootstrap.BootstrapButton;
import com.crashlytics.android.Crashlytics;
import com.google.firebase.crashlytics.FirebaseCrashlytics;
import com.twitter.sdk.android.core.Callback;
import com.twitter.sdk.android.core.DefaultLogger;
import com.twitter.sdk.android.core.Result;
@@ -70,8 +70,8 @@ public class TwitterButtonFragment extends Fragment {
assert mActivity != null;
mContext = mActivity.getApplicationContext();
}catch(Exception e){
Crashlytics.log(Log.ERROR, TAG, "Could not get activity for TwitterButton");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("Could not get activity for TwitterButton");
FirebaseCrashlytics.getInstance().recordException(e);
}
TwitterConfig config = new TwitterConfig.Builder(mContext)
@@ -96,7 +96,7 @@ public class TwitterButtonFragment extends Fragment {
@Override
public void failure(TwitterException exception) {
Crashlytics.log(Log.ERROR, TAG, "onFailure wird ausgeführt: "+exception);
FirebaseCrashlytics.getInstance().log("onFailure wird ausgeführt: "+exception);
showMessage("Could not log in with Twitter. Please use E-Mail instead or try again later.");
}
})

View File

@@ -10,9 +10,6 @@ import com.android.volley.Request;
import com.android.volley.RequestQueue;
import com.android.volley.toolbox.Volley;
import com.beardedhen.androidbootstrap.TypefaceProvider;
import com.crashlytics.android.Crashlytics;
import io.fabric.sdk.android.Fabric;
/**
*
@@ -33,7 +30,6 @@ public class AppController extends MultiDexApplication {
@Override
public void onCreate() {
super.onCreate();
Fabric.with(this, new Crashlytics());
mInstance = this;
TypefaceProvider.registerDefaultIconSets();

View File

@@ -41,7 +41,7 @@ import com.android.volley.toolbox.StringRequest;
import com.google.android.gms.ads.AdListener;
import com.google.android.gms.ads.AdRequest;
import com.google.android.gms.ads.InterstitialAd;
import com.crashlytics.android.Crashlytics;
import com.google.firebase.crashlytics.FirebaseCrashlytics;
import com.mikepenz.google_material_typeface_library.GoogleMaterial;
import com.mikepenz.materialdrawer.AccountHeader;
import com.mikepenz.materialdrawer.AccountHeaderBuilder;
@@ -164,7 +164,7 @@ public abstract class BaseActivity extends AppCompatActivity {
if (am != null){
am.setInexactRepeating(AlarmManager.RTC, firstStart, interval, wtdSServicePendingIntent);
}else{
Crashlytics.log(Log.ERROR, TAG, "AlarmManager in BaseActivity is null. No AlarmManager found.");
FirebaseCrashlytics.getInstance().log("AlarmManager in BaseActivity is null. No AlarmManager found.");
}
startService(new Intent(this, NotificationService.class));
@@ -205,8 +205,8 @@ public abstract class BaseActivity extends AppCompatActivity {
try {
unregisterReceiver(myReceiver);
} catch (final Exception e) {
Crashlytics.log(Log.ERROR, TAG, "Exception caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("Exception caught: " + e);
FirebaseCrashlytics.getInstance().recordException(e);
}
}
@@ -217,7 +217,7 @@ public abstract class BaseActivity extends AppCompatActivity {
if(pDialog.getWindow() != null){
pDialog.getWindow().setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT));
}else{
Crashlytics.log(Log.ERROR, TAG, "ProgressDialog Window is null. Could not set BackgroundDrawable.");
FirebaseCrashlytics.getInstance().log("ProgressDialog Window is null. Could not set BackgroundDrawable.");
}
pDialog.setContentView(R.layout.dialog_progresscircle);
@@ -331,7 +331,7 @@ public abstract class BaseActivity extends AppCompatActivity {
break;
default:
Log.e("Unknown switch page: ", Integer.toString(position));
Crashlytics.log(Log.ERROR, TAG, "AlarmManager in BaseActivity is null. No AlarmManager found.");
FirebaseCrashlytics.getInstance().log("AlarmManager in BaseActivity is null. No AlarmManager found.");
break;
}
@@ -376,7 +376,7 @@ public abstract class BaseActivity extends AppCompatActivity {
if(connectivityManager != null){
activeNetworkInfo = connectivityManager.getActiveNetworkInfo();
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not retrieve connectivityManager. Network Status can not be checked.");
FirebaseCrashlytics.getInstance().log("Could not retrieve connectivityManager. Network Status can not be checked.");
return;
}
@@ -623,8 +623,8 @@ public abstract class BaseActivity extends AppCompatActivity {
try {
((TextView) dialoglayout.findViewById(R.id.lbl_about_version)).setText(String.format("Version: %s", getPackageManager().getPackageInfo(getPackageName(), 0).versionName));
} catch (PackageManager.NameNotFoundException e) {
Crashlytics.log(Log.ERROR, TAG, "Exception caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("Exception caught");
FirebaseCrashlytics.getInstance().recordException(e);
}
AlertDialog.Builder builder = new AlertDialog.Builder(BaseActivity.this)
@@ -696,14 +696,14 @@ public abstract class BaseActivity extends AppCompatActivity {
showMessage(getString(R.string.txt_feedback_response));
} else {
String errorMsg = jObj.getString("error_msg");
Crashlytics.log(Log.ERROR, TAG, "Error sending feedback (server returned error): " + errorMsg);
FirebaseCrashlytics.getInstance().log("Error sending feedback (server returned error): " + errorMsg);
}
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "Exception caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("Exception caught: " + e);
FirebaseCrashlytics.getInstance().recordException(e);
}
}, error -> Crashlytics.log(Log.ERROR, TAG, "Error sending feedback: " + error.getMessage())) {
}, error -> FirebaseCrashlytics.getInstance().log("Error sending feedback: " + error.getMessage())) {
@Override
protected Map<String, String> getParams() {
@@ -742,7 +742,7 @@ public abstract class BaseActivity extends AppCompatActivity {
if (NotificationService.class.getName().equals(service.service.getClassName())) return true;
}
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not retrieve Activity_Service Manager.");
FirebaseCrashlytics.getInstance().log("Could not retrieve Activity_Service Manager.");
}
return false;
@@ -768,8 +768,6 @@ public abstract class BaseActivity extends AppCompatActivity {
public void dropBreadCrumb(String category, String action, String label, long value) {
String breadCrumb = String.format("%s|%s|%s|%s", category, action, label, value);
Crashlytics.log(breadCrumb);
FirebaseCrashlytics.getInstance().log(breadCrumb);
}
}

View File

@@ -7,7 +7,7 @@ import android.util.Log;
import com.google.android.gms.maps.model.BitmapDescriptor;
import com.google.android.gms.maps.model.BitmapDescriptorFactory;
import com.google.android.gms.maps.model.LatLng;
import com.crashlytics.android.Crashlytics;
import com.google.firebase.crashlytics.FirebaseCrashlytics;
import com.google.maps.android.clustering.ClusterItem;
import org.deke.risk.riskahead.R;
@@ -138,8 +138,8 @@ public class IncidentReport implements ClusterItem {
if(mIncident.has("fid_others")) this.fidOthersCategory = mIncident.getInt("fid_others");
if(mIncident.has("etc_others")) this.etcOthersCategory = mIncident.getString("etc_others");
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "Exception caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("Exception caught: " + e);
FirebaseCrashlytics.getInstance().recordException(e);
}
}
@@ -163,8 +163,8 @@ public class IncidentReport implements ClusterItem {
tmpFromDate = simpleDateFormat.parse(this.fromDate);
}
} catch (ParseException e) {
Crashlytics.log(Log.ERROR, TAG, "Exception caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("Exception caught: " + e);
FirebaseCrashlytics.getInstance().recordException(e);
}
switch (this.fidIncidentCategory) {
@@ -365,6 +365,7 @@ public class IncidentReport implements ClusterItem {
switch (this.fidTimeCategory){
case 1:
case 3:
if((this.fromDate != null) && !(this.fromDate.equals("0000-00-00")) && (this.fromTime != null) && (this.fromTime.length() > 4)){
returnString = this.fromDate+" "+this.fromTime.substring(0,5);
}else if((this.fromDate != null) && (this.fromDate.equals("0000-00-00")) && (this.createdAt.length() > 15)){
@@ -378,15 +379,6 @@ public class IncidentReport implements ClusterItem {
returnString = returnSubTimeArray[this.fidTimeSubCategory-1];
}
break;
case 3:
if((this.fromDate != null) && !(this.fromDate.equals("0000-00-00")) && (this.fromTime != null) && (this.fromTime.length() > 4)){
returnString = this.fromDate+" "+this.fromTime.substring(0,5);
}else if((this.fromDate != null) && (this.fromDate.equals("0000-00-00")) && (this.createdAt.length() > 15)){
returnString = this.createdAt.substring(0,16);
}else if((this.fidTimeCategory > 0) && (this.fidTimeCategory <= returnTimeArray.length)){
returnString = returnTimeArray[this.fidTimeCategory-1];
}
break;
case 4:
if((this.fromTime != null) && !(this.fromTime.equals("00:00")) && (this.toTime != null) && !(this.toTime.equals("00:00"))){
returnString = this.fromDate+" "+this.fromTime.substring(0,5)+" -> "+this.toDate+" "+this.toTime.substring(0,5);

View File

@@ -20,7 +20,7 @@ import android.util.Log;
import com.android.volley.Request;
import com.android.volley.toolbox.StringRequest;
import com.google.android.gms.maps.model.LatLng;
import com.crashlytics.android.Crashlytics;
import com.google.firebase.crashlytics.FirebaseCrashlytics;
import org.deke.risk.riskahead.MapsActivity;
import org.deke.risk.riskahead.R;
@@ -218,15 +218,14 @@ public class NotificationService extends Service {
sentNotification(notification);
} else {
String errorMsg = jObj.getString("error_msg");
int loglevel = (errorMsg.contains("No incidents found in given area and from time")) ? Log.INFO : Log.ERROR;
Crashlytics.log(loglevel, TAG, "Error getting incident notification (server returned error): " + errorMsg);
FirebaseCrashlytics.getInstance().log("Error getting incident notification (server returned error): " + errorMsg);
}
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught");
FirebaseCrashlytics.getInstance().recordException(e);
}
}, error -> Crashlytics.log(Log.ERROR, TAG, "Error getting incident notification: " + error.getMessage())) {
}, error -> FirebaseCrashlytics.getInstance().log("Error getting incident notification: " + error.getMessage())) {
@Override
protected Map<String, String> getParams() {
@@ -266,8 +265,8 @@ public class NotificationService extends Service {
try {
resultIntent.putExtra(EXTRA_MESSAGE, notification.getJSONObject(notification.length()-1).getDouble("latitude")+":"+notification.getJSONObject(notification.length()-1).getDouble("longitude"));
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught");
FirebaseCrashlytics.getInstance().recordException(e);
}
TaskStackBuilder stackBuilder = TaskStackBuilder.create(this);

View File

@@ -5,7 +5,7 @@ import android.util.Log;
import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.model.MarkerOptions;
import com.crashlytics.android.Crashlytics;
import com.google.firebase.crashlytics.FirebaseCrashlytics;
import com.google.maps.android.clustering.ClusterManager;
import com.google.maps.android.clustering.view.DefaultClusterRenderer;
@@ -44,8 +44,8 @@ public class OwnIconRendered extends DefaultClusterRenderer<IncidentReport> {
dateToCheck = simpleDateFormat.parse(item.getFromDate());
}
} catch (ParseException e) {
Crashlytics.log(Log.ERROR, TAG, "ParseException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("ParseException caught");
FirebaseCrashlytics.getInstance().recordException(e);
}
if(dateToCheck != null && !dateToCheck.after(new Date(System.currentTimeMillis()-14*24*60*60*1000))){

View File

@@ -2,7 +2,7 @@ package org.deke.risk.riskahead.helper;
import android.util.Log;
import com.crashlytics.android.Crashlytics;
import com.google.firebase.crashlytics.FirebaseCrashlytics;
import java.util.ArrayList;
import java.util.HashMap;
@@ -30,8 +30,8 @@ public class PlaceJSONParser {
/* Retrieves all the elements in the 'places' array */
jPlaces = jObject.getJSONArray("predictions");
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught");
FirebaseCrashlytics.getInstance().recordException(e);
}
/* Invoking getPlaces with the array of json object
* where each json object represent a place
@@ -52,8 +52,8 @@ public class PlaceJSONParser {
placesList.add(place);
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught");
FirebaseCrashlytics.getInstance().recordException(e);
}
}
@@ -80,8 +80,8 @@ public class PlaceJSONParser {
place.put("reference",reference);
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught");
FirebaseCrashlytics.getInstance().recordException(e);
}
return place;
}

View File

@@ -2,7 +2,7 @@ package org.deke.risk.riskahead.helper;
import android.util.Log;
import com.crashlytics.android.Crashlytics;
import com.google.firebase.crashlytics.FirebaseCrashlytics;
import java.util.ArrayList;
import java.util.HashMap;
@@ -36,8 +36,8 @@ public class PlaceJSONParserDetail {
lng = (Double)jObject.getJSONObject("result").getJSONObject("geometry").getJSONObject("location").get("lng");
formattedAddress = (String) jObject.getJSONObject("result").get("formatted_address");
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "Exception caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("Exception caught");
FirebaseCrashlytics.getInstance().recordException(e);
}
hm.put("lat", Double.toString(lat));

View File

@@ -24,7 +24,7 @@ import android.net.Uri;
import androidx.annotation.NonNull;
import android.util.Log;
import com.crashlytics.android.Crashlytics;
import com.google.firebase.crashlytics.FirebaseCrashlytics;
/**
*
@@ -67,7 +67,7 @@ public class PlaceProvider extends ContentProvider {
}
@Override
public Cursor query(Uri uri, String[] projection, String selection,
public Cursor query(@NonNull Uri uri, String[] projection, String selection,
String[] selectionArgs, String sortOrder) {
Cursor c = null;
@@ -121,8 +121,8 @@ public class PlaceProvider extends ContentProvider {
}
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught");
FirebaseCrashlytics.getInstance().recordException(e);
}
c = mCursor;
break;
@@ -150,8 +150,8 @@ public class PlaceProvider extends ContentProvider {
mCursor.addRow(new String[] { Integer.toString(i), hMap.get("description"), hMap.get("reference") });
}
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught");
FirebaseCrashlytics.getInstance().recordException(e);
}
c = mCursor;
break;
@@ -165,8 +165,8 @@ public class PlaceProvider extends ContentProvider {
try {
detailsList = detailsParser.parse(new JSONObject(jsonPlaceDetails));
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("JSONException caught");
FirebaseCrashlytics.getInstance().recordException(e);
}
if(detailsList != null){
@@ -175,7 +175,7 @@ public class PlaceProvider extends ContentProvider {
mCursor.addRow(new String[]{ hMapDetails.get("formatted_address") , hMapDetails.get("lat") , hMapDetails.get("lng") });
}
}else{
Crashlytics.log(Log.ERROR, TAG, "DetailsList is null");
FirebaseCrashlytics.getInstance().log("DetailsList is null");
}
c = mCursor;
@@ -240,8 +240,8 @@ public class PlaceProvider extends ContentProvider {
br.close();
}catch(Exception e){
Crashlytics.log(Log.ERROR, TAG, "downloadURL Exception");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("downloadURL Exception");
FirebaseCrashlytics.getInstance().recordException(e);
}finally{
if(iStream != null) iStream.close();
if(urlConnection != null) urlConnection.disconnect();
@@ -303,8 +303,8 @@ public class PlaceProvider extends ContentProvider {
// Fetching the data from web service in background
data = downloadUrl(url);
}catch(Exception e){
Crashlytics.log(Log.ERROR, TAG, "Exception caught in backgroundTask");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("Exception caught in backgroundTask");
FirebaseCrashlytics.getInstance().recordException(e);
}
return data;
}
@@ -315,8 +315,8 @@ public class PlaceProvider extends ContentProvider {
try {
data = downloadUrl(url);
} catch (IOException e) {
Crashlytics.log(Log.ERROR, TAG, "Exception caught");
Crashlytics.logException(e);
FirebaseCrashlytics.getInstance().log("Exception caught");
FirebaseCrashlytics.getInstance().recordException(e);
}
return data;
}

View File

@@ -8,7 +8,7 @@ import android.content.Intent;
import android.text.format.DateUtils;
import android.util.Log;
import com.crashlytics.android.Crashlytics;
import com.google.firebase.crashlytics.FirebaseCrashlytics;
/**
*
@@ -36,7 +36,7 @@ public class RABroadcastReceiver extends BroadcastReceiver {
if(am != null){
am.setInexactRepeating(AlarmManager.RTC, firstStart,interval, wtdSServicePendingIntent);
}else{
Crashlytics.log(Log.ERROR, TAG, "Could not get AlarmManager");
FirebaseCrashlytics.getInstance().log("Could not get AlarmManager");
}
Log.v(TAG, "AlarmManager gesetzt");

View File

@@ -3,15 +3,11 @@
buildscript {
repositories {
jcenter()
maven {
url 'https://maven.fabric.io/public' }
maven {
url 'https://maven.google.com/' }
google()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.4.1'
classpath 'com.google.gms:google-services:4.2.0'
classpath 'io.fabric.tools:gradle:1.29.0'
classpath 'com.android.tools.build:gradle:4.0.1'
classpath 'com.google.gms:google-services:4.3.4'
classpath 'com.google.firebase:firebase-crashlytics-gradle:2.3.0'
}
}

View File

@@ -1,8 +1,8 @@
#Sat May 25 17:19:03 CEST 2019
#Tue Jun 02 21:10:59 CEST 2020
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
android.enableJetifier=true
zipStoreBase=GRADLE_USER_HOME
android.enableJetifier=true
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-5.1.1-all.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-6.1.1-all.zip
android.useAndroidX=true