add string for origin to PushRegistrationWorker for debugging

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
This commit is contained in:
Marcel Hibbe 2022-01-19 18:14:06 +01:00
parent bdef83d402
commit c8274fe740
No known key found for this signature in database
GPG Key ID: C793F8B59F43CE7B
8 changed files with 43 additions and 5 deletions

View File

@ -23,6 +23,7 @@ package com.nextcloud.talk.jobs
import android.annotation.SuppressLint import android.annotation.SuppressLint
import android.content.Context import android.content.Context
import android.util.Log import android.util.Log
import androidx.work.Data
import androidx.work.OneTimeWorkRequest import androidx.work.OneTimeWorkRequest
import androidx.work.WorkManager import androidx.work.WorkManager
import androidx.work.Worker import androidx.work.Worker
@ -50,7 +51,11 @@ class GetFirebasePushTokenWorker(val context: Context, workerParameters: WorkerP
val token = task.result val token = task.result
appPreferences?.pushToken = token appPreferences?.pushToken = token
val pushRegistrationWork = OneTimeWorkRequest.Builder(PushRegistrationWorker::class.java).build()
val data: Data = Data.Builder().putString(PushRegistrationWorker.ORIGIN, "GetFirebasePushTokenWorker").build()
val pushRegistrationWork = OneTimeWorkRequest.Builder(PushRegistrationWorker::class.java)
.setInputData(data)
.build()
WorkManager.getInstance(context).enqueue(pushRegistrationWork) WorkManager.getInstance(context).enqueue(pushRegistrationWork)
}) })

View File

@ -131,7 +131,11 @@ class MagicFirebaseMessagingService : FirebaseMessagingService() {
sharedApplication!!.componentApplication.inject(this) sharedApplication!!.componentApplication.inject(this)
appPreferences!!.pushToken = token appPreferences!!.pushToken = token
Log.d(TAG, "onNewToken. token = $token") Log.d(TAG, "onNewToken. token = $token")
val pushRegistrationWork = OneTimeWorkRequest.Builder(PushRegistrationWorker::class.java).build()
val data: Data = Data.Builder().putString(PushRegistrationWorker.ORIGIN, "onNewToken").build()
val pushRegistrationWork = OneTimeWorkRequest.Builder(PushRegistrationWorker::class.java)
.setInputData(data)
.build()
WorkManager.getInstance().enqueue(pushRegistrationWork) WorkManager.getInstance().enqueue(pushRegistrationWork)
} }

View File

