Skip to content

Commit 93f3708

Browse files
committed
Run instance preferences in background
1 parent 988873c commit 93f3708

File tree

2 files changed

+40
-6
lines changed

2 files changed

+40
-6
lines changed

Adjust/adjust/src/main/java/com/adjust/sdk/AdjustInstance.java

Lines changed: 25 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -441,8 +441,14 @@ private boolean checkActivityHandler(final String savedForLaunchWarningSuffixMes
441441
* @param context Application context
442442
*/
443443
private void saveRawReferrer(final String rawReferrer, final long clickTime, final Context context) {
444-
SharedPreferencesManager sharedPreferencesManager = new SharedPreferencesManager(context);
445-
sharedPreferencesManager.saveRawReferrer(rawReferrer, clickTime);
444+
Runnable command = new Runnable() {
445+
@Override
446+
public void run() {
447+
SharedPreferencesManager sharedPreferencesManager = new SharedPreferencesManager(context);
448+
sharedPreferencesManager.saveRawReferrer(rawReferrer, clickTime);
449+
}
450+
};
451+
Util.runInBackground(command);
446452
}
447453

448454
/**
@@ -452,13 +458,26 @@ private void saveRawReferrer(final String rawReferrer, final long clickTime, fin
452458
* @param context Application context
453459
*/
454460
private void savePushToken(final String pushToken, final Context context) {
455-
SharedPreferencesManager sharedPreferencesManager = new SharedPreferencesManager(context);
456-
sharedPreferencesManager.savePushToken(pushToken);
461+
Runnable command = new Runnable() {
462+
@Override
463+
public void run() {
464+
SharedPreferencesManager sharedPreferencesManager = new SharedPreferencesManager(context);
465+
sharedPreferencesManager.savePushToken(pushToken);
466+
}
467+
};
468+
Util.runInBackground(command);
457469
}
458470

459471
private void setSendingReferrersAsNotSent(final Context context) {
460-
SharedPreferencesManager sharedPreferencesManager = new SharedPreferencesManager(context);
461-
sharedPreferencesManager.setSendingReferrersAsNotSent();
472+
Runnable command = new Runnable() {
473+
@Override
474+
public void run() {
475+
SharedPreferencesManager sharedPreferencesManager = new SharedPreferencesManager(context);
476+
sharedPreferencesManager.setSendingReferrersAsNotSent();
477+
478+
}
479+
};
480+
Util.runInBackground(command);
462481
}
463482

464483
/**

Adjust/adjust/src/main/java/com/adjust/sdk/Util.java

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,21 @@ public static String getPlayAdId(Context context) {
8484
return Reflection.getPlayAdId(context);
8585
}
8686

87+
public static void runInBackground(Runnable command) {
88+
if (Looper.myLooper() != Looper.getMainLooper()) {
89+
command.run();
90+
return;
91+
}
92+
new AsyncTask<Object,Void,Void>() {
93+
@Override
94+
protected Void doInBackground(Object... params) {
95+
Runnable command = (Runnable)params[0];
96+
command.run();
97+
return null;
98+
}
99+
}.execute((Object)command);
100+
}
101+
87102
public static void getGoogleAdId(Context context, final OnDeviceIdsRead onDeviceIdRead) {
88103
ILogger logger = AdjustFactory.getLogger();
89104
if (Looper.myLooper() != Looper.getMainLooper()) {

0 commit comments

Comments
 (0)