diff --git a/app/build.gradle b/app/build.gradle
index f0a1fcd..f723b22 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -4,14 +4,14 @@ plugins {
}
android {
- compileSdk 30
+ compileSdk 31
defaultConfig {
applicationId "com.fox2code.mmm"
minSdk 21
- targetSdk 30
- versionCode 9
- versionName "0.2.0"
+ targetSdk 31
+ versionCode 10
+ versionName "0.2.1"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
@@ -49,7 +49,9 @@ configurations {
dependencies {
// UI
- implementation 'androidx.appcompat:appcompat:1.3.1'
+ implementation 'androidx.appcompat:appcompat:1.4.0'
+ implementation 'androidx.emoji2:emoji2:1.0.0'
+ implementation 'androidx.emoji2:emoji2-views-helper:1.0.0'
implementation 'androidx.preference:preference:1.1.1'
implementation 'androidx.constraintlayout:constraintlayout:2.1.2'
implementation 'androidx.recyclerview:recyclerview:1.2.1'
@@ -58,7 +60,8 @@ dependencies {
implementation "com.mikepenz:aboutlibraries:${latestAboutLibsRelease}"
// Utils
- implementation 'com.squareup.okhttp3:okhttp-dnsoverhttps:4.9.1'
+ implementation 'com.squareup.okhttp3:okhttp-dnsoverhttps:4.9.3'
+ implementation 'com.squareup.okhttp3:okhttp-brotli:4.9.3'
implementation 'com.github.topjohnwu.libsu:io:3.1.2'
// Markdown
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 240f894..fd39da4 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -65,5 +65,13 @@
+
+
+
\ No newline at end of file
diff --git a/app/src/main/java/com/fox2code/mmm/MainApplication.java b/app/src/main/java/com/fox2code/mmm/MainApplication.java
index 82a290e..d531a0a 100644
--- a/app/src/main/java/com/fox2code/mmm/MainApplication.java
+++ b/app/src/main/java/com/fox2code/mmm/MainApplication.java
@@ -9,10 +9,13 @@ import android.content.res.Resources;
import android.graphics.Color;
import android.os.SystemClock;
import android.text.SpannableStringBuilder;
+import android.util.Log;
import androidx.annotation.NonNull;
import androidx.annotation.StyleRes;
-import androidx.appcompat.view.ContextThemeWrapper;
+import androidx.emoji2.text.DefaultEmojiCompatConfig;
+import androidx.emoji2.text.EmojiCompat;
+import androidx.emoji2.text.FontRequestEmojiCompatConfig;
import com.fox2code.mmm.compat.CompatActivity;
import com.fox2code.mmm.compat.CompatThemeWrapper;
@@ -270,6 +273,20 @@ public class MainApplication extends Application implements CompatActivity.Appli
this.setManagerThemeResId(themeResId);
// Update SSL Ciphers if update is possible
GMSProviderInstaller.installIfNeeded(this);
+ // Update emoji config
+ FontRequestEmojiCompatConfig fontRequestEmojiCompatConfig =
+ DefaultEmojiCompatConfig.create(this);
+ if (fontRequestEmojiCompatConfig != null) {
+ fontRequestEmojiCompatConfig.setReplaceAll(true);
+ fontRequestEmojiCompatConfig
+ .setMetadataLoadStrategy(EmojiCompat.LOAD_STRATEGY_MANUAL);
+ EmojiCompat emojiCompat = EmojiCompat.init(fontRequestEmojiCompatConfig);
+ new Thread(() -> {
+ Log.d("MainApplication", "Loading emoji compat...");
+ emojiCompat.load();
+ Log.d("MainApplication", "Emoji compat loaded!");
+ }, "Emoji compat init.").start();
+ }
}
@Override
diff --git a/app/src/main/java/com/fox2code/mmm/utils/Http.java b/app/src/main/java/com/fox2code/mmm/utils/Http.java
index 4500cc5..ea4e42c 100644
--- a/app/src/main/java/com/fox2code/mmm/utils/Http.java
+++ b/app/src/main/java/com/fox2code/mmm/utils/Http.java
@@ -30,6 +30,7 @@ import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.Response;
import okhttp3.ResponseBody;
+import okhttp3.brotli.BrotliInterceptor;
import okhttp3.dnsoverhttps.DnsOverHttps;
public class Http {
@@ -42,6 +43,7 @@ public class Http {
httpclientBuilder.connectTimeout(15, TimeUnit.SECONDS);
httpclientBuilder.writeTimeout(15, TimeUnit.SECONDS);
httpclientBuilder.readTimeout(15, TimeUnit.SECONDS);
+ httpclientBuilder.addInterceptor(BrotliInterceptor.INSTANCE);
httpclientBuilder.proxy(Proxy.NO_PROXY); // Do not use system proxy
Dns dns = Dns.SYSTEM;
try {
@@ -94,8 +96,7 @@ public class Http {
}
private static Request.Builder makeRequestBuilder() {
- return new Request.Builder().header("Connection", "keep-alive")
- .header("Upgrade-Insecure-Requests", "1");
+ return new Request.Builder().header("Upgrade-Insecure-Requests", "1");
}
public static byte[] doHttpGet(String url,boolean allowCache) throws IOException {
diff --git a/screenshot.jpg b/screenshot.jpg
index 1ff6463..b5c1e86 100644
Binary files a/screenshot.jpg and b/screenshot.jpg differ