@ -22,6 +22,7 @@
package com.nextcloud.talk.utils package com.nextcloud.talk.utils
import android.content.Intent import android.content.Intent
import androidx.work.Data
import androidx.work.ExistingPeriodicWorkPolicy import androidx.work.ExistingPeriodicWorkPolicy
import androidx.work.OneTimeWorkRequest import androidx.work.OneTimeWorkRequest
import androidx.work.PeriodicWorkRequest import androidx.work.PeriodicWorkRequest
@ -74,15 +75,21 @@ class ClosedInterfaceImpl : ClosedInterface, ProviderInstaller.ProviderInstallLi
} }
private fun registerLocalToken() { private fun registerLocalToken() {
val pushRegistrationWork = OneTimeWorkRequest.Builder(PushRegistrationWorker::class.java).build() val data: Data = Data.Builder().putString(PushRegistrationWorker.ORIGIN, "ClosedInterfaceImpl#registerLocalToken").build()
val pushRegistrationWork = OneTimeWorkRequest.Builder(PushRegistrationWorker::class.java)
.setInputData(data)
.build()
WorkManager.getInstance().enqueue(pushRegistrationWork) WorkManager.getInstance().enqueue(pushRegistrationWork)
} }
private fun setUpPeriodicLocalTokenRegistration() { private fun setUpPeriodicLocalTokenRegistration() {
val data: Data = Data.Builder().putString(PushRegistrationWorker.ORIGIN, "ClosedInterfaceImpl#setUpPeriodicLocalTokenRegistration").build()
val periodicTokenRegistration = PeriodicWorkRequest.Builder( val periodicTokenRegistration = PeriodicWorkRequest.Builder(
PushRegistrationWorker::class.java, 1, PushRegistrationWorker::class.java, 1,
TimeUnit.DAYS TimeUnit.DAYS
) )
.setInputData(data)
.build() .build()
WorkManager.getInstance() WorkManager.getInstance()

View File

@ -130,6 +130,7 @@ class NextcloudTalkApplication : MultiDexApplication(), LifecycleObserver {
//region Overridden methods //region Overridden methods
override fun onCreate() { override fun onCreate() {
Log.d(TAG, "onCreate")
sharedApplication = this sharedApplication = this
val securityKeyManager = SecurityKeyManager.getInstance() val securityKeyManager = SecurityKeyManager.getInstance()

View File

@ -377,7 +377,12 @@ public class AccountVerificationController extends BaseController {
} }
private void registerForPush() { private void registerForPush() {
OneTimeWorkRequest pushRegistrationWork = new OneTimeWorkRequest.Builder(PushRegistrationWorker.class).build(); Data data =
new Data.Builder().putString(PushRegistrationWorker.ORIGIN, "AccountVerificationController#registerForPush").build();
OneTimeWorkRequest pushRegistrationWork = new OneTimeWorkRequest.Builder(PushRegistrationWorker.class)
.setInputData(data)
.build();
WorkManager.getInstance().enqueue(pushRegistrationWork); WorkManager.getInstance().enqueue(pushRegistrationWork);
} }

View File

@ -76,6 +76,7 @@ import javax.inject.Inject;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.app.AppCompatActivity;
import androidx.core.content.res.ResourcesCompat; import androidx.core.content.res.ResourcesCompat;
import androidx.work.Data;
import androidx.work.OneTimeWorkRequest; import androidx.work.OneTimeWorkRequest;
import androidx.work.WorkManager; import androidx.work.WorkManager;
import autodagger.AutoInjector; import autodagger.AutoInjector;
@ -407,7 +408,12 @@ public class WebViewLoginController extends BaseController {
ApplicationWideMessageHolder.getInstance().setMessageType(finalMessageType); ApplicationWideMessageHolder.getInstance().setMessageType(finalMessageType);
} }
OneTimeWorkRequest pushRegistrationWork = new OneTimeWorkRequest.Builder(PushRegistrationWorker.class).build(); Data data =
new Data.Builder().putString(PushRegistrationWorker.ORIGIN,
"WebViewLoginController#parseAndLoginFromWebView").build();
OneTimeWorkRequest pushRegistrationWork = new OneTimeWorkRequest.Builder(PushRegistrationWorker.class)
.setInputData(data)
.build();
WorkManager.getInstance().enqueue(pushRegistrationWork); WorkManager.getInstance().enqueue(pushRegistrationWork);
getRouter().popCurrentController(); getRouter().popCurrentController();

View File

@ -26,6 +26,7 @@ import android.content.Context;
import android.util.Log; import android.util.Log;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.work.Data;
import androidx.work.Worker; import androidx.work.Worker;
import androidx.work.WorkerParameters; import androidx.work.WorkerParameters;
@ -34,6 +35,7 @@ import com.nextcloud.talk.utils.PushUtils;
public class PushRegistrationWorker extends Worker { public class PushRegistrationWorker extends Worker {
public static final String TAG = "PushRegistrationWorker"; public static final String TAG = "PushRegistrationWorker";
public static final String ORIGIN = "origin";
public PushRegistrationWorker(@NonNull Context context, @NonNull WorkerParameters workerParams) { public PushRegistrationWorker(@NonNull Context context, @NonNull WorkerParameters workerParams) {
super(context, workerParams); super(context, workerParams);
@ -43,6 +45,10 @@ public class PushRegistrationWorker extends Worker {
@Override @Override
public Result doWork() { public Result doWork() {
if(new ClosedInterfaceImpl().isGooglePlayServicesAvailable()){ if(new ClosedInterfaceImpl().isGooglePlayServicesAvailable()){
Data data = getInputData();
String origin = data.getString("origin");
Log.d(TAG, "PushRegistrationWorker called via " + origin);
PushUtils pushUtils = new PushUtils(); PushUtils pushUtils = new PushUtils();
pushUtils.generateRsa2048KeyPair(); pushUtils.generateRsa2048KeyPair();
pushUtils.pushRegistrationToServer(); pushUtils.pushRegistrationToServer();

View File

@ -230,10 +230,14 @@ public class PushUtils {
devicePublicKeyBase64 = "-----BEGIN PUBLIC KEY-----\n" + devicePublicKeyBase64 + "\n-----END PUBLIC KEY-----\n"; devicePublicKeyBase64 = "-----BEGIN PUBLIC KEY-----\n" + devicePublicKeyBase64 + "\n-----END PUBLIC KEY-----\n";
Log.d(TAG, "userUtils.getUsers().size(): " + userUtils.getUsers().size());
if (userUtils.anyUserExists()) { if (userUtils.anyUserExists()) {
for (Object userEntityObject : userUtils.getUsers()) { for (Object userEntityObject : userUtils.getUsers()) {
UserEntity userEntity = (UserEntity) userEntityObject; UserEntity userEntity = (UserEntity) userEntityObject;
Log.d(TAG, "userEntity.getUsername(): " + userEntity.getUsername());
if (!userEntity.getScheduledForDeletion()) { if (!userEntity.getScheduledForDeletion()) {
Map<String, String> nextcloudRegisterPushMap = new HashMap<>(); Map<String, String> nextcloudRegisterPushMap = new HashMap<>();
nextcloudRegisterPushMap.put("format", "json"); nextcloudRegisterPushMap.put("format", "json");