正在查看: Jurassic World v1.83.4 应用的 NotificationProxyReceiver.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: Jurassic World v1.83.4 应用的 NotificationProxyReceiver.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package com.urbanairship.push;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import com.urbanairship.AirshipExecutors;
import com.urbanairship.Autopilot;
import com.urbanairship.Logger;
import com.urbanairship.PendingResult;
import com.urbanairship.UAirship;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.TimeoutException;
public class NotificationProxyReceiver extends BroadcastReceiver {
private static final long ACTION_TIMEOUT_SECONDS = 9;
@Override
public void onReceive(final Context context, final Intent intent) {
Autopilot.automaticTakeOff(context);
if (!UAirship.isTakingOff() && !UAirship.isFlying()) {
Logger.error("NotificationProxyReceiver - unable to receive intent, takeOff not called.", new Object[0]);
return;
}
if (intent == null || intent.getAction() == null) {
return;
}
Logger.verbose("Received intent: %s", intent.getAction());
final BroadcastReceiver.PendingResult goAsync = goAsync();
final PendingResult<Boolean> process = new NotificationIntentProcessor(context, intent).process();
AirshipExecutors.threadPoolExecutor().execute(new Runnable() {
@Override
public void run() {
try {
Logger.verbose("Finished processing notification intent with result %s.", (Boolean) process.get(NotificationProxyReceiver.ACTION_TIMEOUT_SECONDS, TimeUnit.SECONDS));
} catch (InterruptedException e) {
e = e;
Logger.error(e, "NotificationProxyReceiver - Exception when processing notification intent.", new Object[0]);
Thread.currentThread().interrupt();
} catch (ExecutionException e2) {
e = e2;
Logger.error(e, "NotificationProxyReceiver - Exception when processing notification intent.", new Object[0]);
Thread.currentThread().interrupt();
} catch (TimeoutException unused) {
Logger.error("NotificationProxyReceiver - Application took too long to process notification intent.", new Object[0]);
}
goAsync.finish();
}
});
}
}