42 lines
1.2 KiB
Java
42 lines
1.2 KiB
Java
|
package androidx.core.os;
|
||
|
|
||
|
import android.annotation.SuppressLint;
|
||
|
import android.os.Build;
|
||
|
import android.os.Message;
|
||
|
import androidx.annotation.NonNull;
|
||
|
public final class MessageCompat {
|
||
|
private static boolean sTryIsAsynchronous = true;
|
||
|
private static boolean sTrySetAsynchronous = true;
|
||
|
|
||
|
private MessageCompat() {
|
||
|
}
|
||
|
|
||
|
@SuppressLint({"NewApi"})
|
||
|
public static boolean isAsynchronous(@NonNull Message message) {
|
||
|
if (Build.VERSION.SDK_INT >= 22) {
|
||
|
return message.isAsynchronous();
|
||
|
}
|
||
|
if (sTryIsAsynchronous) {
|
||
|
try {
|
||
|
return message.isAsynchronous();
|
||
|
} catch (NoSuchMethodError unused) {
|
||
|
sTryIsAsynchronous = false;
|
||
|
}
|
||
|
}
|
||
|
return false;
|
||
|
}
|
||
|
|
||
|
@SuppressLint({"NewApi"})
|
||
|
public static void setAsynchronous(@NonNull Message message, boolean z2) {
|
||
|
if (Build.VERSION.SDK_INT >= 22) {
|
||
|
message.setAsynchronous(z2);
|
||
|
} else if (sTrySetAsynchronous) {
|
||
|
try {
|
||
|
message.setAsynchronous(z2);
|
||
|
} catch (NoSuchMethodError unused) {
|
||
|
sTrySetAsynchronous = false;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|