Skip to content

Commit cf2652d

Browse files
committed
Catch NullPointerExceptions for ActivityHandler.context
1 parent ea4fa20 commit cf2652d

File tree

1 file changed

+16
-10
lines changed

1 file changed

+16
-10
lines changed

AdjustIo/src/com/adeven/adjustio/ActivityHandler.java

Lines changed: 16 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ protected ActivityHandler(Activity activity) {
7676
start();
7777
sessionHandler = new SessionHandler(getLooper(), this);
7878

79-
this.context = activity.getApplicationContext();
79+
context = activity.getApplicationContext();
8080

8181
Message message = Message.obtain();
8282
message.arg1 = SessionHandler.INIT;
@@ -368,8 +368,8 @@ private void readActivityState() {
368368

369369
} catch (FileNotFoundException e) {
370370
Logger.verbose("Activity state file not found");
371-
} catch (IOException e) {
372-
Logger.error("Failed to read activity state file");
371+
} catch (Exception e) {
372+
Logger.error(String.format("Failed to open activity state file for reading (%s)", e));
373373
}
374374

375375
// start with a fresh activity state in case of any exception
@@ -391,8 +391,8 @@ private void writeActivityState() {
391391
objectStream.close();
392392
}
393393

394-
} catch (IOException e) {
395-
Logger.error(String.format("Failed to write activity state (%s)", e));
394+
} catch (Exception e) {
395+
Logger.error(String.format("Failed to open activity state for writing (%s)", e));
396396
}
397397
}
398398

@@ -419,8 +419,13 @@ private void injectGeneralAttributes(PackageBuilder builder) {
419419
}
420420

421421
private void injectReferrer(PackageBuilder builder) {
422-
SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(context);
423-
builder.setReferrer(preferences.getString(ReferrerReceiver.REFERRER_KEY, null));
422+
try {
423+
SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(context);
424+
builder.setReferrer(preferences.getString(ReferrerReceiver.REFERRER_KEY, null));
425+
}
426+
catch (Exception e) {
427+
Logger.error(String.format("Failed to inject referrer (%s)", e));
428+
}
424429
}
425430

426431
private void startTimer() {
@@ -519,12 +524,13 @@ private void processApplicationBundle() {
519524
private Bundle getApplicationBundle() {
520525
final ApplicationInfo applicationInfo;
521526
try {
522-
String packageName = this.context.getPackageName();
523-
applicationInfo =
524-
this.context.getPackageManager().getApplicationInfo(packageName, PackageManager.GET_META_DATA);
527+
String packageName = context.getPackageName();
528+
applicationInfo = context.getPackageManager().getApplicationInfo(packageName, PackageManager.GET_META_DATA);
525529
return applicationInfo.metaData;
526530
} catch (NameNotFoundException e) {
527531
Logger.error("ApplicationInfo not found");
532+
} catch (Exception e) {
533+
Logger.error(String.format("Failed to get ApplicationBundle (%s)", e));
528534
}
529535
return null;
530536
}

0 commit comments

Comments
 (0)