Merge "Remove usage of hidden UserManager api."
diff --git a/Android.bp b/Android.bp
new file mode 100644
index 0000000..455634f
--- /dev/null
+++ b/Android.bp
@@ -0,0 +1,78 @@
+// Copyright 2019 Google Inc. All rights reserved.
+//
+// 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.
+
+// Build the Phone app which includes the emergency dialer. See Contacts
+// for the 'other' dialer.
+
+android_app {
+ name: "TeleService",
+
+ libs: [
+ "telephony-common",
+ "voip-common",
+ "ims-common",
+ "org.apache.http.legacy",
+ "libprotobuf-java-lite",
+ ],
+
+ static_libs: [
+ "androidx.appcompat_appcompat",
+ "androidx.preference_preference",
+ "androidx.recyclerview_recyclerview",
+ "androidx.legacy_legacy-preference-v14",
+ "guava",
+ "volley",
+ "android-support-annotations",
+ "com.android.phone.common-lib",
+ ],
+
+ srcs: [
+ "src/**/*.java",
+ "sip/src/**/*.java",
+ "ecc/proto/**/*.proto",
+ "src/com/android/phone/EventLogTags.logtags",
+ ],
+
+ resource_dirs: [
+ "res",
+ "sip/res",
+ ],
+
+ asset_dirs: [
+ "assets",
+ "ecc/output",
+ ],
+
+ aaptflags: [
+ "--extra-packages com.android.services.telephony.sip",
+ ],
+
+ platform_apis: true,
+
+ certificate: "platform",
+ privileged: true,
+
+ optimize: {
+ proguard_flags_files: [
+ "proguard.flags",
+ "sip/proguard.flags",
+ ],
+ },
+
+ defaults: ["SettingsLibDefaults"],
+
+ proto: {
+ type: "lite",
+ },
+}
\ No newline at end of file
diff --git a/Android.mk b/Android.mk
deleted file mode 100644
index 04c37e6..0000000
--- a/Android.mk
+++ /dev/null
@@ -1,57 +0,0 @@
-LOCAL_PATH:= $(call my-dir)
-
-# Build the Phone app which includes the emergency dialer. See Contacts
-# for the 'other' dialer.
-include $(CLEAR_VARS)
-
-phone_common_dir := ../../apps/PhoneCommon
-
-src_dirs := src $(phone_common_dir)/src sip/src
-res_dirs := res $(phone_common_dir)/res sip/res
-asset_dirs := assets ecc/output
-
-LOCAL_JAVA_LIBRARIES := \
- telephony-common \
- voip-common \
- ims-common \
- org.apache.http.legacy \
- libprotobuf-java-lite
-
-LOCAL_STATIC_ANDROID_LIBRARIES := \
- androidx.appcompat_appcompat \
- androidx.preference_preference \
- androidx.recyclerview_recyclerview \
- androidx.legacy_legacy-preference-v14
-
-LOCAL_STATIC_JAVA_LIBRARIES := \
- guava \
- volley \
- android-support-annotations
-
-LOCAL_SRC_FILES := $(call all-java-files-under, $(src_dirs))
-LOCAL_SRC_FILES += $(call all-proto-files-under, ecc/proto)
-LOCAL_SRC_FILES += \
- src/com/android/phone/EventLogTags.logtags
-LOCAL_RESOURCE_DIR := $(addprefix $(LOCAL_PATH)/, $(res_dirs))
-LOCAL_ASSET_DIR := $(addprefix $(LOCAL_PATH)/, $(asset_dirs))
-LOCAL_USE_AAPT2 := true
-
-LOCAL_AAPT_FLAGS := \
- --extra-packages com.android.phone.common \
- --extra-packages com.android.services.telephony.sip
-
-LOCAL_PACKAGE_NAME := TeleService
-LOCAL_PRIVATE_PLATFORM_APIS := true
-
-LOCAL_CERTIFICATE := platform
-LOCAL_PRIVILEGED_MODULE := true
-
-LOCAL_PROGUARD_FLAG_FILES := proguard.flags sip/proguard.flags
-
-include frameworks/base/packages/SettingsLib/common.mk
-
-include $(BUILD_PACKAGE)
-
-# Build the test package
-include $(call all-makefiles-under,$(LOCAL_PATH))
-
diff --git a/src/com/android/phone/PhoneInterfaceManager.java b/src/com/android/phone/PhoneInterfaceManager.java
index ce31536..15818ec 100755
--- a/src/com/android/phone/PhoneInterfaceManager.java
+++ b/src/com/android/phone/PhoneInterfaceManager.java
@@ -5670,6 +5670,21 @@
}
@Override
+ public int getSubIdForPhoneAccountHandle(
+ PhoneAccountHandle phoneAccountHandle, String callingPackage) {
+ if (!TelephonyPermissions.checkCallingOrSelfReadPhoneState(mApp, getDefaultSubscription(),
+ callingPackage, "getSubIdForPhoneAccountHandle")) {
+ throw new SecurityException("Requires READ_PHONE_STATE permission.");
+ }
+ final long identity = Binder.clearCallingIdentity();
+ try {
+ return PhoneUtils.getSubIdForPhoneAccountHandle(phoneAccountHandle);
+ } finally {
+ Binder.restoreCallingIdentity(identity);
+ }
+ }
+
+ @Override
public @Nullable PhoneAccountHandle getPhoneAccountHandleForSubscriptionId(int subscriptionId) {
final long identity = Binder.clearCallingIdentity();
try {
@@ -7331,10 +7346,8 @@
*/
@Override
public boolean isDataEnabledForApn(int apnType, int subId, String callingPackage) {
- if (!TelephonyPermissions.checkCallingOrSelfReadPhoneState(
- mApp, subId, callingPackage, "isDataEnabledForApn")) {
- throw new SecurityException("Needs READ_PHONE_STATE for isDataEnabledForApn");
- }
+ enforceReadPrivilegedPermission("Needs READ_PRIVILEGED_PHONE_STATE for "
+ + "isDataEnabledForApn");
// Now that all security checks passes, perform the operation as ourselves.
final long identity = Binder.clearCallingIdentity();