Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 490f3915 authored by Hai Zhang's avatar Hai Zhang Committed by Android (Google) Code Review
Browse files

Merge changes from topic "role-mainline"

* changes:
  Deprecate RoleControllerService related system APIs.
  Move role into module.
parents 922f2c43 61545a7e
Loading
Loading
Loading
Loading
+35 −0
Original line number Diff line number Diff line
@@ -761,6 +761,7 @@ gensrcs {
        ":libstats_atom_enum_protos",
        "core/proto/**/*.proto",
        "libs/incident/**/*.proto",
        ":service-permission-protos",
    ],
    output_extension: "srcjar",
}
@@ -788,6 +789,7 @@ gensrcs {
        ":libstats_atom_enum_protos",
        "core/proto/**/*.proto",
        "libs/incident/**/*.proto",
        ":service-permission-protos",
    ],

    output_extension: "proto.h",
@@ -796,6 +798,9 @@ gensrcs {
filegroup {
    name: "framework-annotations",
    srcs: [
        "core/java/android/annotation/AnyThread.java",
        "core/java/android/annotation/AppIdInt.java",
        "core/java/android/annotation/CallSuper.java",
        "core/java/android/annotation/CallbackExecutor.java",
        "core/java/android/annotation/CheckResult.java",
        "core/java/android/annotation/CurrentTimeMillisLong.java",
@@ -803,6 +808,7 @@ filegroup {
        "core/java/android/annotation/IntDef.java",
        "core/java/android/annotation/IntRange.java",
        "core/java/android/annotation/LongDef.java",
        "core/java/android/annotation/MainThread.java",
        "core/java/android/annotation/NonNull.java",
        "core/java/android/annotation/Nullable.java",
        "core/java/android/annotation/RequiresPermission.java",
@@ -812,6 +818,7 @@ filegroup {
        "core/java/android/annotation/SystemApi.java",
        "core/java/android/annotation/SystemService.java",
        "core/java/android/annotation/TestApi.java",
        "core/java/android/annotation/UserIdInt.java",
        "core/java/android/annotation/WorkerThread.java",
        "core/java/com/android/internal/annotations/GuardedBy.java",
        "core/java/com/android/internal/annotations/VisibleForTesting.java",
@@ -906,6 +913,30 @@ filegroup {
    ],
}

// Keep these files in sync with the apex/permission/jarjar-rules.txt for the permission module.
filegroup {
    name: "framework-permission-s-shared-srcs",
    srcs: [
        "core/java/com/android/internal/infra/AndroidFuture.java",
        "core/java/com/android/internal/infra/ServiceConnector.java",
        "core/java/com/android/internal/util/Preconditions.java",
        "core/java/com/android/internal/infra/AndroidFuture.aidl",
        "core/java/com/android/internal/infra/IAndroidFuture.aidl",
        "core/java/android/os/HandlerExecutor.java",
    ],
    path: "core/java",
}

// Keep these files in sync with the apex/permission/jarjar-rules.txt for the permission module.
filegroup {
    name: "service-permission-shared-srcs",
    srcs: [
        "core/java/android/util/IndentingPrintWriter.java",
        "core/java/com/android/internal/util/dump/DualDumpOutputStream.java",
    ],
    path: "core/java",
}

// Build ext.jar
// ============================================================
java_library {
@@ -932,6 +963,7 @@ java_library_host {
        "cmds/statsd/src/**/*.proto",
        "core/proto/**/*.proto",
        "libs/incident/proto/**/*.proto",
        ":service-permission-protos",
    ],
    proto: {
        include_dirs: [
@@ -965,6 +997,7 @@ java_library {
        ":libstats_atom_enum_protos",
        "core/proto/**/*.proto",
        "libs/incident/proto/android/os/**/*.proto",
        ":service-permission-protos",
    ],
}

@@ -981,6 +1014,7 @@ java_library {
        ":libstats_atom_enum_protos",
        "core/proto/**/*.proto",
        "libs/incident/proto/android/os/**/*.proto",
        ":service-permission-protos",
    ],
    exclude_srcs: [
        "core/proto/android/privacy.proto",
@@ -1015,6 +1049,7 @@ cc_defaults {
        ":ipconnectivity-proto-src",
        ":libstats_atom_enum_protos",
        "core/proto/**/*.proto",
        ":service-permission-protos",
    ],
}

+5 −0
Original line number Diff line number Diff line
@@ -42,3 +42,8 @@ android_app_certificate {
    name: "com.android.permission.certificate",
    certificate: "com.android.permission",
}

filegroup {
    name: "permission-jarjar-rules",
    srcs: ["jarjar-rules.txt"],
}
+25 −0
Original line number Diff line number Diff line
@@ -22,12 +22,34 @@ filegroup {
    visibility: ["//frameworks/base"],
}

java_library {
    name: "framework-permission-s-shared",
    srcs: [":framework-permission-s-shared-srcs"],
    libs: [
        "framework-annotations-lib",
        "unsupportedappusage",
    ],
    apex_available: [
        "com.android.permission",
        "test_com.android.permission",
    ],
    installable: false,
    min_sdk_version: "30",
    sdk_version: "module_current",
}

java_sdk_library {
    name: "framework-permission-s",
    defaults: ["framework-module-defaults"],
    srcs: [
        ":framework-permission-s-sources",
    ],
    libs: [
        "framework-annotations-lib"
    ],
    static_libs: [
        "framework-permission-s-shared",
    ],
    apex_available: [
        "com.android.permission",
        "test_com.android.permission",
@@ -36,9 +58,12 @@ java_sdk_library {
    // Restrict access to implementation library.
    impl_library_visibility: ["//frameworks/base/apex/permission:__subpackages__"],
    installable: true,
    jarjar_rules: ":permission-jarjar-rules",
    min_sdk_version: "30",
    permitted_packages: [
        "android.permission",
        "android.app.role",
        // For com.android.permission.jarjar.
        "com.android.permission",
    ],
}
+18 −0
Original line number Diff line number Diff line
// Signature format: 2.0
package android.app.role {

  public final class RoleManager {
    method @NonNull public android.content.Intent createRequestRoleIntent(@NonNull String);
    method public boolean isRoleAvailable(@NonNull String);
    method public boolean isRoleHeld(@NonNull String);
    field public static final String ROLE_ASSISTANT = "android.app.role.ASSISTANT";
    field public static final String ROLE_BROWSER = "android.app.role.BROWSER";
    field public static final String ROLE_CALL_REDIRECTION = "android.app.role.CALL_REDIRECTION";
    field public static final String ROLE_CALL_SCREENING = "android.app.role.CALL_SCREENING";
    field public static final String ROLE_DIALER = "android.app.role.DIALER";
    field public static final String ROLE_EMERGENCY = "android.app.role.EMERGENCY";
    field public static final String ROLE_HOME = "android.app.role.HOME";
    field public static final String ROLE_SMS = "android.app.role.SMS";
  }

}
+10 −0
Original line number Diff line number Diff line
// Signature format: 2.0
package android.app.role {

  public final class RoleManager {
    method @Nullable public String getBrowserRoleHolder(int);
    method @Nullable public String getSmsRoleHolder(int);
    method @Nullable @RequiresPermission(android.Manifest.permission.SET_PREFERRED_APPLICATIONS) public boolean setBrowserRoleHolder(@Nullable String, int);
  }

}
Loading