|
|
@ -576,7 +576,7 @@ public class Log {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
static boolean isOwnFault(Throwable ex) {
|
|
|
|
static boolean isOwnFault(Throwable ex) {
|
|
|
|
if (!isSupportedDevice())
|
|
|
|
if (!Helper.isSupportedDevice())
|
|
|
|
return false;
|
|
|
|
return false;
|
|
|
|
|
|
|
|
|
|
|
|
if (ex instanceof OutOfMemoryError ||
|
|
|
|
if (ex instanceof OutOfMemoryError ||
|
|
|
@ -2141,54 +2141,4 @@ public class Log {
|
|
|
|
static InternetAddress myAddress() throws UnsupportedEncodingException {
|
|
|
|
static InternetAddress myAddress() throws UnsupportedEncodingException {
|
|
|
|
return new InternetAddress("marcel+fairemail@faircode.eu", "FairCode", StandardCharsets.UTF_8.name());
|
|
|
|
return new InternetAddress("marcel+fairemail@faircode.eu", "FairCode", StandardCharsets.UTF_8.name());
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
static boolean isSupportedDevice() {
|
|
|
|
|
|
|
|
if ("Amazon".equals(Build.BRAND) && Build.VERSION.SDK_INT < Build.VERSION_CODES.M) {
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
|
|
|
java.lang.IllegalArgumentException: Comparison method violates its general contract!
|
|
|
|
|
|
|
|
java.lang.IllegalArgumentException: Comparison method violates its general contract!
|
|
|
|
|
|
|
|
at java.util.TimSort.mergeHi(TimSort.java:864)
|
|
|
|
|
|
|
|
at java.util.TimSort.mergeAt(TimSort.java:481)
|
|
|
|
|
|
|
|
at java.util.TimSort.mergeCollapse(TimSort.java:406)
|
|
|
|
|
|
|
|
at java.util.TimSort.sort(TimSort.java:210)
|
|
|
|
|
|
|
|
at java.util.TimSort.sort(TimSort.java:169)
|
|
|
|
|
|
|
|
at java.util.Arrays.sort(Arrays.java:2010)
|
|
|
|
|
|
|
|
at java.util.Collections.sort(Collections.java:1883)
|
|
|
|
|
|
|
|
at android.view.ViewGroup$ChildListForAccessibility.init(ViewGroup.java:7181)
|
|
|
|
|
|
|
|
at android.view.ViewGroup$ChildListForAccessibility.obtain(ViewGroup.java:7138)
|
|
|
|
|
|
|
|
at android.view.ViewGroup.dispatchPopulateAccessibilityEventInternal(ViewGroup.java:2734)
|
|
|
|
|
|
|
|
at android.view.View.dispatchPopulateAccessibilityEvent(View.java:5617)
|
|
|
|
|
|
|
|
at android.view.View.sendAccessibilityEventUncheckedInternal(View.java:5582)
|
|
|
|
|
|
|
|
at android.view.View.sendAccessibilityEventUnchecked(View.java:5566)
|
|
|
|
|
|
|
|
at android.view.View.sendAccessibilityEventInternal(View.java:5543)
|
|
|
|
|
|
|
|
at android.view.View.sendAccessibilityEvent(View.java:5512)
|
|
|
|
|
|
|
|
at android.view.View.onFocusChanged(View.java:5449)
|
|
|
|
|
|
|
|
at android.view.View.handleFocusGainInternal(View.java:5229)
|
|
|
|
|
|
|
|
at android.view.ViewGroup.handleFocusGainInternal(ViewGroup.java:651)
|
|
|
|
|
|
|
|
at android.view.View.requestFocusNoSearch(View.java:7950)
|
|
|
|
|
|
|
|
at android.view.View.requestFocus(View.java:7929)
|
|
|
|
|
|
|
|
at android.view.ViewGroup.requestFocus(ViewGroup.java:2612)
|
|
|
|
|
|
|
|
at android.view.ViewGroup.onRequestFocusInDescendants(ViewGroup.java:2657)
|
|
|
|
|
|
|
|
at android.view.ViewGroup.requestFocus(ViewGroup.java:2613)
|
|
|
|
|
|
|
|
at android.view.View.requestFocus(View.java:7896)
|
|
|
|
|
|
|
|
at android.view.View.requestFocus(View.java:7875)
|
|
|
|
|
|
|
|
at androidx.recyclerview.widget.RecyclerView.recoverFocusFromState(SourceFile:3788)
|
|
|
|
|
|
|
|
at androidx.recyclerview.widget.RecyclerView.dispatchLayoutStep3(SourceFile:4023)
|
|
|
|
|
|
|
|
at androidx.recyclerview.widget.RecyclerView.dispatchLayout(SourceFile:3652)
|
|
|
|
|
|
|
|
at androidx.recyclerview.widget.RecyclerView.consumePendingUpdateOperations(SourceFile:1877)
|
|
|
|
|
|
|
|
at androidx.recyclerview.widget.RecyclerView$w.run(SourceFile:5044)
|
|
|
|
|
|
|
|
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:781)
|
|
|
|
|
|
|
|
at android.view.Choreographer.doCallbacks(Choreographer.java:592)
|
|
|
|
|
|
|
|
at android.view.Choreographer.doFrame(Choreographer.java:559)
|
|
|
|
|
|
|
|
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:767)
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
return false;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return true;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static boolean isXiaomi() {
|
|
|
|
|
|
|
|
return "Xiaomi".equalsIgnoreCase(Build.MANUFACTURER);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|