82.18 - Beta (82118)
This commit is contained in:
parent
5687294561
commit
3ad206f182
15 changed files with 60 additions and 30 deletions
|
@ -10,8 +10,8 @@ android {
|
|||
applicationId 'com.discord'
|
||||
minSdkVersion 21
|
||||
targetSdkVersion 29
|
||||
versionCode 82116
|
||||
versionName "82.16 - Beta"
|
||||
versionCode 82118
|
||||
versionName "82.18 - Beta"
|
||||
|
||||
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
||||
}
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="82116" android:versionName="82.16 - Beta" android:installLocation="auto" android:compileSdkVersion="30" android:compileSdkVersionCodename="11" package="com.discord" platformBuildVersionCode="30" platformBuildVersionName="11">
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="82118" android:versionName="82.18 - Beta" android:installLocation="auto" android:compileSdkVersion="30" android:compileSdkVersionCodename="11" package="com.discord" platformBuildVersionCode="30" platformBuildVersionName="11">
|
||||
<uses-sdk android:minSdkVersion="21" android:targetSdkVersion="29"/>
|
||||
<uses-feature android:name="android.hardware.camera" android:required="false"/>
|
||||
<uses-feature android:name="android.hardware.camera.autofocus" android:required="false"/>
|
||||
|
|
|
@ -172,7 +172,7 @@ public class App extends Application {
|
|||
loggingProvider.init(appLog);
|
||||
c.i.c.c.e(this);
|
||||
String str = null;
|
||||
if (BuildUtils.INSTANCE.isValidBuildVersionName("82.16 - Beta")) {
|
||||
if (BuildUtils.INSTANCE.isValidBuildVersionName("82.18 - Beta")) {
|
||||
FirebaseCrashlytics.getInstance().setCrashlyticsCollectionEnabled(true);
|
||||
} else {
|
||||
FirebaseCrashlytics.getInstance().setCrashlyticsCollectionEnabled(false);
|
||||
|
|
|
@ -15,7 +15,7 @@ public final class StoreClientVersion extends Store {
|
|||
private int clientMinVersion;
|
||||
private final String clientMinVersionKey = "CLIENT_OUTDATED_KEY";
|
||||
private final SerializedSubject<Boolean, Boolean> clientOutdatedSubject = new SerializedSubject<>(BehaviorSubject.l0(Boolean.FALSE));
|
||||
private final int clientVersion = 82116;
|
||||
private final int clientVersion = 82118;
|
||||
|
||||
public static final /* synthetic */ void access$setClientMinVersion(StoreClientVersion storeClientVersion, int i) {
|
||||
storeClientVersion.setClientMinVersion(i);
|
||||
|
|
|
@ -14,7 +14,7 @@ import kotlin.jvm.functions.Function1;
|
|||
/* compiled from: StoreInstantInvites.kt */
|
||||
public final class StoreInstantInvites$fetchInviteIfNotLoaded$1 extends o implements Function0<Unit> {
|
||||
public final /* synthetic */ String $inviteCode;
|
||||
public final /* synthetic */ String $source;
|
||||
public final /* synthetic */ String $location;
|
||||
public final /* synthetic */ StoreInstantInvites this$0;
|
||||
|
||||
/* compiled from: StoreInstantInvites.kt */
|
||||
|
@ -60,7 +60,7 @@ public final class StoreInstantInvites$fetchInviteIfNotLoaded$1 extends o implem
|
|||
public final void invoke(ModelInvite modelInvite) {
|
||||
m.checkNotNullParameter(modelInvite, "it");
|
||||
StoreInstantInvites.access$getDispatcher$p(this.this$0.this$0).schedule(new AnonymousClass1(this, modelInvite));
|
||||
String str = this.this$0.$source;
|
||||
String str = this.this$0.$location;
|
||||
if (str != null) {
|
||||
AnalyticsTracker.INSTANCE.inviteResolved(modelInvite, str);
|
||||
}
|
||||
|
@ -131,7 +131,7 @@ public final class StoreInstantInvites$fetchInviteIfNotLoaded$1 extends o implem
|
|||
error.setShowErrorToasts(false);
|
||||
StoreInstantInvites.access$getDispatcher$p(this.this$0.this$0).schedule(new AnonymousClass1(this));
|
||||
StoreInstantInvites$fetchInviteIfNotLoaded$1 storeInstantInvites$fetchInviteIfNotLoaded$1 = this.this$0;
|
||||
String str = storeInstantInvites$fetchInviteIfNotLoaded$1.$source;
|
||||
String str = storeInstantInvites$fetchInviteIfNotLoaded$1.$location;
|
||||
if (str != null) {
|
||||
String str2 = storeInstantInvites$fetchInviteIfNotLoaded$1.$inviteCode;
|
||||
Error.Response response = error.getResponse();
|
||||
|
@ -152,7 +152,7 @@ public final class StoreInstantInvites$fetchInviteIfNotLoaded$1 extends o implem
|
|||
super(0);
|
||||
this.this$0 = storeInstantInvites;
|
||||
this.$inviteCode = str;
|
||||
this.$source = str2;
|
||||
this.$location = str2;
|
||||
}
|
||||
|
||||
@Override // kotlin.jvm.functions.Function0
|
||||
|
|
|
@ -19,6 +19,7 @@ import com.discord.utilities.persister.Persister;
|
|||
import com.discord.utilities.rest.RestAPI;
|
||||
import com.discord.utilities.rx.ObservableExtensionsKt;
|
||||
import com.discord.utilities.threads.ThreadUtils;
|
||||
import d0.d0.f;
|
||||
import d0.o;
|
||||
import d0.t.n0;
|
||||
import d0.t.o0;
|
||||
|
@ -659,7 +660,7 @@ public final class StoreMessageAck extends StoreV2 {
|
|||
@Override // com.discord.stores.StoreV2
|
||||
public void snapshotData() {
|
||||
super.snapshotData();
|
||||
HashMap hashMap = new HashMap(this.acks.size(), 0.75f);
|
||||
HashMap hashMap = new HashMap(f.coerceAtLeast(this.acks.size(), 1), 0.75f);
|
||||
hashMap.putAll(this.acks);
|
||||
this.acksSnapshot = hashMap;
|
||||
Persister.set$default(this.acksPersister, hashMap, false, 2, null);
|
||||
|
|
|
@ -77,7 +77,7 @@ public final class AnalyticSuperProperties {
|
|||
private final void setBaselineProperties() {
|
||||
String locale = Locale.getDefault().toString();
|
||||
m.checkNotNullExpressionValue(locale, "Locale.getDefault().toString()");
|
||||
updateSuperProperties(h0.mapOf(o.to("browser", "Discord Android"), o.to("browser_user_agent", "Discord-Android/82116"), o.to("client_build_number", 82116), o.to("client_version", "82.16 - Beta"), o.to("device", Build.MODEL + ", " + Build.PRODUCT), o.to("os", "Android"), o.to("os_sdk_version", String.valueOf(Build.VERSION.SDK_INT)), o.to("os_version", Build.VERSION.RELEASE), o.to("system_locale", t.replace$default(locale, "_", "-", false, 4, (Object) null))));
|
||||
updateSuperProperties(h0.mapOf(o.to("browser", "Discord Android"), o.to("browser_user_agent", "Discord-Android/82118"), o.to("client_build_number", 82118), o.to("client_version", "82.18 - Beta"), o.to("device", Build.MODEL + ", " + Build.PRODUCT), o.to("os", "Android"), o.to("os_sdk_version", String.valueOf(Build.VERSION.SDK_INT)), o.to("os_version", Build.VERSION.RELEASE), o.to("system_locale", t.replace$default(locale, "_", "-", false, 4, (Object) null))));
|
||||
}
|
||||
|
||||
private final void setSuperProperties(Map<String, ? extends Object> map) {
|
||||
|
|
|
@ -46,11 +46,13 @@ import com.discord.stores.StoreStream;
|
|||
import com.discord.utilities.analytics.AnalyticsUtils;
|
||||
import com.discord.utilities.analytics.Traits;
|
||||
import com.discord.utilities.collections.CollectionExtensionsKt;
|
||||
import com.discord.utilities.email.EmailUtils;
|
||||
import com.discord.utilities.fcm.NotificationClient;
|
||||
import com.discord.utilities.intent.RouteHandlers;
|
||||
import com.discord.utilities.logging.Logger;
|
||||
import com.discord.utilities.permissions.PermissionUtils;
|
||||
import com.discord.utilities.persister.Persister;
|
||||
import com.discord.utilities.phone.PhoneUtils;
|
||||
import com.discord.utilities.platform.Platform;
|
||||
import com.discord.utilities.rest.FileUploadAlertType;
|
||||
import com.discord.utilities.rx.ObservableExtensionsKt;
|
||||
|
@ -319,11 +321,11 @@ public final class AnalyticsTracker {
|
|||
tracker.track("external_fingerprint_dropped", linkedHashMap);
|
||||
}
|
||||
|
||||
public static /* synthetic */ void friendRequestFailed$default(AnalyticsTracker analyticsTracker, String str, int i, Object obj) {
|
||||
if ((i & 1) != 0) {
|
||||
str = null;
|
||||
public static /* synthetic */ void friendRequestFailed$default(AnalyticsTracker analyticsTracker, CharSequence charSequence, String str, Integer num, String str2, int i, Object obj) {
|
||||
if ((i & 8) != 0) {
|
||||
str2 = null;
|
||||
}
|
||||
analyticsTracker.friendRequestFailed(str);
|
||||
analyticsTracker.friendRequestFailed(charSequence, str, num, str2);
|
||||
}
|
||||
|
||||
private final String getAnalyticsValueForNotificationFrequency(Integer num) {
|
||||
|
@ -1213,10 +1215,16 @@ public final class AnalyticsTracker {
|
|||
tracker.track("friend_add_viewed", g0.mapOf(o.to("friend_add_type", str)));
|
||||
}
|
||||
|
||||
public final void friendRequestFailed(String str) {
|
||||
public final void friendRequestFailed(CharSequence charSequence, String str, Integer num, String str2) {
|
||||
m.checkNotNullParameter(charSequence, "query");
|
||||
m.checkNotNullParameter(str, "username");
|
||||
HashMap hashMap = new HashMap();
|
||||
if (str != null) {
|
||||
hashMap.put("reason", str);
|
||||
if (str2 != null) {
|
||||
hashMap.put("reason", str2);
|
||||
hashMap.put("discrim_len", Integer.valueOf(String.valueOf(num).length()));
|
||||
hashMap.put("username_len", Integer.valueOf(str.length()));
|
||||
hashMap.put("is_email_like", Boolean.valueOf(EmailUtils.INSTANCE.isEmailLike(charSequence.toString())));
|
||||
hashMap.put("is_num_only", Boolean.valueOf(PhoneUtils.INSTANCE.isValidPhoneFragment(charSequence.toString())));
|
||||
}
|
||||
tracker.track("friend_request_failed", hashMap);
|
||||
}
|
||||
|
@ -1281,6 +1289,12 @@ public final class AnalyticsTracker {
|
|||
tracker.track("android_hardware_survey", h0.mapOf(o.to("device_board", buildInfo.a), o.to("device_brand", buildInfo.b), o.to("device_manufacturer", buildInfo.f2013c), o.to("device_model", buildInfo.d), o.to("device_product", buildInfo.e), o.to("device_supported_abis", buildInfo.f), o.to("device_is_64_bit", Boolean.valueOf(buildInfo.g)), o.to("is_low_ram_device", Boolean.valueOf(memoryInfo.b)), o.to("memory_class", Integer.valueOf(memoryInfo.f2015c)), o.to("large_memory_class", Integer.valueOf(memoryInfo.d)), o.to("hardware_decoders_1080", Integer.valueOf(decoderCountInfo.a)), o.to("hardware_decoders_720", Integer.valueOf(decoderCountInfo.b)), o.to("hardware_decoders_480", Integer.valueOf(decoderCountInfo.f2014c)), o.to("decoders_1080", Integer.valueOf(decoderCountInfo.d)), o.to("decoders_720", Integer.valueOf(decoderCountInfo.e)), o.to("decoders_480", Integer.valueOf(decoderCountInfo.f)), o.to("test_duration_ms", Integer.valueOf(decoderCountInfo.g))));
|
||||
}
|
||||
|
||||
public final void impressionInviteAccept(String str) {
|
||||
if (str != null) {
|
||||
tracker.track("impression_invite_accept", g0.mapOf(o.to("invite_code", str)));
|
||||
}
|
||||
}
|
||||
|
||||
public final void inviteCopied(GuildInvite guildInvite, Channel channel, String str) {
|
||||
m.checkNotNullParameter(guildInvite, "guildInvite");
|
||||
m.checkNotNullParameter(str, "source");
|
||||
|
@ -1382,10 +1396,6 @@ public final class AnalyticsTracker {
|
|||
ObservableExtensionsKt.appSubscribe$default(ObservableExtensionsKt.computationLatest(ObservableExtensionsKt.takeSingleUntilTimeout$default(F, 0, false, 3, null)), AnalyticsTracker.class, (Context) null, (Function1) null, (Function1) null, (Function0) null, (Function0) null, new AnalyticsTracker$inviteSuggestionOpened$2(list, list2, j), 62, (Object) null);
|
||||
}
|
||||
|
||||
public final void inviteViewed() {
|
||||
AnalyticsUtils.Tracker.track$default(tracker, "invite_viewed", null, 2, null);
|
||||
}
|
||||
|
||||
public final void joinGuildViewed() {
|
||||
AnalyticsUtils.Tracker.track$default(tracker, "join_guild_viewed", null, 2, null);
|
||||
}
|
||||
|
|
|
@ -0,0 +1,17 @@
|
|||
package com.discord.utilities.email;
|
||||
|
||||
import d0.z.d.m;
|
||||
import kotlin.text.Regex;
|
||||
/* compiled from: EmailUtils.kt */
|
||||
public final class EmailUtils {
|
||||
private static final Regex EMAIL_REGEX = new Regex("/^([\\w-+]+(?:\\.[\\w-+]+)*)@((?:[\\w-]+\\.)*\\w[\\w-]{0,66})\\.([a-z]{2,63}(?:\\.[a-z]{2})?)$/i");
|
||||
public static final EmailUtils INSTANCE = new EmailUtils();
|
||||
|
||||
private EmailUtils() {
|
||||
}
|
||||
|
||||
public final boolean isEmailLike(String str) {
|
||||
m.checkNotNullParameter(str, "input");
|
||||
return EMAIL_REGEX.matches(str);
|
||||
}
|
||||
}
|
|
@ -177,7 +177,7 @@ public final class RestAPI implements RestAPIInterface {
|
|||
|
||||
@Override // com.discord.restapi.RequiredHeadersInterceptor.HeadersProvider
|
||||
public String getUserAgent() {
|
||||
return "Discord-Android/82116";
|
||||
return "Discord-Android/82118";
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -100,7 +100,7 @@ public final class WidgetFatalCrash extends AppFragment {
|
|||
textView2.setText(b.j(this, 2131887892, objArr2, null, 4));
|
||||
TextView textView3 = getBinding().b;
|
||||
m.checkNotNullExpressionValue(textView3, "binding.fatalCrashAppVersion");
|
||||
textView3.setText(b.j(this, 2131887885, new Object[]{"82.16 - Beta"}, null, 4));
|
||||
textView3.setText(b.j(this, 2131887885, new Object[]{"82.18 - Beta"}, null, 4));
|
||||
TextView textView4 = getBinding().d;
|
||||
m.checkNotNullExpressionValue(textView4, "binding.fatalCrashOsVersion");
|
||||
textView4.setText(b.j(this, 2131887888, new Object[]{String.valueOf(Build.VERSION.SDK_INT)}, null, 4));
|
||||
|
|
|
@ -154,10 +154,10 @@ public final class WidgetFriendsAddById extends AppFragment {
|
|||
}
|
||||
|
||||
private final void extractTargetAndSendFriendRequest() {
|
||||
Companion companion = Companion;
|
||||
TextInputLayout textInputLayout = getBinding().e;
|
||||
m.checkNotNullExpressionValue(textInputLayout, "binding.friendsAddTextEditWrap");
|
||||
Companion.UserNameDiscriminator access$extractUsernameAndDiscriminator = Companion.access$extractUsernameAndDiscriminator(companion, ViewExtensions.getTextOrEmpty(textInputLayout));
|
||||
String textOrEmpty = ViewExtensions.getTextOrEmpty(textInputLayout);
|
||||
Companion.UserNameDiscriminator access$extractUsernameAndDiscriminator = Companion.access$extractUsernameAndDiscriminator(Companion, textOrEmpty);
|
||||
if (access$extractUsernameAndDiscriminator.getDiscriminator() != null) {
|
||||
sendFriendRequest(access$extractUsernameAndDiscriminator.getUsername(), access$extractUsernameAndDiscriminator.getDiscriminator().intValue());
|
||||
return;
|
||||
|
@ -168,7 +168,7 @@ public final class WidgetFriendsAddById extends AppFragment {
|
|||
charSequence = b.g(context, 2131886262, new Object[]{access$extractUsernameAndDiscriminator.getUsername()}, null, 4);
|
||||
}
|
||||
setInputEditError(charSequence);
|
||||
AnalyticsTracker.INSTANCE.friendRequestFailed("Invalid Username");
|
||||
AnalyticsTracker.INSTANCE.friendRequestFailed(textOrEmpty, access$extractUsernameAndDiscriminator.getUsername(), access$extractUsernameAndDiscriminator.getDiscriminator(), "Invalid Username");
|
||||
}
|
||||
|
||||
private final WidgetFriendsAddByIdBinding getBinding() {
|
||||
|
|
|
@ -218,7 +218,9 @@ public final class WidgetGuildInvite extends AppFragment {
|
|||
super.onViewBound(view);
|
||||
setRetainInstance(true);
|
||||
AppFragment.setActionBarDisplayHomeAsUpEnabled$default(this, false, 1, null);
|
||||
AnalyticsTracker.INSTANCE.inviteViewed();
|
||||
String stringExtra = getMostRecentIntent().getStringExtra("EXTRA_CODE");
|
||||
this.inviteCode = stringExtra;
|
||||
AnalyticsTracker.INSTANCE.impressionInviteAccept(stringExtra);
|
||||
getBinding().f1797c.setOnClickListener(new WidgetGuildInvite$onViewBound$1(this));
|
||||
}
|
||||
|
||||
|
|
|
@ -332,7 +332,7 @@ public final class WidgetSettings extends AppFragment implements OnTabSelectedLi
|
|||
TextView textView = binding.f;
|
||||
m.checkNotNullExpressionValue(textView, "appInfoHeader");
|
||||
String string = getString(2131886360);
|
||||
textView.setText(string + " - 82.16 - Beta (82116)");
|
||||
textView.setText(string + " - 82.18 - Beta (82118)");
|
||||
binding.f1921y.setOnClickListener(new WidgetSettings$onViewBound$$inlined$with$lambda$2(this));
|
||||
binding.u.setOnClickListener(WidgetSettings$onViewBound$1$4.INSTANCE);
|
||||
binding.q.setOnClickListener(WidgetSettings$onViewBound$1$5.INSTANCE);
|
||||
|
|
|
@ -1341,7 +1341,7 @@
|
|||
<string name="color_picker_presets">Presets</string>
|
||||
<string name="color_picker_title">Select a color</string>
|
||||
<string name="color_picker_transparency">Transparency</string>
|
||||
<string name="res_2131887421_com_crashlytics_android_build_id">26f7c0da6ddc4256af0f4fc97b3bdbc6</string>
|
||||
<string name="res_2131887421_com_crashlytics_android_build_id">0146ece4315f4f91be4f78115e7e8d48</string>
|
||||
<string name="coming_soon">Coming Soon</string>
|
||||
<string name="command_accessibility_desc_app_header_item">Slash command application {applicationName}</string>
|
||||
<string name="command_accessibility_desc_app_item">{applicationName} application</string>
|
||||
|
|
Loading…
Reference in a new issue