Loading core/java/android/accounts/AccountManager.java +3 −0 Original line number Diff line number Diff line Loading @@ -24,6 +24,7 @@ import android.annotation.RequiresPermission; import android.annotation.SdkConstant; import android.annotation.Size; import android.annotation.SystemApi; import android.annotation.SystemService; import android.annotation.SdkConstant.SdkConstantType; import android.annotation.BroadcastBehavior; import android.app.Activity; Loading Loading @@ -161,6 +162,7 @@ import java.util.concurrent.TimeoutException; * the application's main event thread. These operations throw * {@link IllegalStateException} if they are used on the main thread. */ @SystemService(Context.ACCOUNT_SERVICE) public class AccountManager { private static final String TAG = "AccountManager"; Loading Loading @@ -3237,6 +3239,7 @@ public class AccountManager { * @hide */ @SystemApi @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public AccountManagerFuture<Bundle> finishSessionAsUser( final Bundle sessionBundle, final Activity activity, Loading core/java/android/annotation/SystemService.java 0 → 100644 +37 −0 Original line number Diff line number Diff line /* * Copyright (C) 2017 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package android.annotation; import static java.lang.annotation.ElementType.TYPE; import static java.lang.annotation.RetentionPolicy.SOURCE; import android.content.Context; import java.lang.annotation.Retention; import java.lang.annotation.Target; /** * Description of a system service available through * {@link Context#getSystemService(Class)}. * * @hide */ @Retention(SOURCE) @Target(TYPE) public @interface SystemService { String value(); } core/java/android/app/ActivityManager.java +8 −0 Original line number Diff line number Diff line Loading @@ -22,6 +22,7 @@ import android.annotation.NonNull; import android.annotation.Nullable; import android.annotation.RequiresPermission; import android.annotation.SystemApi; import android.annotation.SystemService; import android.annotation.TestApi; import android.content.pm.ActivityInfo; import android.content.res.Configuration; Loading Loading @@ -117,6 +118,7 @@ import java.util.List; * be used for testing and debugging purposes only. * </p> */ @SystemService(Context.ACTIVITY_SERVICE) public class ActivityManager { private static String TAG = "ActivityManager"; Loading Loading @@ -3610,6 +3612,7 @@ public class ActivityManager { * @hide */ @SystemApi @TestApi @RequiresPermission(Manifest.permission.PACKAGE_USAGE_STATS) public void addOnUidImportanceListener(OnUidImportanceListener listener, @RunningAppProcessInfo.Importance int importanceCutpoint) { synchronized (this) { Loading Loading @@ -3638,6 +3641,7 @@ public class ActivityManager { * @hide */ @SystemApi @TestApi @RequiresPermission(Manifest.permission.PACKAGE_USAGE_STATS) public void removeOnUidImportanceListener(OnUidImportanceListener listener) { synchronized (this) { UidObserver observer = mImportanceListeners.remove(listener); Loading Loading @@ -4005,6 +4009,10 @@ public class ActivityManager { * @hide */ @SystemApi @RequiresPermission(anyOf = { "android.permission.INTERACT_ACROSS_USERS", "android.permission.INTERACT_ACROSS_USERS_FULL" }) public static int getCurrentUser() { UserInfo ui; try { Loading core/java/android/app/AlarmManager.java +2 −5 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ package android.app; import android.annotation.IntDef; import android.annotation.SdkConstant; import android.annotation.SystemApi; import android.annotation.SystemService; import android.content.Context; import android.content.Intent; import android.os.Build; Loading Loading @@ -72,12 +73,8 @@ import java.lang.annotation.RetentionPolicy; * {@link #setExact(int, long, PendingIntent)}. Applications whose {@code targetSdkVersion} * is earlier than API 19 will continue to see the previous behavior in which all * alarms are delivered exactly when requested. * * <p>You do not * instantiate this class directly; instead, retrieve it through * {@link android.content.Context#getSystemService * Context.getSystemService(Context.ALARM_SERVICE)}. */ @SystemService(Context.ALARM_SERVICE) public class AlarmManager { private static final String TAG = "AlarmManager"; Loading core/java/android/app/AppOpsManager.java +5 −3 Original line number Diff line number Diff line Loading @@ -17,7 +17,9 @@ package android.app; import android.Manifest; import android.annotation.RequiresPermission; import android.annotation.SystemApi; import android.annotation.SystemService; import android.app.usage.UsageStatsManager; import android.content.Context; import android.media.AudioAttributes.AttributeUsage; Loading @@ -42,10 +44,9 @@ import java.util.List; * API for interacting with "application operation" tracking. * * <p>This API is not generally intended for third party application developers; most * features are only available to system applications. Obtain an instance of it through * {@link Context#getSystemService(String) Context.getSystemService} with * {@link Context#APP_OPS_SERVICE Context.APP_OPS_SERVICE}.</p> * features are only available to system applications. */ @SystemService(Context.APP_OPS_SERVICE) public class AppOpsManager { /** * <p>App ops allows callers to:</p> Loading Loading @@ -1409,6 +1410,7 @@ public class AppOpsManager { * @hide */ @SystemApi @RequiresPermission(android.Manifest.permission.UPDATE_APP_OPS_STATS) public void setUidMode(String appOp, int uid, int mode) { try { mService.setUidMode(AppOpsManager.strOpToOp(appOp), uid, mode); Loading Loading
core/java/android/accounts/AccountManager.java +3 −0 Original line number Diff line number Diff line Loading @@ -24,6 +24,7 @@ import android.annotation.RequiresPermission; import android.annotation.SdkConstant; import android.annotation.Size; import android.annotation.SystemApi; import android.annotation.SystemService; import android.annotation.SdkConstant.SdkConstantType; import android.annotation.BroadcastBehavior; import android.app.Activity; Loading Loading @@ -161,6 +162,7 @@ import java.util.concurrent.TimeoutException; * the application's main event thread. These operations throw * {@link IllegalStateException} if they are used on the main thread. */ @SystemService(Context.ACCOUNT_SERVICE) public class AccountManager { private static final String TAG = "AccountManager"; Loading Loading @@ -3237,6 +3239,7 @@ public class AccountManager { * @hide */ @SystemApi @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS_FULL) public AccountManagerFuture<Bundle> finishSessionAsUser( final Bundle sessionBundle, final Activity activity, Loading
core/java/android/annotation/SystemService.java 0 → 100644 +37 −0 Original line number Diff line number Diff line /* * Copyright (C) 2017 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package android.annotation; import static java.lang.annotation.ElementType.TYPE; import static java.lang.annotation.RetentionPolicy.SOURCE; import android.content.Context; import java.lang.annotation.Retention; import java.lang.annotation.Target; /** * Description of a system service available through * {@link Context#getSystemService(Class)}. * * @hide */ @Retention(SOURCE) @Target(TYPE) public @interface SystemService { String value(); }
core/java/android/app/ActivityManager.java +8 −0 Original line number Diff line number Diff line Loading @@ -22,6 +22,7 @@ import android.annotation.NonNull; import android.annotation.Nullable; import android.annotation.RequiresPermission; import android.annotation.SystemApi; import android.annotation.SystemService; import android.annotation.TestApi; import android.content.pm.ActivityInfo; import android.content.res.Configuration; Loading Loading @@ -117,6 +118,7 @@ import java.util.List; * be used for testing and debugging purposes only. * </p> */ @SystemService(Context.ACTIVITY_SERVICE) public class ActivityManager { private static String TAG = "ActivityManager"; Loading Loading @@ -3610,6 +3612,7 @@ public class ActivityManager { * @hide */ @SystemApi @TestApi @RequiresPermission(Manifest.permission.PACKAGE_USAGE_STATS) public void addOnUidImportanceListener(OnUidImportanceListener listener, @RunningAppProcessInfo.Importance int importanceCutpoint) { synchronized (this) { Loading Loading @@ -3638,6 +3641,7 @@ public class ActivityManager { * @hide */ @SystemApi @TestApi @RequiresPermission(Manifest.permission.PACKAGE_USAGE_STATS) public void removeOnUidImportanceListener(OnUidImportanceListener listener) { synchronized (this) { UidObserver observer = mImportanceListeners.remove(listener); Loading Loading @@ -4005,6 +4009,10 @@ public class ActivityManager { * @hide */ @SystemApi @RequiresPermission(anyOf = { "android.permission.INTERACT_ACROSS_USERS", "android.permission.INTERACT_ACROSS_USERS_FULL" }) public static int getCurrentUser() { UserInfo ui; try { Loading
core/java/android/app/AlarmManager.java +2 −5 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ package android.app; import android.annotation.IntDef; import android.annotation.SdkConstant; import android.annotation.SystemApi; import android.annotation.SystemService; import android.content.Context; import android.content.Intent; import android.os.Build; Loading Loading @@ -72,12 +73,8 @@ import java.lang.annotation.RetentionPolicy; * {@link #setExact(int, long, PendingIntent)}. Applications whose {@code targetSdkVersion} * is earlier than API 19 will continue to see the previous behavior in which all * alarms are delivered exactly when requested. * * <p>You do not * instantiate this class directly; instead, retrieve it through * {@link android.content.Context#getSystemService * Context.getSystemService(Context.ALARM_SERVICE)}. */ @SystemService(Context.ALARM_SERVICE) public class AlarmManager { private static final String TAG = "AlarmManager"; Loading
core/java/android/app/AppOpsManager.java +5 −3 Original line number Diff line number Diff line Loading @@ -17,7 +17,9 @@ package android.app; import android.Manifest; import android.annotation.RequiresPermission; import android.annotation.SystemApi; import android.annotation.SystemService; import android.app.usage.UsageStatsManager; import android.content.Context; import android.media.AudioAttributes.AttributeUsage; Loading @@ -42,10 +44,9 @@ import java.util.List; * API for interacting with "application operation" tracking. * * <p>This API is not generally intended for third party application developers; most * features are only available to system applications. Obtain an instance of it through * {@link Context#getSystemService(String) Context.getSystemService} with * {@link Context#APP_OPS_SERVICE Context.APP_OPS_SERVICE}.</p> * features are only available to system applications. */ @SystemService(Context.APP_OPS_SERVICE) public class AppOpsManager { /** * <p>App ops allows callers to:</p> Loading Loading @@ -1409,6 +1410,7 @@ public class AppOpsManager { * @hide */ @SystemApi @RequiresPermission(android.Manifest.permission.UPDATE_APP_OPS_STATS) public void setUidMode(String appOp, int uid, int mode) { try { mService.setUidMode(AppOpsManager.strOpToOp(appOp), uid, mode); Loading