rename "Tracking" to "Analytics"
This commit is contained in:
@@ -26,11 +26,11 @@ import android.accounts.AccountManager;
|
|||||||
import android.app.Application;
|
import android.app.Application;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.graphics.Bitmap;
|
import android.graphics.Bitmap;
|
||||||
import android.os.Handler;
|
|
||||||
import android.support.annotation.Nullable;
|
import android.support.annotation.Nullable;
|
||||||
import android.widget.Toast;
|
import android.widget.Toast;
|
||||||
|
|
||||||
import org.bouncycastle.jce.provider.BouncyCastleProvider;
|
import org.bouncycastle.jce.provider.BouncyCastleProvider;
|
||||||
|
import org.sufficientlysecure.keychain.analytics.AnalyticsManager;
|
||||||
import org.sufficientlysecure.keychain.network.TlsCertificatePinning;
|
import org.sufficientlysecure.keychain.network.TlsCertificatePinning;
|
||||||
import org.sufficientlysecure.keychain.provider.TemporaryFileProvider;
|
import org.sufficientlysecure.keychain.provider.TemporaryFileProvider;
|
||||||
import org.sufficientlysecure.keychain.service.ContactSyncAdapterService;
|
import org.sufficientlysecure.keychain.service.ContactSyncAdapterService;
|
||||||
@@ -42,7 +42,7 @@ import timber.log.Timber.DebugTree;
|
|||||||
|
|
||||||
|
|
||||||
public class KeychainApplication extends Application {
|
public class KeychainApplication extends Application {
|
||||||
TrackingManager trackingManager;
|
AnalyticsManager analyticsManager;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Called when the application is starting, before any activity, service, or receiver objects
|
* Called when the application is starting, before any activity, service, or receiver objects
|
||||||
@@ -108,8 +108,8 @@ public class KeychainApplication extends Application {
|
|||||||
|
|
||||||
TemporaryFileProvider.scheduleCleanupImmediately();
|
TemporaryFileProvider.scheduleCleanupImmediately();
|
||||||
|
|
||||||
trackingManager = TrackingManager.getInstance(getApplicationContext());
|
analyticsManager = AnalyticsManager.getInstance(getApplicationContext());
|
||||||
trackingManager.initialize(this);
|
analyticsManager.initialize(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -158,7 +158,7 @@ public class KeychainApplication extends Application {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public TrackingManager getTrackingManager() {
|
public AnalyticsManager getAnalyticsManager() {
|
||||||
return trackingManager;
|
return analyticsManager;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
package org.sufficientlysecure.keychain;
|
package org.sufficientlysecure.keychain.analytics;
|
||||||
|
|
||||||
|
|
||||||
import java.util.concurrent.TimeUnit;
|
import java.util.concurrent.TimeUnit;
|
||||||
@@ -6,11 +6,14 @@ import java.util.concurrent.TimeUnit;
|
|||||||
import android.app.Activity;
|
import android.app.Activity;
|
||||||
import android.app.AlertDialog;
|
import android.app.AlertDialog;
|
||||||
import android.app.AlertDialog.Builder;
|
import android.app.AlertDialog.Builder;
|
||||||
import android.content.Context;
|
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
import android.content.pm.PackageManager.NameNotFoundException;
|
import android.content.pm.PackageManager.NameNotFoundException;
|
||||||
import android.preference.PreferenceActivity;
|
import android.preference.PreferenceActivity;
|
||||||
|
|
||||||
|
import org.sufficientlysecure.keychain.BuildConfig;
|
||||||
|
import org.sufficientlysecure.keychain.Constants;
|
||||||
|
import org.sufficientlysecure.keychain.KeychainApplication;
|
||||||
|
import org.sufficientlysecure.keychain.R;
|
||||||
import org.sufficientlysecure.keychain.ui.SettingsActivity;
|
import org.sufficientlysecure.keychain.ui.SettingsActivity;
|
||||||
import org.sufficientlysecure.keychain.ui.SettingsActivity.ExperimentalPrefsFragment;
|
import org.sufficientlysecure.keychain.ui.SettingsActivity.ExperimentalPrefsFragment;
|
||||||
import org.sufficientlysecure.keychain.ui.util.Notify;
|
import org.sufficientlysecure.keychain.ui.util.Notify;
|
||||||
@@ -18,14 +21,14 @@ import org.sufficientlysecure.keychain.ui.util.Notify.Style;
|
|||||||
import org.sufficientlysecure.keychain.util.Preferences;
|
import org.sufficientlysecure.keychain.util.Preferences;
|
||||||
|
|
||||||
|
|
||||||
public class TrackingConsentRequester {
|
public class AnalyticsConsentRequester {
|
||||||
private final Activity activity;
|
private final Activity activity;
|
||||||
|
|
||||||
public static TrackingConsentRequester getInstance(Activity activity) {
|
public static AnalyticsConsentRequester getInstance(Activity activity) {
|
||||||
return new TrackingConsentRequester(activity);
|
return new AnalyticsConsentRequester(activity);
|
||||||
}
|
}
|
||||||
|
|
||||||
private TrackingConsentRequester(Activity activity) {
|
private AnalyticsConsentRequester(Activity activity) {
|
||||||
this.activity = activity;
|
this.activity = activity;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -61,20 +64,20 @@ public class TrackingConsentRequester {
|
|||||||
|
|
||||||
preferences.setAnalyticsLastAskedNow();
|
preferences.setAnalyticsLastAskedNow();
|
||||||
|
|
||||||
TrackingManager trackingManager = ((KeychainApplication) activity.getApplication()).getTrackingManager();
|
AnalyticsManager analyticsManager = ((KeychainApplication) activity.getApplication()).getAnalyticsManager();
|
||||||
AlertDialog show = new Builder(activity)
|
AlertDialog show = new Builder(activity)
|
||||||
.setMessage(R.string.dialog_analytics_text)
|
.setMessage(R.string.dialog_analytics_text)
|
||||||
.setPositiveButton(R.string.button_analytics_yes, (dialog, which) -> {
|
.setPositiveButton(R.string.button_analytics_yes, (dialog, which) -> {
|
||||||
preferences.setAnalyticsAskedPolitely();
|
preferences.setAnalyticsAskedPolitely();
|
||||||
preferences.setAnalyticsGotUserConsent(true);
|
preferences.setAnalyticsGotUserConsent(true);
|
||||||
trackingManager.refreshSettings(activity);
|
analyticsManager.refreshSettings(activity);
|
||||||
Notify.create(activity, R.string.snack_analytics_accept, Style.OK,
|
Notify.create(activity, R.string.snack_analytics_accept, Style.OK,
|
||||||
this::startExperimentalSettingsActivity, R.string.snackbutton_analytics_settings).show();
|
this::startExperimentalSettingsActivity, R.string.snackbutton_analytics_settings).show();
|
||||||
})
|
})
|
||||||
.setNegativeButton(R.string.button_analytics_no, (dialog, which) -> {
|
.setNegativeButton(R.string.button_analytics_no, (dialog, which) -> {
|
||||||
preferences.setAnalyticsAskedPolitely();
|
preferences.setAnalyticsAskedPolitely();
|
||||||
preferences.setAnalyticsGotUserConsent(false);
|
preferences.setAnalyticsGotUserConsent(false);
|
||||||
trackingManager.refreshSettings(activity);
|
analyticsManager.refreshSettings(activity);
|
||||||
Notify.create(activity, R.string.snack_analytics_reject, Style.OK,
|
Notify.create(activity, R.string.snack_analytics_reject, Style.OK,
|
||||||
this::startExperimentalSettingsActivity, R.string.snackbutton_analytics_settings).show();
|
this::startExperimentalSettingsActivity, R.string.snackbutton_analytics_settings).show();
|
||||||
})
|
})
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
package org.sufficientlysecure.keychain;
|
package org.sufficientlysecure.keychain.analytics;
|
||||||
|
|
||||||
|
|
||||||
import android.app.Activity;
|
import android.app.Activity;
|
||||||
@@ -15,14 +15,14 @@ import org.piwik.sdk.extra.TrackHelper;
|
|||||||
import org.sufficientlysecure.keychain.util.Preferences;
|
import org.sufficientlysecure.keychain.util.Preferences;
|
||||||
|
|
||||||
|
|
||||||
public class TrackingManager {
|
public class AnalyticsManager {
|
||||||
private Tracker piwikTracker;
|
private Tracker piwikTracker;
|
||||||
|
|
||||||
public static TrackingManager getInstance(Context context) {
|
public static AnalyticsManager getInstance(Context context) {
|
||||||
return new TrackingManager(context);
|
return new AnalyticsManager(context);
|
||||||
}
|
}
|
||||||
|
|
||||||
private TrackingManager(Context context) {
|
private AnalyticsManager(Context context) {
|
||||||
refreshSettings(context);
|
refreshSettings(context);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -54,7 +54,7 @@ import org.openintents.openpgp.util.OpenPgpApi;
|
|||||||
import org.sufficientlysecure.keychain.Constants;
|
import org.sufficientlysecure.keychain.Constants;
|
||||||
import org.sufficientlysecure.keychain.model.SubKey.UnifiedKeyInfo;
|
import org.sufficientlysecure.keychain.model.SubKey.UnifiedKeyInfo;
|
||||||
import org.sufficientlysecure.keychain.KeychainApplication;
|
import org.sufficientlysecure.keychain.KeychainApplication;
|
||||||
import org.sufficientlysecure.keychain.TrackingManager;
|
import org.sufficientlysecure.keychain.analytics.AnalyticsManager;
|
||||||
import org.sufficientlysecure.keychain.operations.BackupOperation;
|
import org.sufficientlysecure.keychain.operations.BackupOperation;
|
||||||
import org.sufficientlysecure.keychain.operations.results.DecryptVerifyResult;
|
import org.sufficientlysecure.keychain.operations.results.DecryptVerifyResult;
|
||||||
import org.sufficientlysecure.keychain.operations.results.ExportResult;
|
import org.sufficientlysecure.keychain.operations.results.ExportResult;
|
||||||
@@ -101,7 +101,7 @@ public class OpenPgpService extends Service {
|
|||||||
private ApiAppDao mApiAppDao;
|
private ApiAppDao mApiAppDao;
|
||||||
private OpenPgpServiceKeyIdExtractor mKeyIdExtractor;
|
private OpenPgpServiceKeyIdExtractor mKeyIdExtractor;
|
||||||
private ApiPendingIntentFactory mApiPendingIntentFactory;
|
private ApiPendingIntentFactory mApiPendingIntentFactory;
|
||||||
private TrackingManager trackingManager;
|
private AnalyticsManager analyticsManager;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onCreate() {
|
public void onCreate() {
|
||||||
@@ -112,7 +112,7 @@ public class OpenPgpService extends Service {
|
|||||||
mApiPendingIntentFactory = new ApiPendingIntentFactory(getBaseContext());
|
mApiPendingIntentFactory = new ApiPendingIntentFactory(getBaseContext());
|
||||||
mKeyIdExtractor = OpenPgpServiceKeyIdExtractor.getInstance(getContentResolver(), mApiPendingIntentFactory);
|
mKeyIdExtractor = OpenPgpServiceKeyIdExtractor.getInstance(getContentResolver(), mApiPendingIntentFactory);
|
||||||
|
|
||||||
trackingManager = ((KeychainApplication) getApplication()).getTrackingManager();
|
analyticsManager = ((KeychainApplication) getApplication()).getAnalyticsManager();
|
||||||
}
|
}
|
||||||
|
|
||||||
private Intent signImpl(Intent data, InputStream inputStream,
|
private Intent signImpl(Intent data, InputStream inputStream,
|
||||||
@@ -1030,7 +1030,7 @@ public class OpenPgpService extends Service {
|
|||||||
return errorResult;
|
return errorResult;
|
||||||
}
|
}
|
||||||
|
|
||||||
trackingManager.trackApiServiceCall(data.getAction(), mApiPermissionHelper.getCurrentCallingPackage());
|
analyticsManager.trackApiServiceCall(data.getAction(), mApiPermissionHelper.getCurrentCallingPackage());
|
||||||
|
|
||||||
Progressable progressable = null;
|
Progressable progressable = null;
|
||||||
if (data.hasExtra(OpenPgpApi.EXTRA_PROGRESS_MESSENGER)) {
|
if (data.hasExtra(OpenPgpApi.EXTRA_PROGRESS_MESSENGER)) {
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ import android.os.Parcelable;
|
|||||||
import android.support.v4.os.CancellationSignal;
|
import android.support.v4.os.CancellationSignal;
|
||||||
|
|
||||||
import org.sufficientlysecure.keychain.KeychainApplication;
|
import org.sufficientlysecure.keychain.KeychainApplication;
|
||||||
import org.sufficientlysecure.keychain.TrackingManager;
|
import org.sufficientlysecure.keychain.analytics.AnalyticsManager;
|
||||||
import org.sufficientlysecure.keychain.daos.KeyWritableRepository;
|
import org.sufficientlysecure.keychain.daos.KeyWritableRepository;
|
||||||
import org.sufficientlysecure.keychain.operations.BackupOperation;
|
import org.sufficientlysecure.keychain.operations.BackupOperation;
|
||||||
import org.sufficientlysecure.keychain.operations.BaseOperation;
|
import org.sufficientlysecure.keychain.operations.BaseOperation;
|
||||||
@@ -55,19 +55,20 @@ import org.sufficientlysecure.keychain.service.input.CryptoInputParcel;
|
|||||||
|
|
||||||
|
|
||||||
public class KeychainServiceTask {
|
public class KeychainServiceTask {
|
||||||
private final TrackingManager trackingManager;
|
private final AnalyticsManager analyticsManager;
|
||||||
|
|
||||||
public static KeychainServiceTask create(Activity activity) {
|
public static KeychainServiceTask create(Activity activity) {
|
||||||
Context context = activity.getApplicationContext();
|
Context context = activity.getApplicationContext();
|
||||||
TrackingManager trackingManager = ((KeychainApplication) activity.getApplication()).getTrackingManager();
|
KeyWritableRepository keyRepository = KeyWritableRepository.create(context);
|
||||||
|
AnalyticsManager analyticsManager = ((KeychainApplication) activity.getApplication()).getAnalyticsManager();
|
||||||
|
|
||||||
return new KeychainServiceTask(context, KeyWritableRepository.create(context), trackingManager);
|
return new KeychainServiceTask(context, keyRepository, analyticsManager);
|
||||||
}
|
}
|
||||||
|
|
||||||
private KeychainServiceTask(Context context, KeyWritableRepository keyRepository, TrackingManager trackingManager) {
|
private KeychainServiceTask(Context context, KeyWritableRepository keyRepository, AnalyticsManager analyticsManager) {
|
||||||
this.context = context;
|
this.context = context;
|
||||||
this.keyRepository = keyRepository;
|
this.keyRepository = keyRepository;
|
||||||
this.trackingManager = trackingManager;
|
this.analyticsManager = analyticsManager;
|
||||||
}
|
}
|
||||||
|
|
||||||
private final Context context;
|
private final Context context;
|
||||||
@@ -130,7 +131,7 @@ public class KeychainServiceTask {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
trackingManager.trackInternalServiceCall(op.getClass().getSimpleName());
|
analyticsManager.trackInternalServiceCall(op.getClass().getSimpleName());
|
||||||
|
|
||||||
// noinspection unchecked, we make sure it's the correct op above
|
// noinspection unchecked, we make sure it's the correct op above
|
||||||
return op.execute(inputParcel, cryptoInput);
|
return op.execute(inputParcel, cryptoInput);
|
||||||
|
|||||||
@@ -54,7 +54,7 @@ import eu.davidea.flexibleadapter.SelectableAdapter.Mode;
|
|||||||
import org.sufficientlysecure.keychain.Constants;
|
import org.sufficientlysecure.keychain.Constants;
|
||||||
import org.sufficientlysecure.keychain.KeychainDatabase;
|
import org.sufficientlysecure.keychain.KeychainDatabase;
|
||||||
import org.sufficientlysecure.keychain.R;
|
import org.sufficientlysecure.keychain.R;
|
||||||
import org.sufficientlysecure.keychain.TrackingConsentRequester;
|
import org.sufficientlysecure.keychain.analytics.AnalyticsConsentRequester;
|
||||||
import org.sufficientlysecure.keychain.compatibility.ClipboardReflection;
|
import org.sufficientlysecure.keychain.compatibility.ClipboardReflection;
|
||||||
import org.sufficientlysecure.keychain.daos.DatabaseNotifyManager;
|
import org.sufficientlysecure.keychain.daos.DatabaseNotifyManager;
|
||||||
import org.sufficientlysecure.keychain.daos.KeyRepository;
|
import org.sufficientlysecure.keychain.daos.KeyRepository;
|
||||||
@@ -261,7 +261,7 @@ public class KeyListFragment extends RecyclerFragment<FlexibleAdapter<FlexibleKe
|
|||||||
LiveData<List<FlexibleKeyItem>> liveData = viewModel.getGenericLiveData(requireContext(), this::loadFlexibleKeyItems);
|
LiveData<List<FlexibleKeyItem>> liveData = viewModel.getGenericLiveData(requireContext(), this::loadFlexibleKeyItems);
|
||||||
liveData.observe(this, this::onLoadKeyItems);
|
liveData.observe(this, this::onLoadKeyItems);
|
||||||
|
|
||||||
TrackingConsentRequester.getInstance(activity).maybeAskForAnalytics();
|
AnalyticsConsentRequester.getInstance(activity).maybeAskForAnalytics();
|
||||||
}
|
}
|
||||||
|
|
||||||
@WorkerThread
|
@WorkerThread
|
||||||
|
|||||||
@@ -23,7 +23,6 @@ import android.os.Build.VERSION_CODES;
|
|||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.support.v4.app.Fragment;
|
import android.support.v4.app.Fragment;
|
||||||
import android.support.v4.app.FragmentManager;
|
import android.support.v4.app.FragmentManager;
|
||||||
import android.support.v4.app.FragmentManager.OnBackStackChangedListener;
|
|
||||||
import android.support.v4.app.FragmentTransaction;
|
import android.support.v4.app.FragmentTransaction;
|
||||||
import android.support.v7.widget.Toolbar;
|
import android.support.v7.widget.Toolbar;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
@@ -39,7 +38,7 @@ import com.mikepenz.materialdrawer.model.interfaces.IDrawerItem;
|
|||||||
|
|
||||||
import org.sufficientlysecure.keychain.KeychainApplication;
|
import org.sufficientlysecure.keychain.KeychainApplication;
|
||||||
import org.sufficientlysecure.keychain.R;
|
import org.sufficientlysecure.keychain.R;
|
||||||
import org.sufficientlysecure.keychain.TrackingManager;
|
import org.sufficientlysecure.keychain.analytics.AnalyticsManager;
|
||||||
import org.sufficientlysecure.keychain.operations.results.OperationResult;
|
import org.sufficientlysecure.keychain.operations.results.OperationResult;
|
||||||
import org.sufficientlysecure.keychain.remote.ui.AppsListFragment;
|
import org.sufficientlysecure.keychain.remote.ui.AppsListFragment;
|
||||||
import org.sufficientlysecure.keychain.ui.base.BaseSecurityTokenActivity;
|
import org.sufficientlysecure.keychain.ui.base.BaseSecurityTokenActivity;
|
||||||
@@ -64,7 +63,7 @@ public class MainActivity extends BaseSecurityTokenActivity implements FabContai
|
|||||||
|
|
||||||
public Drawer mDrawer;
|
public Drawer mDrawer;
|
||||||
private Toolbar mToolbar;
|
private Toolbar mToolbar;
|
||||||
private TrackingManager trackingManager;
|
private AnalyticsManager analyticsManager;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onCreate(Bundle savedInstanceState) {
|
public void onCreate(Bundle savedInstanceState) {
|
||||||
@@ -75,7 +74,7 @@ public class MainActivity extends BaseSecurityTokenActivity implements FabContai
|
|||||||
mToolbar.setTitle(R.string.app_name);
|
mToolbar.setTitle(R.string.app_name);
|
||||||
setSupportActionBar(mToolbar);
|
setSupportActionBar(mToolbar);
|
||||||
|
|
||||||
trackingManager = ((KeychainApplication) getApplication()).getTrackingManager();
|
analyticsManager = ((KeychainApplication) getApplication()).getAnalyticsManager();
|
||||||
|
|
||||||
mDrawer = new DrawerBuilder()
|
mDrawer = new DrawerBuilder()
|
||||||
.withActivity(this)
|
.withActivity(this)
|
||||||
@@ -205,7 +204,7 @@ public class MainActivity extends BaseSecurityTokenActivity implements FabContai
|
|||||||
private void setFragment(Fragment frag) {
|
private void setFragment(Fragment frag) {
|
||||||
FragmentManager fragmentManager = getSupportFragmentManager();
|
FragmentManager fragmentManager = getSupportFragmentManager();
|
||||||
|
|
||||||
trackingManager.trackFragmentImpression(getClass().getSimpleName(), frag.getClass().getSimpleName());
|
analyticsManager.trackFragmentImpression(getClass().getSimpleName(), frag.getClass().getSimpleName());
|
||||||
|
|
||||||
FragmentTransaction ft = fragmentManager.beginTransaction();
|
FragmentTransaction ft = fragmentManager.beginTransaction();
|
||||||
ft.replace(R.id.main_fragment_container, frag);
|
ft.replace(R.id.main_fragment_container, frag);
|
||||||
|
|||||||
@@ -37,7 +37,6 @@ import android.os.Bundle;
|
|||||||
import android.preference.EditTextPreference;
|
import android.preference.EditTextPreference;
|
||||||
import android.preference.ListPreference;
|
import android.preference.ListPreference;
|
||||||
import android.preference.Preference;
|
import android.preference.Preference;
|
||||||
import android.preference.Preference.OnPreferenceChangeListener;
|
|
||||||
import android.preference.PreferenceFragment;
|
import android.preference.PreferenceFragment;
|
||||||
import android.preference.PreferenceScreen;
|
import android.preference.PreferenceScreen;
|
||||||
import android.preference.SwitchPreference;
|
import android.preference.SwitchPreference;
|
||||||
@@ -51,7 +50,6 @@ import android.view.ViewGroup;
|
|||||||
import android.widget.LinearLayout;
|
import android.widget.LinearLayout;
|
||||||
|
|
||||||
import org.sufficientlysecure.keychain.Constants;
|
import org.sufficientlysecure.keychain.Constants;
|
||||||
import org.sufficientlysecure.keychain.Constants.Pref;
|
|
||||||
import org.sufficientlysecure.keychain.KeychainApplication;
|
import org.sufficientlysecure.keychain.KeychainApplication;
|
||||||
import org.sufficientlysecure.keychain.R;
|
import org.sufficientlysecure.keychain.R;
|
||||||
import org.sufficientlysecure.keychain.compatibility.AppCompatPreferenceActivity;
|
import org.sufficientlysecure.keychain.compatibility.AppCompatPreferenceActivity;
|
||||||
@@ -591,7 +589,7 @@ public class SettingsActivity extends AppCompatPreferenceActivity {
|
|||||||
super.onPause();
|
super.onPause();
|
||||||
|
|
||||||
Activity activity = getActivity();
|
Activity activity = getActivity();
|
||||||
((KeychainApplication) activity.getApplication()).getTrackingManager().refreshSettings(activity);
|
((KeychainApplication) activity.getApplication()).getAnalyticsManager().refreshSettings(activity);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -48,7 +48,7 @@ import org.sufficientlysecure.keychain.livedata.GenericLiveData;
|
|||||||
import org.sufficientlysecure.keychain.model.SubKey;
|
import org.sufficientlysecure.keychain.model.SubKey;
|
||||||
import org.sufficientlysecure.keychain.model.SubKey.UnifiedKeyInfo;
|
import org.sufficientlysecure.keychain.model.SubKey.UnifiedKeyInfo;
|
||||||
import org.sufficientlysecure.keychain.model.UserPacket.UserId;
|
import org.sufficientlysecure.keychain.model.UserPacket.UserId;
|
||||||
import org.sufficientlysecure.keychain.TrackingManager;
|
import org.sufficientlysecure.keychain.analytics.AnalyticsManager;
|
||||||
import org.sufficientlysecure.keychain.operations.results.OperationResult;
|
import org.sufficientlysecure.keychain.operations.results.OperationResult;
|
||||||
import org.sufficientlysecure.keychain.daos.KeyRepository;
|
import org.sufficientlysecure.keychain.daos.KeyRepository;
|
||||||
import org.sufficientlysecure.keychain.ui.adapter.PagerTabStripAdapter;
|
import org.sufficientlysecure.keychain.ui.adapter.PagerTabStripAdapter;
|
||||||
@@ -89,7 +89,7 @@ public class ViewKeyAdvActivity extends BaseActivity implements OnPageChangeList
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private TrackingManager trackingManager;
|
private AnalyticsManager analyticsManager;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void onCreate(Bundle savedInstanceState) {
|
protected void onCreate(Bundle savedInstanceState) {
|
||||||
@@ -98,7 +98,7 @@ public class ViewKeyAdvActivity extends BaseActivity implements OnPageChangeList
|
|||||||
setFullScreenDialogClose(v -> finish());
|
setFullScreenDialogClose(v -> finish());
|
||||||
|
|
||||||
keyRepository = KeyRepository.create(this);
|
keyRepository = KeyRepository.create(this);
|
||||||
trackingManager = ((KeychainApplication) getApplication()).getTrackingManager();
|
analyticsManager = ((KeychainApplication) getApplication()).getAnalyticsManager();
|
||||||
|
|
||||||
viewPager = findViewById(R.id.pager);
|
viewPager = findViewById(R.id.pager);
|
||||||
slidingTabLayout = findViewById(R.id.sliding_tab_layout);
|
slidingTabLayout = findViewById(R.id.sliding_tab_layout);
|
||||||
@@ -302,7 +302,7 @@ public class ViewKeyAdvActivity extends BaseActivity implements OnPageChangeList
|
|||||||
invalidateOptionsMenu();
|
invalidateOptionsMenu();
|
||||||
|
|
||||||
String fragmentName = tabAdapter.getItem(position).getClass().getSimpleName();
|
String fragmentName = tabAdapter.getItem(position).getClass().getSimpleName();
|
||||||
trackingManager.trackFragmentImpression(getClass().getSimpleName(), fragmentName);
|
analyticsManager.trackFragmentImpression(getClass().getSimpleName(), fragmentName);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
Reference in New Issue
Block a user