diff --git a/core/java/android/app/ActivityThread.java b/core/java/android/app/ActivityThread.java index 0020a50c48fb0..0d852e52665b7 100644 --- a/core/java/android/app/ActivityThread.java +++ b/core/java/android/app/ActivityThread.java @@ -75,6 +75,7 @@ import android.os.StrictMode; import android.os.SystemClock; import android.os.SystemProperties; import android.os.Trace; +import android.os.TransactionTooLargeException; import android.os.UserHandle; import android.provider.Settings; import android.security.NetworkSecurityPolicy; @@ -3677,6 +3678,12 @@ public final class ActivityThread { ActivityManagerNative.getDefault().activityStopped( activity.token, state, persistentState, description); } catch (RemoteException ex) { + if (ex instanceof TransactionTooLargeException + && "com.google.android.gms".equals(activity.packageInfo.getPackageName())) { + Log.d(TAG, "STAHP SENDING SO MUCH DATA KTHX: " + ex); + return; + } + throw ex.rethrowFromSystemServer(); } } diff --git a/core/java/android/app/LoadedApk.java b/core/java/android/app/LoadedApk.java index ae433eb5be02a..06fe515c22db0 100644 --- a/core/java/android/app/LoadedApk.java +++ b/core/java/android/app/LoadedApk.java @@ -225,6 +225,10 @@ public final class LoadedApk { return mApplicationInfo; } + public int getTargetSdkVersion() { + return mApplicationInfo.targetSdkVersion; + } + public boolean isSecurityViolation() { return mSecurityViolation; }