Compare commits

...
Author SHA1 Message Date
gdlbo 8d41d423f8 fix close dialog 2024-03-03 14:01:46 +03:00
gdlbo 37a4ba4462 rewritten ContactsSyncAcitvity 2024-03-03 13:33:36 +03:00
gdlbo 7fba308f99 rewritten ContactsSyncReporter 2024-03-03 12:55:27 +03:00
gdlbo 5ef2f2f6cd rewritten ContactsSyncUtils 2024-03-03 12:51:31 +03:00
14 changed files with 372 additions and 1645 deletions
+2
View File
@@ -4,8 +4,10 @@
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS" android:maxSdkVersion="22"/>
<uses-permission android:name="android.permission.BLUETOOTH_CONNECT"/>
<uses-permission android:name="android.permission.GET_ACCOUNTS" android:maxSdkVersion="22"/>
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
@@ -0,0 +1,200 @@
package com.vk.contacts;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.view.ContextThemeWrapper;
import android.view.View;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.RadioButton;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AlertDialog;
import com.vk.core.dialogs.alert.VkAlertDialog;
import com.vk.core.ui.themes.VKThemeHelper;
import com.vk.core.util.ContextExtKt;
import com.vk.navigation.NavigatorKeys;
import com.vk.permission.PermissionHelper;
import com.vtosters.lite.R;
import com.vtosters.lite.VKActivity;
import com.vtosters.lite.activities.LogoutReceiver;
import java.util.List;
import kotlin.Unit;
import kotlin.jvm.b.Functions;
import kotlin.jvm.b.Functions2;
public class ContactsSyncAcitvity extends VKActivity implements View.OnClickListener {
private boolean I;
private View J;
private RadioButton K;
private RadioButton L;
private RadioButton M;
@Nullable
private String G = null;
private int H = 2;
private LogoutReceiver N = null;
public static void a(Context context) {
b(context, ContactsSyncUtils.b());
}
public static void b(Context context, int i) {
a(context, i, null);
}
private void f(int i) {
this.H = i;
this.K.setChecked(i == 0);
this.L.setChecked(i == 1);
this.M.setChecked(i == 2);
CheckBox checkBox = this.J.findViewById(R.id.sync_big_pictures);
checkBox.setEnabled(i != 2);
if (i == 2) {
checkBox.setChecked(false);
}
}
private void onDismiss() {
ContactsSyncReporter.a.a(ContactsSyncUtils.b(), this.G);
finish();
}
private void x1() {
this.H = getIntent().getIntExtra("force_select_sync_contacts", ContactsSyncUtils.b());
this.I = ContactsSyncUtils.d();
this.K = this.J.findViewById(R.id.welcome_sync_opt1);
this.L = this.J.findViewById(R.id.welcome_sync_opt2);
this.M = this.J.findViewById(R.id.welcome_sync_opt3);
this.K.setChecked(this.H == 0);
this.L.setChecked(this.H == 1);
this.M.setChecked(this.H == 2);
this.J.findViewById(R.id.welcome_sync1).setOnClickListener(this);
this.J.findViewById(R.id.welcome_sync2).setOnClickListener(this);
this.J.findViewById(R.id.welcome_sync3).setOnClickListener(this);
CheckBox checkBox = this.J.findViewById(R.id.sync_big_pictures);
checkBox.setChecked(this.I);
checkBox.setEnabled(this.H != 2);
checkBox.setOnCheckedChangeListener(ContactsSyncAcitvity.this::a);
VkAlertDialog.Builder builder = new VkAlertDialog.Builder(this);
builder.setTitle(R.string.sett_sync);
builder.setView(this.J);
builder.setCancelable(false);
builder.setPositiveButton(R.string.save, ContactsSyncAcitvity.this::a);
builder.setNegativeButton(R.string.cancel, ContactsSyncAcitvity.this::b);
builder.show();
}
public Unit c(List list) {
ContactsSyncReporter.a.a(this.G);
finish();
return Unit.a;
}
@SuppressLint("NonConstantResourceId")
@Override // android.view.View.OnClickListener
public void onClick(View view) {
switch (view.getId()) {
case R.id.welcome_sync1 /* 2131365835 */:
f(0);
return;
case R.id.welcome_sync2 /* 2131365836 */:
f(1);
return;
case R.id.welcome_sync3 /* 2131365837 */:
f(2);
return;
default:
}
}
@Override // com.vtosters.lite.VKActivity, com.vk.core.ui.themes.ThemableActivity, androidx.appcompat.app.AppCompatActivity, androidx.fragment.app.FragmentActivity, androidx.core.app.ComponentActivity, android.app.Activity
public void onCreate(Bundle bundle) {
setTheme(VKThemeHelper.n());
super.onCreate(bundle);
this.G = getIntent().getStringExtra(NavigatorKeys.l0);
this.N = LogoutReceiver.a(this);
overridePendingTransition(0, 0);
getWindow().setBackgroundDrawableResource(R.drawable.transparent);
setContentView(new View(this));
this.J = View.inflate(new ContextThemeWrapper(this, VKThemeHelper.n()), R.layout.welcome, null);
VKThemeHelper.d(this);
PermissionHelper permissionHelper = PermissionHelper.r;
permissionHelper.a(this, permissionHelper.e(), R.string.permissions_contacts_sync, R.string.permissions_contacts_sync_settings, new Functions() { // from class: com.vk.contacts.c
@Override // kotlin.jvm.b.Functions
public Object invoke() {
return ContactsSyncAcitvity.this.w1();
}
}, new Functions2() { // from class: com.vk.contacts.a
@Override // kotlin.jvm.b.Functions2
public Object invoke(Object obj) {
return ContactsSyncAcitvity.this.c((List) obj);
}
});
}
@Override // com.vtosters.lite.VKActivity, androidx.appcompat.app.AppCompatActivity, androidx.fragment.app.FragmentActivity, android.app.Activity
public void onDestroy() {
this.N.a();
super.onDestroy();
}
@Override // android.app.Activity
protected void onRestoreInstanceState(Bundle bundle) {
super.onRestoreInstanceState(bundle);
this.H = bundle.getInt("state_option", 2);
this.I = bundle.getBoolean("state_sync_hq_photo", false);
f(this.H);
}
@Override // androidx.appcompat.app.AppCompatActivity, androidx.fragment.app.FragmentActivity, androidx.core.app.ComponentActivity, android.app.Activity
public void onSaveInstanceState(Bundle bundle) {
super.onSaveInstanceState(bundle);
bundle.putInt("state_option", this.H);
bundle.putBoolean("state_sync_hq_photo", this.I);
}
public Unit w1() {
x1();
return Unit.a;
}
public static void a(Context context, int i, @Nullable String str) {
Intent intent = new Intent(context, ContactsSyncAcitvity.class);
intent.setAction("syncsettings");
intent.putExtra("force_select_sync_contacts", i);
intent.putExtra(NavigatorKeys.l0, str);
if (ContextExtKt.e(context) == null) {
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
}
context.startActivity(intent);
}
public void b(DialogInterface dialogInterface, int i) {
onDismiss();
}
public void a(CompoundButton compoundButton, boolean z) {
this.I = z;
}
public void a(DialogInterface dialogInterface, int i) {
ContactsSyncUtils.b(this.H);
ContactsSyncUtils.a(this.I);
Intent intent = new Intent();
intent.putExtra("option", this.H);
setResult(-1, intent);
onDismiss();
}
public void a(DialogInterface dialogInterface) {
onDismiss();
}
}
@@ -0,0 +1,45 @@
package com.vk.contacts;
import com.vk.metrics.eventtracking.Event;
import com.vk.metrics.eventtracking.VkTracker;
import com.vk.navigation.NavigatorKeys;
public final class ContactsSyncReporter {
public static final ContactsSyncReporter a = new ContactsSyncReporter();
private static final String EVENT_NAME = "LoggingTracker";
private static final String ENABLE_CONTACTS_SYNC = "enable_contacts_sync";
private static final String HAS_CONTACTS_PERMISSION = "has_contacts_permission";
private static final String SELECTED_SYNC_OPTION = "selected_sync_option";
private static final String NAVIGATOR_KEYS_L0 = NavigatorKeys.l0;
private ContactsSyncReporter() {
}
private static Event createEvent(boolean z, int i, String str) {
Event.a a2 = Event.b.a();
a2.a(EVENT_NAME);
a2.a(ENABLE_CONTACTS_SYNC);
a2.a(HAS_CONTACTS_PERMISSION, z);
a2.a(SELECTED_SYNC_OPTION, i != 0 ? (i != 1 ? "disabled" : "contacts") : "all");
if (str == null) {
str = "";
}
a2.a(NAVIGATOR_KEYS_L0, str);
return a2.a();
}
public void a(String str) {
a(false, 2, str);
}
public void a(int i, String str) {
a(true, i, str);
}
private void a(boolean z, int i, String str) {
VkTracker vkTracker = VkTracker.k;
Event event = createEvent(z, i, str);
vkTracker.a(event);
}
}
@@ -0,0 +1,112 @@
package com.vk.contacts;
import android.accounts.Account;
import android.accounts.AccountManager;
import android.content.ContentResolver;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.util.Log;
import com.vk.auth.VKAuthUtils;
import com.vk.core.concurrent.VkExecutors;
import com.vk.core.preference.Preference;
import com.vk.core.util.AppContextHolder;
import com.vk.metrics.eventtracking.VkTracker;
import com.vtosters.lite.auth.VKAccountManager;
public final class ContactsSyncUtils {
private static final SharedPreferences prefs;
static {
prefs = Preference.b();
}
public static void a(boolean z) { // setSyncHqPhotos
try {
prefs.edit().putBoolean("sync_hq_photos", z).apply();
Log.d("Contacts", "setSyncHqPhotos");
} catch (Exception e) {
VkTracker.k.b(e);
e.fillInStackTrace();
}
}
public static void b(int i) { // setSyncOption
try {
prefs.edit().putInt("key_sync_option", i).apply();
syncAccount(i);
Log.d("Contacts", "setSyncOption");
} catch (Exception e) {
VkTracker.k.b(e);
e.fillInStackTrace();
}
}
public static boolean d() { // getSyncHqPhotos
return prefs.getBoolean("sync_hq_photos", false);
}
public static void e() { // syncAccount
syncAccount(b());
Log.d("Contacts", "syncAccount");
}
public static int b() { // getSyncOption
Account[] accounts;
try {
AccountManager accountManager = AccountManager.get(AppContextHolder.a);
accounts = accountManager.getAccountsByType("com.vkontakte.account");
if (accounts.length == 0) {
Account account = new Account(VKAccountManager.d().Z(), "com.vkontakte.account");
try {
accountManager.addAccountExplicitly(account, null, null);
} catch (Exception e) {
VkTracker.k.a(e);
e.fillInStackTrace();
}
accounts = new Account[]{account};
}
if (ContentResolver.getSyncAutomatically(accounts[0], "com.android.contacts")) {
if (prefs.contains("key_sync_option")) {
return prefs.getInt("key_sync_option", 2);
}
if (prefs.contains("sync_all")) {
return prefs.getBoolean("sync_all", false) ? 0 : 1;
}
return 2;
}
return 2;
} catch (Exception e2) {
VkTracker.k.b(e2);
e2.fillInStackTrace();
return 2;
}
}
private static void syncAccount(int i) {
Log.d("Contacts", String.valueOf(i));
if (!VKAccountManager.d().b1()) {
syncAllAccounts();
Log.d("Contacts", "VKAccountManager.d().b1() is not false");
return;
}
Account account = VKAuthUtils.a.a(VKAccountManager.d().Z());
if (i != 2 && account != null) {
syncSingleAccount(account);
Log.d("Contacts", "sync single account, account is " + account);
} else {
syncAllAccounts();
Log.d("Contacts", "sync all accounts, account is " + account);
}
}
private static void syncSingleAccount(Account account) {
Bundle bundle = new Bundle();
bundle.putBoolean("com.vtosters.lite.EXTRA_FORCE_KEY", true);
ContentResolver.requestSync(account, "com.android.contacts", bundle);
VkExecutors.x.l().submit(() -> ContactsSyncAdapterService.a(AppContextHolder.a, account, new Bundle()));
}
private static void syncAllAccounts() {
VkExecutors.x.l().submit(() -> ContactsSyncAdapterService.a(AppContextHolder.a.getContentResolver()));
}
}
@@ -1,790 +0,0 @@
.class public Lcom/vk/contacts/ContactsSyncAcitvity;
.super Lcom/vtosters/lite/VKActivity;
.source "ContactsSyncAcitvity.java"
# interfaces
.implements Landroid/view/View$OnClickListener;
# instance fields
.field private G:Ljava/lang/String;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end field
.field private H:I
.field private I:Z
.field private J:Landroid/view/View;
.field private K:Landroid/widget/RadioButton;
.field private L:Landroid/widget/RadioButton;
.field private M:Landroid/widget/RadioButton;
.field private N:Lcom/vtosters/lite/activities/LogoutReceiver;
# direct methods
.method public constructor <init>()V
.locals 2
.line 1
invoke-direct {p0}, Lcom/vtosters/lite/VKActivity;-><init>()V
const/4 v0, 0x0
.line 2
iput-object v0, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->G:Ljava/lang/String;
const/4 v1, 0x2
.line 3
iput v1, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->H:I
.line 4
iput-object v0, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->N:Lcom/vtosters/lite/activities/LogoutReceiver;
return-void
.end method
.method public static a(Landroid/content/Context;)V
.locals 1
.line 1
invoke-static {}, Lcom/vk/contacts/ContactsSyncUtils;->b()I
move-result v0
invoke-static {p0, v0}, Lcom/vk/contacts/ContactsSyncAcitvity;->b(Landroid/content/Context;I)V
return-void
.end method
.method public static a(Landroid/content/Context;ILjava/lang/String;)V
.locals 2
.param p2 # Ljava/lang/String;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.line 2
new-instance v0, Landroid/content/Intent;
const-class v1, Lcom/vk/contacts/ContactsSyncAcitvity;
invoke-direct {v0, p0, v1}, Landroid/content/Intent;-><init>(Landroid/content/Context;Ljava/lang/Class;)V
const-string v1, "syncsettings"
.line 3
invoke-virtual {v0, v1}, Landroid/content/Intent;->setAction(Ljava/lang/String;)Landroid/content/Intent;
const-string v1, "force_select_sync_contacts"
.line 4
invoke-virtual {v0, v1, p1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;I)Landroid/content/Intent;
const-string p1, "track_code"
.line 5
invoke-virtual {v0, p1, p2}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
.line 6
invoke-static {p0}, Lcom/vk/core/util/ContextExtKt;->e(Landroid/content/Context;)Landroid/app/Activity;
move-result-object p1
if-nez p1, :cond_0
const/high16 p1, 0x10000000
.line 7
invoke-virtual {v0, p1}, Landroid/content/Intent;->addFlags(I)Landroid/content/Intent;
.line 8
:cond_0
invoke-virtual {p0, v0}, Landroid/content/Context;->startActivity(Landroid/content/Intent;)V
return-void
.end method
.method public static b(Landroid/content/Context;I)V
.locals 1
const/4 v0, 0x0
.line 1
invoke-static {p0, p1, v0}, Lcom/vk/contacts/ContactsSyncAcitvity;->a(Landroid/content/Context;ILjava/lang/String;)V
return-void
.end method
.method private f(I)V
.locals 5
.line 1
iput p1, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->H:I
.line 2
iget-object v0, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->K:Landroid/widget/RadioButton;
const/4 v1, 0x1
const/4 v2, 0x0
if-nez p1, :cond_0
const/4 v3, 0x1
goto :goto_0
:cond_0
const/4 v3, 0x0
:goto_0
invoke-virtual {v0, v3}, Landroid/widget/RadioButton;->setChecked(Z)V
.line 3
iget-object v0, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->L:Landroid/widget/RadioButton;
if-ne p1, v1, :cond_1
const/4 v3, 0x1
goto :goto_1
:cond_1
const/4 v3, 0x0
:goto_1
invoke-virtual {v0, v3}, Landroid/widget/RadioButton;->setChecked(Z)V
.line 4
iget-object v0, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->M:Landroid/widget/RadioButton;
const/4 v3, 0x2
if-ne p1, v3, :cond_2
const/4 v4, 0x1
goto :goto_2
:cond_2
const/4 v4, 0x0
:goto_2
invoke-virtual {v0, v4}, Landroid/widget/RadioButton;->setChecked(Z)V
.line 5
iget-object v0, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->J:Landroid/view/View;
const v4, 0x7f0a0d0f
invoke-virtual {v0, v4}, Landroid/view/View;->findViewById(I)Landroid/view/View;
move-result-object v0
check-cast v0, Landroid/widget/CheckBox;
if-eq p1, v3, :cond_3
goto :goto_3
:cond_3
const/4 v1, 0x0
.line 6
:goto_3
invoke-virtual {v0, v1}, Landroid/widget/CheckBox;->setEnabled(Z)V
if-ne p1, v3, :cond_4
.line 7
invoke-virtual {v0, v2}, Landroid/widget/CheckBox;->setChecked(Z)V
:cond_4
return-void
.end method
.method private onDismiss()V
.locals 3
.line 1
sget-object v0, Lcom/vk/contacts/ContactsSyncReporter;->a:Lcom/vk/contacts/ContactsSyncReporter;
invoke-static {}, Lcom/vk/contacts/ContactsSyncUtils;->b()I
move-result v1
iget-object v2, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->G:Ljava/lang/String;
invoke-virtual {v0, v1, v2}, Lcom/vk/contacts/ContactsSyncReporter;->a(ILjava/lang/String;)V
.line 2
invoke-virtual {p0}, Lcom/vtosters/lite/VKActivity;->finish()V
return-void
.end method
.method private x1()V
.locals 5
.line 1
invoke-virtual {p0}, Landroid/app/Activity;->getIntent()Landroid/content/Intent;
move-result-object v0
.line 2
invoke-static {}, Lcom/vk/contacts/ContactsSyncUtils;->b()I
move-result v1
const-string v2, "force_select_sync_contacts"
.line 3
invoke-virtual {v0, v2, v1}, Landroid/content/Intent;->getIntExtra(Ljava/lang/String;I)I
move-result v0
iput v0, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->H:I
.line 4
invoke-static {}, Lcom/vk/contacts/ContactsSyncUtils;->d()Z
move-result v0
iput-boolean v0, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->I:Z
.line 5
iget-object v0, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->J:Landroid/view/View;
const v1, 0x7f0a0fce
invoke-virtual {v0, v1}, Landroid/view/View;->findViewById(I)Landroid/view/View;
move-result-object v0
check-cast v0, Landroid/widget/RadioButton;
iput-object v0, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->K:Landroid/widget/RadioButton;
.line 6
iget-object v0, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->J:Landroid/view/View;
const v1, 0x7f0a0fcf
invoke-virtual {v0, v1}, Landroid/view/View;->findViewById(I)Landroid/view/View;
move-result-object v0
check-cast v0, Landroid/widget/RadioButton;
iput-object v0, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->L:Landroid/widget/RadioButton;
.line 7
iget-object v0, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->J:Landroid/view/View;
const v1, 0x7f0a0fd0
invoke-virtual {v0, v1}, Landroid/view/View;->findViewById(I)Landroid/view/View;
move-result-object v0
check-cast v0, Landroid/widget/RadioButton;
iput-object v0, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->M:Landroid/widget/RadioButton;
.line 8
iget-object v0, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->K:Landroid/widget/RadioButton;
iget v1, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->H:I
const/4 v2, 0x0
const/4 v3, 0x1
if-nez v1, :cond_0
const/4 v1, 0x1
goto :goto_0
:cond_0
const/4 v1, 0x0
:goto_0
invoke-virtual {v0, v1}, Landroid/widget/RadioButton;->setChecked(Z)V
.line 9
iget-object v0, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->L:Landroid/widget/RadioButton;
iget v1, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->H:I
if-ne v1, v3, :cond_1
const/4 v1, 0x1
goto :goto_1
:cond_1
const/4 v1, 0x0
:goto_1
invoke-virtual {v0, v1}, Landroid/widget/RadioButton;->setChecked(Z)V
.line 10
iget-object v0, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->M:Landroid/widget/RadioButton;
iget v1, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->H:I
const/4 v4, 0x2
if-ne v1, v4, :cond_2
const/4 v1, 0x1
goto :goto_2
:cond_2
const/4 v1, 0x0
:goto_2
invoke-virtual {v0, v1}, Landroid/widget/RadioButton;->setChecked(Z)V
.line 11
iget-object v0, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->J:Landroid/view/View;
const v1, 0x7f0a0d0f
invoke-virtual {v0, v1}, Landroid/view/View;->findViewById(I)Landroid/view/View;
move-result-object v0
check-cast v0, Landroid/widget/CheckBox;
.line 12
iget-boolean v1, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->I:Z
invoke-virtual {v0, v1}, Landroid/widget/CheckBox;->setChecked(Z)V
.line 13
iget v1, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->H:I
if-eq v1, v4, :cond_3
const/4 v2, 0x1
:cond_3
invoke-virtual {v0, v2}, Landroid/widget/CheckBox;->setEnabled(Z)V
.line 14
new-instance v1, Lcom/vk/contacts/d;
invoke-direct {v1, p0}, Lcom/vk/contacts/d;-><init>(Lcom/vk/contacts/ContactsSyncAcitvity;)V
invoke-virtual {v0, v1}, Landroid/widget/CheckBox;->setOnCheckedChangeListener(Landroid/widget/CompoundButton$OnCheckedChangeListener;)V
.line 15
iget-object v0, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->J:Landroid/view/View;
const v1, 0x7f0a0fcb
invoke-virtual {v0, v1}, Landroid/view/View;->findViewById(I)Landroid/view/View;
move-result-object v0
invoke-virtual {v0, p0}, Landroid/view/View;->setOnClickListener(Landroid/view/View$OnClickListener;)V
.line 16
iget-object v0, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->J:Landroid/view/View;
const v1, 0x7f0a0fcc
invoke-virtual {v0, v1}, Landroid/view/View;->findViewById(I)Landroid/view/View;
move-result-object v0
invoke-virtual {v0, p0}, Landroid/view/View;->setOnClickListener(Landroid/view/View$OnClickListener;)V
.line 17
iget-object v0, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->J:Landroid/view/View;
const v1, 0x7f0a0fcd
invoke-virtual {v0, v1}, Landroid/view/View;->findViewById(I)Landroid/view/View;
move-result-object v0
invoke-virtual {v0, p0}, Landroid/view/View;->setOnClickListener(Landroid/view/View$OnClickListener;)V
.line 18
new-instance v0, Lcom/vk/core/dialogs/alert/VkAlertDialog$Builder;
invoke-direct {v0, p0}, Lcom/vk/core/dialogs/alert/VkAlertDialog$Builder;-><init>(Landroid/content/Context;)V
const v1, 0x7f120d60
.line 19
invoke-virtual {v0, v1}, Lcom/vk/core/dialogs/alert/VkAlertDialog$Builder;->setTitle(I)Lcom/vk/core/dialogs/alert/VkAlertDialog$Builder;
iget-object v1, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->J:Landroid/view/View;
.line 20
invoke-virtual {v0, v1}, Lcom/vk/core/dialogs/alert/VkAlertDialog$Builder;->setView(Landroid/view/View;)Lcom/vk/core/dialogs/alert/VkAlertDialog$Builder;
const v1, 0x7f120cb1
new-instance v2, Lcom/vk/contacts/e;
invoke-direct {v2, p0}, Lcom/vk/contacts/e;-><init>(Lcom/vk/contacts/ContactsSyncAcitvity;)V
.line 21
invoke-virtual {v0, v1, v2}, Lcom/vk/core/dialogs/alert/VkAlertDialog$Builder;->setPositiveButton(ILandroid/content/DialogInterface$OnClickListener;)Lcom/vk/core/dialogs/alert/VkAlertDialog$Builder;
const v1, 0x7f12018a
new-instance v2, Lcom/vk/contacts/f;
invoke-direct {v2, p0}, Lcom/vk/contacts/f;-><init>(Lcom/vk/contacts/ContactsSyncAcitvity;)V
.line 22
invoke-virtual {v0, v1, v2}, Lcom/vk/core/dialogs/alert/VkAlertDialog$Builder;->setNegativeButton(ILandroid/content/DialogInterface$OnClickListener;)Lcom/vk/core/dialogs/alert/VkAlertDialog$Builder;
new-instance v1, Lcom/vk/contacts/b;
invoke-direct {v1, p0}, Lcom/vk/contacts/b;-><init>(Lcom/vk/contacts/ContactsSyncAcitvity;)V
.line 23
invoke-virtual {v0, v1}, Landroidx/appcompat/app/AlertDialog$Builder;->setOnCancelListener(Landroid/content/DialogInterface$OnCancelListener;)Landroidx/appcompat/app/AlertDialog$Builder;
move-result-object v0
.line 24
invoke-virtual {v0}, Landroidx/appcompat/app/AlertDialog$Builder;->show()Landroidx/appcompat/app/AlertDialog;
return-void
.end method
# virtual methods
.method public synthetic a(Landroid/content/DialogInterface;)V
.locals 0
.line 16
invoke-direct {p0}, Lcom/vk/contacts/ContactsSyncAcitvity;->onDismiss()V
return-void
.end method
.method public synthetic a(Landroid/content/DialogInterface;I)V
.locals 1
.line 10
iget p1, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->H:I
invoke-static {p1}, Lcom/vk/contacts/ContactsSyncUtils;->b(I)V
.line 11
iget-boolean p1, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->I:Z
invoke-static {p1}, Lcom/vk/contacts/ContactsSyncUtils;->a(Z)V
.line 12
new-instance p1, Landroid/content/Intent;
invoke-direct {p1}, Landroid/content/Intent;-><init>()V
.line 13
iget p2, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->H:I
const-string v0, "option"
invoke-virtual {p1, v0, p2}, Landroid/content/Intent;->putExtra(Ljava/lang/String;I)Landroid/content/Intent;
const/4 p2, -0x1
.line 14
invoke-virtual {p0, p2, p1}, Landroid/app/Activity;->setResult(ILandroid/content/Intent;)V
.line 15
invoke-direct {p0}, Lcom/vk/contacts/ContactsSyncAcitvity;->onDismiss()V
return-void
.end method
.method public synthetic a(Landroid/widget/CompoundButton;Z)V
.locals 0
.line 9
iput-boolean p2, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->I:Z
return-void
.end method
.method public synthetic b(Landroid/content/DialogInterface;I)V
.locals 0
.line 2
invoke-direct {p0}, Lcom/vk/contacts/ContactsSyncAcitvity;->onDismiss()V
return-void
.end method
.method public synthetic c(Ljava/util/List;)Lkotlin/Unit;
.locals 1
.line 1
sget-object p1, Lcom/vk/contacts/ContactsSyncReporter;->a:Lcom/vk/contacts/ContactsSyncReporter;
iget-object v0, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->G:Ljava/lang/String;
invoke-virtual {p1, v0}, Lcom/vk/contacts/ContactsSyncReporter;->a(Ljava/lang/String;)V
.line 2
invoke-virtual {p0}, Lcom/vtosters/lite/VKActivity;->finish()V
.line 3
sget-object p1, Lkotlin/Unit;->a:Lkotlin/Unit;
return-object p1
.end method
.method public onClick(Landroid/view/View;)V
.locals 0
.line 1
invoke-virtual {p1}, Landroid/view/View;->getId()I
move-result p1
packed-switch p1, :pswitch_data_0
goto :goto_0
:pswitch_0
const/4 p1, 0x2
.line 2
invoke-direct {p0, p1}, Lcom/vk/contacts/ContactsSyncAcitvity;->f(I)V
goto :goto_0
:pswitch_1
const/4 p1, 0x1
.line 3
invoke-direct {p0, p1}, Lcom/vk/contacts/ContactsSyncAcitvity;->f(I)V
goto :goto_0
:pswitch_2
const/4 p1, 0x0
.line 4
invoke-direct {p0, p1}, Lcom/vk/contacts/ContactsSyncAcitvity;->f(I)V
:goto_0
return-void
nop
:pswitch_data_0
.packed-switch 0x7f0a0fcb
:pswitch_2
:pswitch_1
:pswitch_0
.end packed-switch
.end method
.method public onCreate(Landroid/os/Bundle;)V
.locals 7
.line 1
invoke-static {}, Lcom/vk/core/ui/themes/VKThemeHelper;->n()I
move-result v0
invoke-virtual {p0, v0}, Landroidx/appcompat/app/AppCompatActivity;->setTheme(I)V
.line 2
invoke-super {p0, p1}, Lcom/vtosters/lite/VKActivity;->onCreate(Landroid/os/Bundle;)V
.line 3
invoke-virtual {p0}, Landroid/app/Activity;->getIntent()Landroid/content/Intent;
move-result-object p1
const-string v0, "track_code"
invoke-virtual {p1, v0}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
iput-object p1, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->G:Ljava/lang/String;
.line 4
invoke-static {p0}, Lcom/vtosters/lite/activities/LogoutReceiver;->a(Landroid/app/Activity;)Lcom/vtosters/lite/activities/LogoutReceiver;
move-result-object p1
iput-object p1, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->N:Lcom/vtosters/lite/activities/LogoutReceiver;
const/4 p1, 0x0
.line 5
invoke-virtual {p0, p1, p1}, Landroid/app/Activity;->overridePendingTransition(II)V
.line 6
invoke-virtual {p0}, Landroid/app/Activity;->getWindow()Landroid/view/Window;
move-result-object p1
const v0, 0x7f080a50
invoke-virtual {p1, v0}, Landroid/view/Window;->setBackgroundDrawableResource(I)V
.line 7
new-instance p1, Landroid/view/View;
invoke-direct {p1, p0}, Landroid/view/View;-><init>(Landroid/content/Context;)V
invoke-virtual {p0, p1}, Landroidx/appcompat/app/AppCompatActivity;->setContentView(Landroid/view/View;)V
.line 8
new-instance p1, Landroid/view/ContextThemeWrapper;
invoke-static {}, Lcom/vk/core/ui/themes/VKThemeHelper;->n()I
move-result v0
invoke-direct {p1, p0, v0}, Landroid/view/ContextThemeWrapper;-><init>(Landroid/content/Context;I)V
const v0, 0x7f0d06d5
const/4 v1, 0x0
invoke-static {p1, v0, v1}, Landroid/view/View;->inflate(Landroid/content/Context;ILandroid/view/ViewGroup;)Landroid/view/View;
move-result-object p1
iput-object p1, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->J:Landroid/view/View;
.line 9
invoke-static {p0}, Lcom/vk/core/ui/themes/VKThemeHelper;->d(Landroid/app/Activity;)V
.line 10
sget-object v0, Lcom/vk/permission/PermissionHelper;->r:Lcom/vk/permission/PermissionHelper;
.line 11
invoke-virtual {v0}, Lcom/vk/permission/PermissionHelper;->e()[Ljava/lang/String;
move-result-object v2
new-instance v5, Lcom/vk/contacts/c;
invoke-direct {v5, p0}, Lcom/vk/contacts/c;-><init>(Lcom/vk/contacts/ContactsSyncAcitvity;)V
new-instance v6, Lcom/vk/contacts/a;
invoke-direct {v6, p0}, Lcom/vk/contacts/a;-><init>(Lcom/vk/contacts/ContactsSyncAcitvity;)V
const v3, 0x7f120a13
const v4, 0x7f120a14
move-object v1, p0
.line 12
invoke-virtual/range {v0 .. v6}, Lcom/vk/permission/PermissionHelper;->a(Landroid/app/Activity;[Ljava/lang/String;IILkotlin/jvm/b/Functions;Lkotlin/jvm/b/Functions2;)Z
return-void
.end method
.method protected onDestroy()V
.locals 1
.line 1
iget-object v0, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->N:Lcom/vtosters/lite/activities/LogoutReceiver;
invoke-virtual {v0}, Lcom/vtosters/lite/activities/LogoutReceiver;->a()V
.line 2
invoke-super {p0}, Lcom/vtosters/lite/VKActivity;->onDestroy()V
return-void
.end method
.method protected onRestoreInstanceState(Landroid/os/Bundle;)V
.locals 2
.line 1
invoke-super {p0, p1}, Landroid/app/Activity;->onRestoreInstanceState(Landroid/os/Bundle;)V
const-string v0, "state_option"
const/4 v1, 0x2
.line 2
invoke-virtual {p1, v0, v1}, Landroid/os/Bundle;->getInt(Ljava/lang/String;I)I
move-result v0
iput v0, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->H:I
const-string v0, "state_sync_hq_photo"
const/4 v1, 0x0
.line 3
invoke-virtual {p1, v0, v1}, Landroid/os/Bundle;->getBoolean(Ljava/lang/String;Z)Z
move-result p1
iput-boolean p1, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->I:Z
.line 4
iget p1, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->H:I
invoke-direct {p0, p1}, Lcom/vk/contacts/ContactsSyncAcitvity;->f(I)V
return-void
.end method
.method protected onSaveInstanceState(Landroid/os/Bundle;)V
.locals 2
.line 1
invoke-super {p0, p1}, Landroidx/appcompat/app/AppCompatActivity;->onSaveInstanceState(Landroid/os/Bundle;)V
.line 2
iget v0, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->H:I
const-string v1, "state_option"
invoke-virtual {p1, v1, v0}, Landroid/os/Bundle;->putInt(Ljava/lang/String;I)V
.line 3
iget-boolean v0, p0, Lcom/vk/contacts/ContactsSyncAcitvity;->I:Z
const-string v1, "state_sync_hq_photo"
invoke-virtual {p1, v1, v0}, Landroid/os/Bundle;->putBoolean(Ljava/lang/String;Z)V
return-void
.end method
.method public synthetic w1()Lkotlin/Unit;
.locals 1
.line 1
invoke-direct {p0}, Lcom/vk/contacts/ContactsSyncAcitvity;->x1()V
.line 2
sget-object v0, Lkotlin/Unit;->a:Lkotlin/Unit;
return-object v0
.end method
@@ -598,7 +598,7 @@
:sswitch_2
move/from16 v27, v14
const-string v14, "vnd.android.cursor.item/vnd.com.vkontakte.android.sendmsg"
const-string v14, "vnd.android.cursor.item/vnd.com.vtosters.lite.sendmsg"
invoke-virtual {v0, v14}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
@@ -613,7 +613,7 @@
:sswitch_3
move/from16 v27, v14
const-string v14, "vnd.android.cursor.item/vnd.com.vkontakte.android.voipcall"
const-string v14, "vnd.android.cursor.item/vnd.com.vtosters.lite.voipcall"
invoke-virtual {v0, v14}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
@@ -1619,7 +1619,7 @@
.line 92
invoke-virtual {v1, v6, v15}, Landroid/content/ContentProviderOperation$Builder;->withValueBackReference(Ljava/lang/String;I)Landroid/content/ContentProviderOperation$Builder;
const-string v3, "vnd.android.cursor.item/vnd.com.vkontakte.android.profile"
const-string v3, "vnd.android.cursor.item/vnd.com.vtosters.lite.profile"
.line 93
invoke-virtual {v1, v13, v3}, Landroid/content/ContentProviderOperation$Builder;->withValue(Ljava/lang/String;Ljava/lang/Object;)Landroid/content/ContentProviderOperation$Builder;
@@ -1702,7 +1702,7 @@
invoke-virtual {v1, v6, v3}, Landroid/content/ContentProviderOperation$Builder;->withValue(Ljava/lang/String;Ljava/lang/Object;)Landroid/content/ContentProviderOperation$Builder;
:goto_14
const-string v3, "vnd.android.cursor.item/vnd.com.vkontakte.android.sendmsg"
const-string v3, "vnd.android.cursor.item/vnd.com.vtosters.lite.sendmsg"
.line 102
invoke-virtual {v1, v13, v3}, Landroid/content/ContentProviderOperation$Builder;->withValue(Ljava/lang/String;Ljava/lang/Object;)Landroid/content/ContentProviderOperation$Builder;
@@ -1789,7 +1789,7 @@
invoke-virtual {v1, v6, v3}, Landroid/content/ContentProviderOperation$Builder;->withValue(Ljava/lang/String;Ljava/lang/Object;)Landroid/content/ContentProviderOperation$Builder;
:goto_15
const-string v3, "vnd.android.cursor.item/vnd.com.vkontakte.android.voipcall"
const-string v3, "vnd.android.cursor.item/vnd.com.vtosters.lite.voipcall"
.line 112
invoke-virtual {v1, v13, v3}, Landroid/content/ContentProviderOperation$Builder;->withValue(Ljava/lang/String;Ljava/lang/Object;)Landroid/content/ContentProviderOperation$Builder;
@@ -1865,7 +1865,7 @@
invoke-virtual {v1, v6, v3}, Landroid/content/ContentProviderOperation$Builder;->withValue(Ljava/lang/String;Ljava/lang/Object;)Landroid/content/ContentProviderOperation$Builder;
:goto_16
const-string v3, "vnd.android.cursor.item/vnd.com.vkontakte.android.assistant.sendmsg"
const-string v3, "vnd.android.cursor.item/vnd.com.vtosters.lite.assistant.sendmsg"
.line 121
invoke-virtual {v1, v13, v3}, Landroid/content/ContentProviderOperation$Builder;->withValue(Ljava/lang/String;Ljava/lang/Object;)Landroid/content/ContentProviderOperation$Builder;
@@ -2811,7 +2811,7 @@
.line 41
iput-boolean v4, v1, Landroid/content/SyncResult;->fullSyncRequested:Z
const-string v0, "com.vkontakte.android.EXTRA_FORCE_KEY"
const-string v0, "com.vtosters.lite.EXTRA_FORCE_KEY"
move-object/from16 v6, p2
@@ -1,146 +0,0 @@
.class public final Lcom/vk/contacts/ContactsSyncReporter;
.super Ljava/lang/Object;
.source "ContactsSyncReporter.kt"
# static fields
.field public static final a:Lcom/vk/contacts/ContactsSyncReporter;
# direct methods
.method static constructor <clinit>()V
.locals 1
.line 1
new-instance v0, Lcom/vk/contacts/ContactsSyncReporter;
invoke-direct {v0}, Lcom/vk/contacts/ContactsSyncReporter;-><init>()V
sput-object v0, Lcom/vk/contacts/ContactsSyncReporter;->a:Lcom/vk/contacts/ContactsSyncReporter;
return-void
.end method
.method private constructor <init>()V
.locals 0
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method private final a(ZILjava/lang/String;)V
.locals 4
.line 3
sget-object v0, Lcom/vk/metrics/eventtracking/VkTracker;->k:Lcom/vk/metrics/eventtracking/VkTracker;
sget-object v1, Lcom/vk/metrics/eventtracking/Event;->b:Lcom/vk/metrics/eventtracking/Event$b;
invoke-virtual {v1}, Lcom/vk/metrics/eventtracking/Event$b;->a()Lcom/vk/metrics/eventtracking/Event$a;
move-result-object v1
const-string v2, "StatlogTracker"
const-string v3, "LoggingTracker"
.line 4
filled-new-array {v2, v3}, [Ljava/lang/String;
move-result-object v2
invoke-static {v2}, Lkotlin/collections/l;->c([Ljava/lang/Object;)Ljava/util/List;
move-result-object v2
invoke-virtual {v1, v2}, Lcom/vk/metrics/eventtracking/Event$a;->a(Ljava/util/List;)Lcom/vk/metrics/eventtracking/Event$a;
const-string v2, "enable_contacts_sync"
.line 5
invoke-virtual {v1, v2}, Lcom/vk/metrics/eventtracking/Event$a;->a(Ljava/lang/String;)Lcom/vk/metrics/eventtracking/Event$a;
.line 6
invoke-static {p1}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
move-result-object p1
const-string v2, "has_contacts_permission"
invoke-virtual {v1, v2, p1}, Lcom/vk/metrics/eventtracking/Event$a;->a(Ljava/lang/String;Ljava/lang/Object;)Lcom/vk/metrics/eventtracking/Event$a;
if-eqz p2, :cond_1
const/4 p1, 0x1
if-eq p2, p1, :cond_0
const-string p1, "disabled"
goto :goto_0
:cond_0
const-string p1, "contacts"
goto :goto_0
:cond_1
const-string p1, "all"
:goto_0
const-string p2, "selected_sync_option"
.line 7
invoke-virtual {v1, p2, p1}, Lcom/vk/metrics/eventtracking/Event$a;->a(Ljava/lang/String;Ljava/lang/String;)Lcom/vk/metrics/eventtracking/Event$a;
if-eqz p3, :cond_2
goto :goto_1
:cond_2
const-string p3, ""
:goto_1
const-string p1, "track_code"
.line 8
invoke-virtual {v1, p1, p3}, Lcom/vk/metrics/eventtracking/Event$a;->a(Ljava/lang/String;Ljava/lang/String;)Lcom/vk/metrics/eventtracking/Event$a;
.line 9
invoke-virtual {v1}, Lcom/vk/metrics/eventtracking/Event$a;->a()Lcom/vk/metrics/eventtracking/Event;
move-result-object p1
.line 10
invoke-virtual {v0, p1}, Lcom/vk/metrics/eventtracking/VkTracker;->a(Lcom/vk/metrics/eventtracking/Event;)V
return-void
.end method
# virtual methods
.method public final a(ILjava/lang/String;)V
.locals 1
const/4 v0, 0x1
.line 2
invoke-direct {p0, v0, p1, p2}, Lcom/vk/contacts/ContactsSyncReporter;->a(ZILjava/lang/String;)V
return-void
.end method
.method public final a(Ljava/lang/String;)V
.locals 2
const/4 v0, 0x0
const/4 v1, 0x2
.line 1
invoke-direct {p0, v0, v1, p1}, Lcom/vk/contacts/ContactsSyncReporter;->a(ZILjava/lang/String;)V
return-void
.end method
@@ -1,64 +0,0 @@
.class final Lcom/vk/contacts/ContactsSyncUtils$a;
.super Ljava/lang/Object;
.source "ContactsSyncUtils.kt"
# interfaces
.implements Ljava/lang/Runnable;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Lcom/vk/contacts/ContactsSyncUtils;->a()V
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x18
name = null
.end annotation
# static fields
.field public static final a:Lcom/vk/contacts/ContactsSyncUtils$a;
# direct methods
.method static constructor <clinit>()V
.locals 1
new-instance v0, Lcom/vk/contacts/ContactsSyncUtils$a;
invoke-direct {v0}, Lcom/vk/contacts/ContactsSyncUtils$a;-><init>()V
sput-object v0, Lcom/vk/contacts/ContactsSyncUtils$a;->a:Lcom/vk/contacts/ContactsSyncUtils$a;
return-void
.end method
.method constructor <init>()V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public final run()V
.locals 2
.line 1
sget-object v0, Lcom/vk/core/util/AppContextHolder;->a:Landroid/content/Context;
const-string v1, "AppContextHolder.context"
invoke-static {v0, v1}, Lkotlin/jvm/internal/Intrinsics;->a(Ljava/lang/Object;Ljava/lang/String;)V
invoke-virtual {v0}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object v0
invoke-static {v0}, Lcom/vk/contacts/ContactsSyncAdapterService;->a(Landroid/content/ContentResolver;)V
return-void
.end method
@@ -1,52 +0,0 @@
.class final Lcom/vk/contacts/ContactsSyncUtils$b;
.super Ljava/lang/Object;
.source "ContactsSyncUtils.kt"
# interfaces
.implements Ljava/lang/Runnable;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Lcom/vk/contacts/ContactsSyncUtils;->a(Landroid/accounts/Account;)V
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x18
name = null
.end annotation
# instance fields
.field final synthetic a:Landroid/accounts/Account;
# direct methods
.method constructor <init>(Landroid/accounts/Account;)V
.locals 0
iput-object p1, p0, Lcom/vk/contacts/ContactsSyncUtils$b;->a:Landroid/accounts/Account;
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public final run()V
.locals 3
.line 1
sget-object v0, Lcom/vk/core/util/AppContextHolder;->a:Landroid/content/Context;
iget-object v1, p0, Lcom/vk/contacts/ContactsSyncUtils$b;->a:Landroid/accounts/Account;
new-instance v2, Landroid/os/Bundle;
invoke-direct {v2}, Landroid/os/Bundle;-><init>()V
invoke-static {v0, v1, v2}, Lcom/vk/contacts/ContactsSyncAdapterService;->a(Landroid/content/Context;Landroid/accounts/Account;Landroid/os/Bundle;)V
return-void
.end method
@@ -1,78 +0,0 @@
.class final Lcom/vk/contacts/ContactsSyncUtils$prefs$2;
.super Lkotlin/jvm/internal/Lambda;
.source "ContactsSyncUtils.kt"
# interfaces
.implements Lkotlin/jvm/b/Functions;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/vk/contacts/ContactsSyncUtils;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x18
name = null
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lkotlin/jvm/internal/Lambda;",
"Lkotlin/jvm/b/Functions<",
"Landroid/content/SharedPreferences;",
">;"
}
.end annotation
# static fields
.field public static final a:Lcom/vk/contacts/ContactsSyncUtils$prefs$2;
# direct methods
.method static constructor <clinit>()V
.locals 1
new-instance v0, Lcom/vk/contacts/ContactsSyncUtils$prefs$2;
invoke-direct {v0}, Lcom/vk/contacts/ContactsSyncUtils$prefs$2;-><init>()V
sput-object v0, Lcom/vk/contacts/ContactsSyncUtils$prefs$2;->a:Lcom/vk/contacts/ContactsSyncUtils$prefs$2;
return-void
.end method
.method constructor <init>()V
.locals 1
const/4 v0, 0x0
invoke-direct {p0, v0}, Lkotlin/jvm/internal/Lambda;-><init>(I)V
return-void
.end method
# virtual methods
.method public final invoke()Landroid/content/SharedPreferences;
.locals 1
.line 2
invoke-static {}, Lcom/vk/core/preference/Preference;->b()Landroid/content/SharedPreferences;
move-result-object v0
return-object v0
.end method
.method public bridge synthetic invoke()Ljava/lang/Object;
.locals 1
.line 1
invoke-virtual {p0}, Lcom/vk/contacts/ContactsSyncUtils$prefs$2;->invoke()Landroid/content/SharedPreferences;
move-result-object v0
return-object v0
.end method
@@ -1,502 +0,0 @@
.class public final Lcom/vk/contacts/ContactsSyncUtils;
.super Ljava/lang/Object;
.source "ContactsSyncUtils.kt"
# static fields
.field static final synthetic a:[Lkotlin/u/KProperty5;
.field private static final b:Lkotlin/Lazy2;
.field public static final c:Lcom/vk/contacts/ContactsSyncUtils;
# direct methods
.method static constructor <clinit>()V
.locals 5
const/4 v0, 0x1
new-array v0, v0, [Lkotlin/u/KProperty5;
new-instance v1, Lkotlin/jvm/internal/PropertyReference1Impl;
const-class v2, Lcom/vk/contacts/ContactsSyncUtils;
invoke-static {v2}, Lkotlin/jvm/internal/Reflection;->a(Ljava/lang/Class;)Lkotlin/u/KClass;
move-result-object v2
const-string v3, "prefs"
const-string v4, "getPrefs()Landroid/content/SharedPreferences;"
invoke-direct {v1, v2, v3, v4}, Lkotlin/jvm/internal/PropertyReference1Impl;-><init>(Lkotlin/u/KDeclarationContainer;Ljava/lang/String;Ljava/lang/String;)V
invoke-static {v1}, Lkotlin/jvm/internal/Reflection;->a(Lkotlin/jvm/internal/PropertyReference1;)Lkotlin/u/KProperty2;
const/4 v2, 0x0
aput-object v1, v0, v2
sput-object v0, Lcom/vk/contacts/ContactsSyncUtils;->a:[Lkotlin/u/KProperty5;
.line 1
new-instance v0, Lcom/vk/contacts/ContactsSyncUtils;
invoke-direct {v0}, Lcom/vk/contacts/ContactsSyncUtils;-><init>()V
sput-object v0, Lcom/vk/contacts/ContactsSyncUtils;->c:Lcom/vk/contacts/ContactsSyncUtils;
.line 2
sget-object v0, Lcom/vk/contacts/ContactsSyncUtils$prefs$2;->a:Lcom/vk/contacts/ContactsSyncUtils$prefs$2;
invoke-static {v0}, Lkotlin/g;->a(Lkotlin/jvm/b/Functions;)Lkotlin/Lazy2;
move-result-object v0
sput-object v0, Lcom/vk/contacts/ContactsSyncUtils;->b:Lkotlin/Lazy2;
return-void
.end method
.method private constructor <init>()V
.locals 0
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method private final a()V
.locals 2
.line 14
sget-object v0, Lcom/vk/core/concurrent/VkExecutors;->x:Lcom/vk/core/concurrent/VkExecutors;
invoke-virtual {v0}, Lcom/vk/core/concurrent/VkExecutors;->l()Ljava/util/concurrent/ExecutorService;
move-result-object v0
sget-object v1, Lcom/vk/contacts/ContactsSyncUtils$a;->a:Lcom/vk/contacts/ContactsSyncUtils$a;
invoke-interface {v0, v1}, Ljava/util/concurrent/ExecutorService;->submit(Ljava/lang/Runnable;)Ljava/util/concurrent/Future;
return-void
.end method
.method private final a(I)V
.locals 2
.line 5
invoke-static {}, Lcom/vtosters/lite/auth/VKAccountManager;->d()Lcom/vk/auth/api/VKAccount;
move-result-object v0
invoke-virtual {v0}, Lcom/vk/auth/api/VKAccount;->b1()Z
move-result v0
if-nez v0, :cond_0
.line 6
invoke-direct {p0}, Lcom/vk/contacts/ContactsSyncUtils;->a()V
return-void
.line 7
:cond_0
sget-object v0, Lcom/vk/auth/VKAuthUtils;->a:Lcom/vk/auth/VKAuthUtils$a;
invoke-static {}, Lcom/vtosters/lite/auth/VKAccountManager;->d()Lcom/vk/auth/api/VKAccount;
move-result-object v1
invoke-virtual {v1}, Lcom/vk/auth/api/VKAccount;->Z()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Lcom/vk/auth/VKAuthUtils$a;->a(Ljava/lang/String;)Landroid/accounts/Account;
move-result-object v0
const/4 v1, 0x2
if-eq p1, v1, :cond_1
if-eqz v0, :cond_1
.line 8
invoke-direct {p0, v0}, Lcom/vk/contacts/ContactsSyncUtils;->a(Landroid/accounts/Account;)V
goto :goto_0
.line 9
:cond_1
invoke-direct {p0}, Lcom/vk/contacts/ContactsSyncUtils;->a()V
:goto_0
return-void
.end method
.method private final a(Landroid/accounts/Account;)V
.locals 3
.line 10
new-instance v0, Landroid/os/Bundle;
invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
const-string v1, "com.vkontakte.android.EXTRA_FORCE_KEY"
const/4 v2, 0x1
.line 11
invoke-virtual {v0, v1, v2}, Landroid/os/Bundle;->putBoolean(Ljava/lang/String;Z)V
const-string v1, "com.android.contacts"
.line 12
invoke-static {p1, v1, v0}, Landroid/content/ContentResolver;->requestSync(Landroid/accounts/Account;Ljava/lang/String;Landroid/os/Bundle;)V
.line 13
sget-object v0, Lcom/vk/core/concurrent/VkExecutors;->x:Lcom/vk/core/concurrent/VkExecutors;
invoke-virtual {v0}, Lcom/vk/core/concurrent/VkExecutors;->l()Ljava/util/concurrent/ExecutorService;
move-result-object v0
new-instance v1, Lcom/vk/contacts/ContactsSyncUtils$b;
invoke-direct {v1, p1}, Lcom/vk/contacts/ContactsSyncUtils$b;-><init>(Landroid/accounts/Account;)V
invoke-interface {v0, v1}, Ljava/util/concurrent/ExecutorService;->submit(Ljava/lang/Runnable;)Ljava/util/concurrent/Future;
return-void
.end method
.method public static final a(Z)V
.locals 2
.line 1
:try_start_0
sget-object v0, Lcom/vk/contacts/ContactsSyncUtils;->c:Lcom/vk/contacts/ContactsSyncUtils;
invoke-direct {v0}, Lcom/vk/contacts/ContactsSyncUtils;->c()Landroid/content/SharedPreferences;
move-result-object v0
invoke-interface {v0}, Landroid/content/SharedPreferences;->edit()Landroid/content/SharedPreferences$Editor;
move-result-object v0
const-string v1, "sync_hq_photos"
.line 2
invoke-interface {v0, v1, p0}, Landroid/content/SharedPreferences$Editor;->putBoolean(Ljava/lang/String;Z)Landroid/content/SharedPreferences$Editor;
move-result-object p0
.line 3
invoke-interface {p0}, Landroid/content/SharedPreferences$Editor;->apply()V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
goto :goto_0
:catch_0
move-exception p0
.line 4
sget-object v0, Lcom/vk/metrics/eventtracking/VkTracker;->k:Lcom/vk/metrics/eventtracking/VkTracker;
invoke-virtual {v0, p0}, Lcom/vk/metrics/eventtracking/VkTracker;->b(Ljava/lang/Throwable;)V
:goto_0
return-void
.end method
.method public static final b()I
.locals 9
const-string v0, "sync_all"
const-string v1, "key_sync_option"
const-string v2, "com.vkontakte.account"
const/4 v3, 0x2
.line 4
:try_start_0
sget-object v4, Lcom/vk/core/util/AppContextHolder;->a:Landroid/content/Context;
invoke-static {v4}, Landroid/accounts/AccountManager;->get(Landroid/content/Context;)Landroid/accounts/AccountManager;
move-result-object v4
.line 5
invoke-virtual {v4, v2}, Landroid/accounts/AccountManager;->getAccountsByType(Ljava/lang/String;)[Landroid/accounts/Account;
move-result-object v5
const-string v6, "am.getAccountsByType(VKAuth.ACCOUNT_TYPE)"
invoke-static {v5, v6}, Lkotlin/jvm/internal/Intrinsics;->a(Ljava/lang/Object;Ljava/lang/String;)V
.line 6
array-length v6, v5
const/4 v7, 0x1
const/4 v8, 0x0
if-nez v6, :cond_0
const/4 v6, 0x1
goto :goto_0
:cond_0
const/4 v6, 0x0
:goto_0
if-eqz v6, :cond_1
.line 7
new-instance v5, Landroid/accounts/Account;
invoke-static {}, Lcom/vtosters/lite/auth/VKAccountManager;->d()Lcom/vk/auth/api/VKAccount;
move-result-object v6
invoke-virtual {v6}, Lcom/vk/auth/api/VKAccount;->Z()Ljava/lang/String;
move-result-object v6
invoke-direct {v5, v6, v2}, Landroid/accounts/Account;-><init>(Ljava/lang/String;Ljava/lang/String;)V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_1
const/4 v2, 0x0
.line 8
:try_start_1
invoke-virtual {v4, v5, v2, v2}, Landroid/accounts/AccountManager;->addAccountExplicitly(Landroid/accounts/Account;Ljava/lang/String;Landroid/os/Bundle;)Z
:try_end_1
.catch Ljava/lang/Exception; {:try_start_1 .. :try_end_1} :catch_0
goto :goto_1
:catch_0
move-exception v2
.line 9
:try_start_2
sget-object v4, Lcom/vk/metrics/eventtracking/VkTracker;->k:Lcom/vk/metrics/eventtracking/VkTracker;
invoke-virtual {v4, v2}, Lcom/vk/metrics/eventtracking/VkTracker;->a(Ljava/lang/Throwable;)V
:goto_1
new-array v2, v7, [Landroid/accounts/Account;
aput-object v5, v2, v8
goto :goto_2
:cond_1
move-object v2, v5
.line 10
:goto_2
aget-object v2, v2, v8
const-string v4, "com.android.contacts"
invoke-static {v2, v4}, Landroid/content/ContentResolver;->getSyncAutomatically(Landroid/accounts/Account;Ljava/lang/String;)Z
move-result v2
if-nez v2, :cond_2
goto :goto_3
.line 11
:cond_2
sget-object v2, Lcom/vk/contacts/ContactsSyncUtils;->c:Lcom/vk/contacts/ContactsSyncUtils;
invoke-direct {v2}, Lcom/vk/contacts/ContactsSyncUtils;->c()Landroid/content/SharedPreferences;
move-result-object v2
invoke-interface {v2, v1}, Landroid/content/SharedPreferences;->contains(Ljava/lang/String;)Z
move-result v2
if-eqz v2, :cond_3
sget-object v0, Lcom/vk/contacts/ContactsSyncUtils;->c:Lcom/vk/contacts/ContactsSyncUtils;
invoke-direct {v0}, Lcom/vk/contacts/ContactsSyncUtils;->c()Landroid/content/SharedPreferences;
move-result-object v0
invoke-interface {v0, v1, v3}, Landroid/content/SharedPreferences;->getInt(Ljava/lang/String;I)I
move-result v0
move v3, v0
goto :goto_3
.line 12
:cond_3
sget-object v1, Lcom/vk/contacts/ContactsSyncUtils;->c:Lcom/vk/contacts/ContactsSyncUtils;
invoke-direct {v1}, Lcom/vk/contacts/ContactsSyncUtils;->c()Landroid/content/SharedPreferences;
move-result-object v1
invoke-interface {v1, v0}, Landroid/content/SharedPreferences;->contains(Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_5
.line 13
sget-object v1, Lcom/vk/contacts/ContactsSyncUtils;->c:Lcom/vk/contacts/ContactsSyncUtils;
invoke-direct {v1}, Lcom/vk/contacts/ContactsSyncUtils;->c()Landroid/content/SharedPreferences;
move-result-object v1
invoke-interface {v1, v0, v8}, Landroid/content/SharedPreferences;->getBoolean(Ljava/lang/String;Z)Z
move-result v0
:try_end_2
.catch Ljava/lang/Exception; {:try_start_2 .. :try_end_2} :catch_1
if-eqz v0, :cond_4
const/4 v3, 0x0
goto :goto_3
:cond_4
const/4 v3, 0x1
goto :goto_3
:catch_1
move-exception v0
.line 14
sget-object v1, Lcom/vk/metrics/eventtracking/VkTracker;->k:Lcom/vk/metrics/eventtracking/VkTracker;
invoke-virtual {v1, v0}, Lcom/vk/metrics/eventtracking/VkTracker;->b(Ljava/lang/Throwable;)V
:cond_5
:goto_3
return v3
.end method
.method public static final b(I)V
.locals 2
.line 1
:try_start_0
sget-object v0, Lcom/vk/contacts/ContactsSyncUtils;->c:Lcom/vk/contacts/ContactsSyncUtils;
invoke-direct {v0}, Lcom/vk/contacts/ContactsSyncUtils;->c()Landroid/content/SharedPreferences;
move-result-object v0
invoke-interface {v0}, Landroid/content/SharedPreferences;->edit()Landroid/content/SharedPreferences$Editor;
move-result-object v0
const-string v1, "key_sync_option"
invoke-interface {v0, v1, p0}, Landroid/content/SharedPreferences$Editor;->putInt(Ljava/lang/String;I)Landroid/content/SharedPreferences$Editor;
move-result-object v0
invoke-interface {v0}, Landroid/content/SharedPreferences$Editor;->apply()V
.line 2
sget-object v0, Lcom/vk/contacts/ContactsSyncUtils;->c:Lcom/vk/contacts/ContactsSyncUtils;
invoke-direct {v0, p0}, Lcom/vk/contacts/ContactsSyncUtils;->a(I)V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
goto :goto_0
:catch_0
move-exception p0
.line 3
sget-object v0, Lcom/vk/metrics/eventtracking/VkTracker;->k:Lcom/vk/metrics/eventtracking/VkTracker;
invoke-virtual {v0, p0}, Lcom/vk/metrics/eventtracking/VkTracker;->b(Ljava/lang/Throwable;)V
:goto_0
return-void
.end method
.method private final c()Landroid/content/SharedPreferences;
.locals 3
sget-object v0, Lcom/vk/contacts/ContactsSyncUtils;->b:Lkotlin/Lazy2;
sget-object v1, Lcom/vk/contacts/ContactsSyncUtils;->a:[Lkotlin/u/KProperty5;
const/4 v2, 0x0
aget-object v1, v1, v2
invoke-interface {v0}, Lkotlin/Lazy2;->getValue()Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/content/SharedPreferences;
return-object v0
.end method
.method public static final d()Z
.locals 3
.line 1
sget-object v0, Lcom/vk/contacts/ContactsSyncUtils;->c:Lcom/vk/contacts/ContactsSyncUtils;
invoke-direct {v0}, Lcom/vk/contacts/ContactsSyncUtils;->c()Landroid/content/SharedPreferences;
move-result-object v0
const-string v1, "sync_hq_photos"
const/4 v2, 0x0
invoke-interface {v0, v1, v2}, Landroid/content/SharedPreferences;->getBoolean(Ljava/lang/String;Z)Z
move-result v0
return v0
.end method
.method public static final e()V
.locals 2
.line 1
sget-object v0, Lcom/vk/contacts/ContactsSyncUtils;->c:Lcom/vk/contacts/ContactsSyncUtils;
invoke-static {}, Lcom/vk/contacts/ContactsSyncUtils;->b()I
move-result v1
invoke-direct {v0, v1}, Lcom/vk/contacts/ContactsSyncUtils;->a(I)V
return-void
.end method
@@ -526,7 +526,7 @@
move-result-object v0
const-string v1, "vnd.android.cursor.item/vnd.com.vkontakte.android.profile"
const-string v1, "vnd.android.cursor.item/vnd.com.vtosters.lite.profile"
.line 28
invoke-virtual {v1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
@@ -548,7 +548,7 @@
goto :goto_0
:cond_6
const-string v1, "vnd.android.cursor.item/vnd.com.vkontakte.android.sendmsg"
const-string v1, "vnd.android.cursor.item/vnd.com.vtosters.lite.sendmsg"
.line 31
invoke-virtual {v1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
@@ -582,7 +582,7 @@
goto :goto_0
:cond_7
const-string v1, "vnd.android.cursor.item/vnd.com.vkontakte.android.voipcall"
const-string v1, "vnd.android.cursor.item/vnd.com.vtosters.lite.voipcall"
.line 34
invoke-virtual {v1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
@@ -348,12 +348,12 @@
return-object p1
:cond_0
const-string p1, "vnd.android.cursor.item/vnd.com.vkontakte.android.providers.audio.cache"
const-string p1, "vnd.android.cursor.item/vnd.com.vtosters.lite.providers.audio.cache"
return-object p1
:cond_1
const-string p1, "vnd.android.cursor.dir/vnd.com.vkontakte.android.providers.audio.cache"
const-string p1, "vnd.android.cursor.dir/vnd.com.vtosters.lite.providers.audio.cache"
return-object p1
.end method
@@ -303,7 +303,7 @@
goto :goto_0
:cond_0
const-string p1, "vnd.android.cursor.dir/vnd.com.vkontakte.android.providers.im.state"
const-string p1, "vnd.android.cursor.dir/vnd.com.vtosters.lite.providers.im.state"
:goto_0
return-object p1