From e2cd8b5e53cf0a18c1a7da64d523ae793d29cb4c Mon Sep 17 00:00:00 2001 From: Dennis Thiessen Date: Thu, 1 Oct 2020 22:01:08 +0200 Subject: [PATCH] Updated versions of ext. libs. New 3.2.2 release --- .idea/caches/build_file_checksums.ser | Bin 537 -> 537 bytes .idea/jarRepositories.xml | 30 ++++++ .idea/misc.xml | 21 +++- RiskAhead-Android.iml | 2 +- app/app.iml | 92 +++++++++--------- app/build.gradle | 36 ++++--- .../deke/risk/riskahead/LoginActivity.java | 74 +++++++------- .../org/deke/risk/riskahead/MapsActivity.java | 41 ++++---- .../deke/risk/riskahead/ReportWFActivity.java | 18 ++-- .../risk/riskahead/SubscriptionsActivity.java | 46 ++++----- .../risk/riskahead/ViewReportActivity.java | 36 +++---- .../adapter/ProfilePagerAdapter.java | 11 +-- .../riskahead/adapter/ReportListAdapter.java | 15 ++- .../riskahead/adapter/SpinnerHintAdapter.java | 2 +- .../adapter/SubscriptionsPagerAdapter.java | 8 +- .../riskahead/adapter/Top10ListAdapter.java | 6 +- .../fragment/BaseReportWFFragment.java | 2 +- .../fragment/FacebookButtonFragment.java | 14 +-- .../fragment/GooglePlusButtonFragment.java | 8 +- .../fragment/ProfileStatisticsFragment.java | 18 ++-- .../fragment/ReportListFragment.java | 20 ++-- .../fragment/ReportWF_1_Fragment.java | 16 +-- .../fragment/ReportWF_2_Fragment.java | 24 ++--- .../fragment/ReportWF_3_Fragment.java | 14 +-- .../fragment/ReportWF_4_Fragment.java | 14 +-- .../fragment/ReportWF_5_Fragment.java | 14 +-- .../fragment/ReportWF_6_Fragment.java | 14 +-- .../fragment/ReportWF_7_Fragment.java | 14 +-- .../fragment/ReportWF_8_Fragment.java | 18 ++-- .../fragment/ReportWF_Finish_Fragment.java | 10 +- .../riskahead/fragment/SettingsFragment.java | 18 ++-- .../fragment/SubscriptionItemFragment.java | 6 +- .../riskahead/fragment/Top10Fragment.java | 20 ++-- .../fragment/TwitterButtonFragment.java | 8 +- .../risk/riskahead/helper/AppController.java | 4 - .../risk/riskahead/helper/BaseActivity.java | 32 +++--- .../risk/riskahead/helper/IncidentReport.java | 20 ++-- .../riskahead/helper/NotificationService.java | 15 ++- .../riskahead/helper/OwnIconRendered.java | 6 +- .../riskahead/helper/PlaceJSONParser.java | 14 +-- .../helper/PlaceJSONParserDetail.java | 6 +- .../risk/riskahead/helper/PlaceProvider.java | 30 +++--- .../riskahead/helper/RABroadcastReceiver.java | 4 +- build.gradle | 10 +- gradle/wrapper/gradle-wrapper.properties | 6 +- 45 files changed, 430 insertions(+), 407 deletions(-) create mode 100644 .idea/jarRepositories.xml diff --git a/.idea/caches/build_file_checksums.ser b/.idea/caches/build_file_checksums.ser index e471b89e362cb9ee72e30b6b3dbffef7579245cf..925b6ec67e0b3cd5198457e0ee04fc8910d041ad 100644 GIT binary patch delta 57 zcmV-90LK5B1epYomj!g?sAANSoV*a|Z{6hPqz5f!L_v!xywsbMXaPkKNE`QKndKk_ PiOo@XJsuGXlf4045Jed( delta 57 zcmV-90LK5B1epYomj!UPT&2vBoV*YVYKhkdd%-tl6n~`zpi`HVXaPkKch*E~|45(= P?E$JPK%LB-lf404#eEpT diff --git a/.idea/jarRepositories.xml b/.idea/jarRepositories.xml new file mode 100644 index 0000000..f4a9e9f --- /dev/null +++ b/.idea/jarRepositories.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index 53a3fb1..c4c08ac 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -2,24 +2,39 @@ diff --git a/RiskAhead-Android.iml b/RiskAhead-Android.iml index a08d583..7843c70 100644 --- a/RiskAhead-Android.iml +++ b/RiskAhead-Android.iml @@ -1,5 +1,5 @@ - + diff --git a/app/app.iml b/app/app.iml index 3e64b0b..c386f57 100644 --- a/app/app.iml +++ b/app/app.iml @@ -1,11 +1,11 @@ - + @@ -19,8 +19,8 @@ @@ -34,8 +34,8 @@ - + @@ -87,12 +87,13 @@ - + + @@ -101,59 +102,67 @@ - - + + + + - - + - + - + + + + + + + + + + + + + - - + - + + + - - - - - - - - - - - - + + + + + + + - - - - - + + + + - + @@ -169,10 +178,10 @@ - + - + @@ -182,18 +191,13 @@ - - - - - - - + + - + \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle index 6b070c2..a5841f4 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -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 56 - versionName "3.2.1" + targetSdkVersion 29 + versionCode 58 + versionName "3.2.2" multiDexEnabled true } buildTypes { @@ -48,11 +49,10 @@ dependencies { transitive = true } - implementation('com.crashlytics.sdk.android:crashlytics:2.10.1@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 @@ -60,22 +60,20 @@ dependencies { implementation 'androidx.browser:browser:1.2.0' implementation 'androidx.cardview:cardview:1.0.0' - implementation 'androidx.appcompat:appcompat:1.1.0' + implementation 'androidx.appcompat:appcompat:1.2.0' implementation 'androidx.legacy:legacy-support-v4:1.0.0' - implementation 'com.google.android.material:material:1.1.0' + implementation 'com.google.android.material:material:1.2.1' - implementation 'com.google.android.gms:play-services-auth:17.0.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.0.0' - implementation 'com.google.android.gms:play-services-ads:19.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.5' implementation 'com.beardedhen:androidbootstrap:2.3.2' implementation 'com.mcxiaoke.volley:library:1.0.19' - implementation 'com.google.firebase:firebase-core:17.2.3' -} - -apply plugin: 'com.google.gms.google-services' + implementation 'com.google.firebase:firebase-core:17.5.0' +} \ No newline at end of file diff --git a/app/src/main/java/org/deke/risk/riskahead/LoginActivity.java b/app/src/main/java/org/deke/risk/riskahead/LoginActivity.java index 022addf..8cd2f1a 100644 --- a/app/src/main/java/org/deke/risk/riskahead/LoginActivity.java +++ b/app/src/main/java/org/deke/risk/riskahead/LoginActivity.java @@ -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); diff --git a/app/src/main/java/org/deke/risk/riskahead/MapsActivity.java b/app/src/main/java/org/deke/risk/riskahead/MapsActivity.java index b0255eb..80d4b8e 100644 --- a/app/src/main/java/org/deke/risk/riskahead/MapsActivity.java +++ b/app/src/main/java/org/deke/risk/riskahead/MapsActivity.java @@ -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; diff --git a/app/src/main/java/org/deke/risk/riskahead/ReportWFActivity.java b/app/src/main/java/org/deke/risk/riskahead/ReportWFActivity.java index 9dca903..75e3247 100644 --- a/app/src/main/java/org/deke/risk/riskahead/ReportWFActivity.java +++ b/app/src/main/java/org/deke/risk/riskahead/ReportWFActivity.java @@ -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); diff --git a/app/src/main/java/org/deke/risk/riskahead/SubscriptionsActivity.java b/app/src/main/java/org/deke/risk/riskahead/SubscriptionsActivity.java index 98935eb..18502ca 100644 --- a/app/src/main/java/org/deke/risk/riskahead/SubscriptionsActivity.java +++ b/app/src/main/java/org/deke/risk/riskahead/SubscriptionsActivity.java @@ -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,32 +275,30 @@ 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"); String dataSignature = data.getStringExtra("INAPP_DATA_SIGNATURE"); - Log.d(TAG,"Response Code: "+responseCode + " DataSignature: "+dataSignature); + Log.d(TAG, "Response Code: " + responseCode + " DataSignature: " + dataSignature); if (resultCode == RESULT_OK) { try { JSONObject jo = new JSONObject(purchaseData); String sku = jo.getString("productId"); - 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) { + 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) { 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 getParams() { diff --git a/app/src/main/java/org/deke/risk/riskahead/ViewReportActivity.java b/app/src/main/java/org/deke/risk/riskahead/ViewReportActivity.java index ea6cd90..b6e23ab 100644 --- a/app/src/main/java/org/deke/risk/riskahead/ViewReportActivity.java +++ b/app/src/main/java/org/deke/risk/riskahead/ViewReportActivity.java @@ -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(); }) { diff --git a/app/src/main/java/org/deke/risk/riskahead/adapter/ProfilePagerAdapter.java b/app/src/main/java/org/deke/risk/riskahead/adapter/ProfilePagerAdapter.java index 2ef5e58..4571462 100644 --- a/app/src/main/java/org/deke/risk/riskahead/adapter/ProfilePagerAdapter.java +++ b/app/src/main/java/org/deke/risk/riskahead/adapter/ProfilePagerAdapter.java @@ -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; } } diff --git a/app/src/main/java/org/deke/risk/riskahead/adapter/ReportListAdapter.java b/app/src/main/java/org/deke/risk/riskahead/adapter/ReportListAdapter.java index 8da8832..a1d3d96 100644 --- a/app/src/main/java/org/deke/risk/riskahead/adapter/ReportListAdapter.java +++ b/app/src/main/java/org/deke/risk/riskahead/adapter/ReportListAdapter.java @@ -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 data; private static LayoutInflater inflater = null; public ReportListAdapter(Context context, List 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; } diff --git a/app/src/main/java/org/deke/risk/riskahead/adapter/SpinnerHintAdapter.java b/app/src/main/java/org/deke/risk/riskahead/adapter/SpinnerHintAdapter.java index f0685ab..92e5aa9 100644 --- a/app/src/main/java/org/deke/risk/riskahead/adapter/SpinnerHintAdapter.java +++ b/app/src/main/java/org/deke/risk/riskahead/adapter/SpinnerHintAdapter.java @@ -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); } diff --git a/app/src/main/java/org/deke/risk/riskahead/adapter/SubscriptionsPagerAdapter.java b/app/src/main/java/org/deke/risk/riskahead/adapter/SubscriptionsPagerAdapter.java index faf845d..669d473 100644 --- a/app/src/main/java/org/deke/risk/riskahead/adapter/SubscriptionsPagerAdapter.java +++ b/app/src/main/java/org/deke/risk/riskahead/adapter/SubscriptionsPagerAdapter.java @@ -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; diff --git a/app/src/main/java/org/deke/risk/riskahead/adapter/Top10ListAdapter.java b/app/src/main/java/org/deke/risk/riskahead/adapter/Top10ListAdapter.java index f218436..1f92276 100644 --- a/app/src/main/java/org/deke/risk/riskahead/adapter/Top10ListAdapter.java +++ b/app/src/main/java/org/deke/risk/riskahead/adapter/Top10ListAdapter.java @@ -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; } diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/BaseReportWFFragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/BaseReportWFFragment.java index 60d2eca..e836592 100644 --- a/app/src/main/java/org/deke/risk/riskahead/fragment/BaseReportWFFragment.java +++ b/app/src/main/java/org/deke/risk/riskahead/fragment/BaseReportWFFragment.java @@ -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()); } diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/FacebookButtonFragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/FacebookButtonFragment.java index 0088330..926b237 100644 --- a/app/src/main/java/org/deke/risk/riskahead/fragment/FacebookButtonFragment.java +++ b/app/src/main/java/org/deke/risk/riskahead/fragment/FacebookButtonFragment.java @@ -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(); diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/GooglePlusButtonFragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/GooglePlusButtonFragment.java index 6552f05..fae1127 100644 --- a/app/src/main/java/org/deke/risk/riskahead/fragment/GooglePlusButtonFragment.java +++ b/app/src/main/java/org/deke/risk/riskahead/fragment/GooglePlusButtonFragment.java @@ -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; } } diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/ProfileStatisticsFragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/ProfileStatisticsFragment.java index 1885875..3b2b1ac 100644 --- a/app/src/main/java/org/deke/risk/riskahead/fragment/ProfileStatisticsFragment.java +++ b/app/src/main/java/org/deke/risk/riskahead/fragment/ProfileStatisticsFragment.java @@ -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"); } }) { diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportListFragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportListFragment.java index 4b27a4b..ee4141f 100644 --- a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportListFragment.java +++ b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportListFragment.java @@ -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(); }) { diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_1_Fragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_1_Fragment.java index ebc85dc..73afa21 100644 --- a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_1_Fragment.java +++ b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_1_Fragment.java @@ -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 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 { diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_2_Fragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_2_Fragment.java index d8e1750..3c55404 100644 --- a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_2_Fragment.java +++ b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_2_Fragment.java @@ -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 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 { diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_3_Fragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_3_Fragment.java index 8f0bb3d..9981469 100644 --- a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_3_Fragment.java +++ b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_3_Fragment.java @@ -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 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 { diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_4_Fragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_4_Fragment.java index c1f2c0b..1f47a0d 100644 --- a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_4_Fragment.java +++ b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_4_Fragment.java @@ -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 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 { diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_5_Fragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_5_Fragment.java index ad4a409..8378a52 100644 --- a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_5_Fragment.java +++ b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_5_Fragment.java @@ -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 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 { diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_6_Fragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_6_Fragment.java index ec11403..e0ddfc4 100644 --- a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_6_Fragment.java +++ b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_6_Fragment.java @@ -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 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 { diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_7_Fragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_7_Fragment.java index 257f0c0..edabe8c 100644 --- a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_7_Fragment.java +++ b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_7_Fragment.java @@ -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 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 { diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_8_Fragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_8_Fragment.java index d2b11a1..72ddf8b 100644 --- a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_8_Fragment.java +++ b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_8_Fragment.java @@ -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 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 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 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 { diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_Finish_Fragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_Finish_Fragment.java index 412fc73..584c0e9 100644 --- a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_Finish_Fragment.java +++ b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_Finish_Fragment.java @@ -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 { diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/SettingsFragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/SettingsFragment.java index 5f7b430..5028d20 100644 --- a/app/src/main/java/org/deke/risk/riskahead/fragment/SettingsFragment.java +++ b/app/src/main/java/org/deke/risk/riskahead/fragment/SettingsFragment.java @@ -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(); diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/SubscriptionItemFragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/SubscriptionItemFragment.java index 6b36b23..bbb18a7 100644 --- a/app/src/main/java/org/deke/risk/riskahead/fragment/SubscriptionItemFragment.java +++ b/app/src/main/java/org/deke/risk/riskahead/fragment/SubscriptionItemFragment.java @@ -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); } } } diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/Top10Fragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/Top10Fragment.java index 2213f65..200b09d 100644 --- a/app/src/main/java/org/deke/risk/riskahead/fragment/Top10Fragment.java +++ b/app/src/main/java/org/deke/risk/riskahead/fragment/Top10Fragment.java @@ -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"); } }) { diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/TwitterButtonFragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/TwitterButtonFragment.java index b81a116..a46959c 100644 --- a/app/src/main/java/org/deke/risk/riskahead/fragment/TwitterButtonFragment.java +++ b/app/src/main/java/org/deke/risk/riskahead/fragment/TwitterButtonFragment.java @@ -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."); } }) diff --git a/app/src/main/java/org/deke/risk/riskahead/helper/AppController.java b/app/src/main/java/org/deke/risk/riskahead/helper/AppController.java index 2de37d9..4230031 100644 --- a/app/src/main/java/org/deke/risk/riskahead/helper/AppController.java +++ b/app/src/main/java/org/deke/risk/riskahead/helper/AppController.java @@ -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(); diff --git a/app/src/main/java/org/deke/risk/riskahead/helper/BaseActivity.java b/app/src/main/java/org/deke/risk/riskahead/helper/BaseActivity.java index 0893373..3821f87 100644 --- a/app/src/main/java/org/deke/risk/riskahead/helper/BaseActivity.java +++ b/app/src/main/java/org/deke/risk/riskahead/helper/BaseActivity.java @@ -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 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); } - - } diff --git a/app/src/main/java/org/deke/risk/riskahead/helper/IncidentReport.java b/app/src/main/java/org/deke/risk/riskahead/helper/IncidentReport.java index eb16c1e..d2412be 100644 --- a/app/src/main/java/org/deke/risk/riskahead/helper/IncidentReport.java +++ b/app/src/main/java/org/deke/risk/riskahead/helper/IncidentReport.java @@ -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); diff --git a/app/src/main/java/org/deke/risk/riskahead/helper/NotificationService.java b/app/src/main/java/org/deke/risk/riskahead/helper/NotificationService.java index 3e6a82e..13cdda9 100644 --- a/app/src/main/java/org/deke/risk/riskahead/helper/NotificationService.java +++ b/app/src/main/java/org/deke/risk/riskahead/helper/NotificationService.java @@ -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 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); diff --git a/app/src/main/java/org/deke/risk/riskahead/helper/OwnIconRendered.java b/app/src/main/java/org/deke/risk/riskahead/helper/OwnIconRendered.java index d6ec39e..5a67519 100644 --- a/app/src/main/java/org/deke/risk/riskahead/helper/OwnIconRendered.java +++ b/app/src/main/java/org/deke/risk/riskahead/helper/OwnIconRendered.java @@ -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 { 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))){ diff --git a/app/src/main/java/org/deke/risk/riskahead/helper/PlaceJSONParser.java b/app/src/main/java/org/deke/risk/riskahead/helper/PlaceJSONParser.java index 0ac5568..836e82c 100644 --- a/app/src/main/java/org/deke/risk/riskahead/helper/PlaceJSONParser.java +++ b/app/src/main/java/org/deke/risk/riskahead/helper/PlaceJSONParser.java @@ -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; } diff --git a/app/src/main/java/org/deke/risk/riskahead/helper/PlaceJSONParserDetail.java b/app/src/main/java/org/deke/risk/riskahead/helper/PlaceJSONParserDetail.java index 13274bc..9de3c6b 100644 --- a/app/src/main/java/org/deke/risk/riskahead/helper/PlaceJSONParserDetail.java +++ b/app/src/main/java/org/deke/risk/riskahead/helper/PlaceJSONParserDetail.java @@ -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)); diff --git a/app/src/main/java/org/deke/risk/riskahead/helper/PlaceProvider.java b/app/src/main/java/org/deke/risk/riskahead/helper/PlaceProvider.java index 1deacb5..93d2f36 100644 --- a/app/src/main/java/org/deke/risk/riskahead/helper/PlaceProvider.java +++ b/app/src/main/java/org/deke/risk/riskahead/helper/PlaceProvider.java @@ -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; } diff --git a/app/src/main/java/org/deke/risk/riskahead/helper/RABroadcastReceiver.java b/app/src/main/java/org/deke/risk/riskahead/helper/RABroadcastReceiver.java index 9d95a8d..b5a5ebe 100644 --- a/app/src/main/java/org/deke/risk/riskahead/helper/RABroadcastReceiver.java +++ b/app/src/main/java/org/deke/risk/riskahead/helper/RABroadcastReceiver.java @@ -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"); diff --git a/build.gradle b/build.gradle index 1dcea61..47556d3 100644 --- a/build.gradle +++ b/build.gradle @@ -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.6.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' } } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 63433f7..1349882 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,8 +1,8 @@ -#Sat Mar 07 19:41:03 CET 2020 +#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.6.4-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.1.1-all.zip android.useAndroidX=true