Merge "Adding Dynamic ImsService Binding (1/3)" am: 8e6b13a1c0
am: 64057ab972
Change-Id: I901c72a38b522c190e849de55078036adc80d8b6
This commit is contained in:
@@ -436,6 +436,8 @@ LOCAL_SRC_FILES += \
|
||||
telephony/java/com/android/ims/internal/IImsExternalCallStateListener.aidl \
|
||||
telephony/java/com/android/ims/internal/IImsMultiEndpoint.aidl \
|
||||
telephony/java/com/android/ims/internal/IImsService.aidl \
|
||||
telephony/java/com/android/ims/internal/IImsServiceController.aidl \
|
||||
telephony/java/com/android/ims/internal/IImsServiceFeatureListener.aidl \
|
||||
telephony/java/com/android/ims/internal/IImsStreamMediaSession.aidl \
|
||||
telephony/java/com/android/ims/internal/IImsUt.aidl \
|
||||
telephony/java/com/android/ims/internal/IImsUtListener.aidl \
|
||||
|
||||
@@ -37086,6 +37086,7 @@ package android.telephony {
|
||||
field public static final java.lang.String KEY_CI_ACTION_ON_SYS_UPDATE_EXTRA_STRING = "ci_action_on_sys_update_extra_string";
|
||||
field public static final java.lang.String KEY_CI_ACTION_ON_SYS_UPDATE_EXTRA_VAL_STRING = "ci_action_on_sys_update_extra_val_string";
|
||||
field public static final java.lang.String KEY_CI_ACTION_ON_SYS_UPDATE_INTENT_STRING = "ci_action_on_sys_update_intent_string";
|
||||
field public static final java.lang.String KEY_CONFIG_IMS_PACKAGE_OVERRIDE_STRING = "config_ims_package_override_string";
|
||||
field public static final java.lang.String KEY_CSP_ENABLED_BOOL = "csp_enabled_bool";
|
||||
field public static final java.lang.String KEY_DEFAULT_SIM_CALL_MANAGER_STRING = "default_sim_call_manager_string";
|
||||
field public static final java.lang.String KEY_DISABLE_CDMA_ACTIVATION_CODE_BOOL = "disable_cdma_activation_code_bool";
|
||||
|
||||
@@ -36,6 +36,7 @@ package android {
|
||||
field public static final java.lang.String BIND_DEVICE_ADMIN = "android.permission.BIND_DEVICE_ADMIN";
|
||||
field public static final java.lang.String BIND_DIRECTORY_SEARCH = "android.permission.BIND_DIRECTORY_SEARCH";
|
||||
field public static final java.lang.String BIND_DREAM_SERVICE = "android.permission.BIND_DREAM_SERVICE";
|
||||
field public static final java.lang.String BIND_IMS_SERVICE = "android.permission.BIND_IMS_SERVICE";
|
||||
field public static final java.lang.String BIND_INCALL_SERVICE = "android.permission.BIND_INCALL_SERVICE";
|
||||
field public static final java.lang.String BIND_INPUT_METHOD = "android.permission.BIND_INPUT_METHOD";
|
||||
field public static final java.lang.String BIND_KEYGUARD_APPWIDGET = "android.permission.BIND_KEYGUARD_APPWIDGET";
|
||||
@@ -40255,6 +40256,7 @@ package android.telephony {
|
||||
field public static final java.lang.String KEY_CI_ACTION_ON_SYS_UPDATE_EXTRA_STRING = "ci_action_on_sys_update_extra_string";
|
||||
field public static final java.lang.String KEY_CI_ACTION_ON_SYS_UPDATE_EXTRA_VAL_STRING = "ci_action_on_sys_update_extra_val_string";
|
||||
field public static final java.lang.String KEY_CI_ACTION_ON_SYS_UPDATE_INTENT_STRING = "ci_action_on_sys_update_intent_string";
|
||||
field public static final java.lang.String KEY_CONFIG_IMS_PACKAGE_OVERRIDE_STRING = "config_ims_package_override_string";
|
||||
field public static final java.lang.String KEY_CSP_ENABLED_BOOL = "csp_enabled_bool";
|
||||
field public static final java.lang.String KEY_DEFAULT_SIM_CALL_MANAGER_STRING = "default_sim_call_manager_string";
|
||||
field public static final java.lang.String KEY_DISABLE_CDMA_ACTIVATION_CODE_BOOL = "disable_cdma_activation_code_bool";
|
||||
@@ -41132,6 +41134,15 @@ package android.telephony.gsm {
|
||||
|
||||
}
|
||||
|
||||
package android.telephony.ims {
|
||||
|
||||
public class ImsServiceBase extends android.app.Service {
|
||||
ctor public ImsServiceBase();
|
||||
method public android.os.IBinder onBind(android.content.Intent);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
package android.test {
|
||||
|
||||
public abstract deprecated class ActivityInstrumentationTestCase<T extends android.app.Activity> extends android.test.ActivityTestCase {
|
||||
|
||||
@@ -37168,6 +37168,7 @@ package android.telephony {
|
||||
field public static final java.lang.String KEY_CI_ACTION_ON_SYS_UPDATE_EXTRA_STRING = "ci_action_on_sys_update_extra_string";
|
||||
field public static final java.lang.String KEY_CI_ACTION_ON_SYS_UPDATE_EXTRA_VAL_STRING = "ci_action_on_sys_update_extra_val_string";
|
||||
field public static final java.lang.String KEY_CI_ACTION_ON_SYS_UPDATE_INTENT_STRING = "ci_action_on_sys_update_intent_string";
|
||||
field public static final java.lang.String KEY_CONFIG_IMS_PACKAGE_OVERRIDE_STRING = "config_ims_package_override_string";
|
||||
field public static final java.lang.String KEY_CSP_ENABLED_BOOL = "csp_enabled_bool";
|
||||
field public static final java.lang.String KEY_DEFAULT_SIM_CALL_MANAGER_STRING = "default_sim_call_manager_string";
|
||||
field public static final java.lang.String KEY_DISABLE_CDMA_ACTIVATION_CODE_BOOL = "disable_cdma_activation_code_bool";
|
||||
|
||||
@@ -1578,6 +1578,16 @@
|
||||
<permission android:name="android.permission.RECEIVE_STK_COMMANDS"
|
||||
android:protectionLevel="signature|privileged" />
|
||||
|
||||
<!-- Must be required by an ImsService to ensure that only the
|
||||
system can bind to it.
|
||||
<p>Protection level: signature|privileged
|
||||
@SystemApi
|
||||
@hide
|
||||
-->
|
||||
<permission android:name="android.permission.BIND_IMS_SERVICE"
|
||||
android:protectionLevel="signature|privileged" />
|
||||
|
||||
|
||||
<!-- ================================== -->
|
||||
<!-- Permissions for sdcard interaction -->
|
||||
<!-- ================================== -->
|
||||
|
||||
@@ -237,6 +237,12 @@ public class CarrierConfigManager {
|
||||
public static final String
|
||||
KEY_GSM_NONROAMING_NETWORKS_STRING_ARRAY = "gsm_nonroaming_networks_string_array";
|
||||
|
||||
/**
|
||||
* Override the device's configuration for the ImsService to use for this SIM card.
|
||||
*/
|
||||
public static final String KEY_CONFIG_IMS_PACKAGE_OVERRIDE_STRING =
|
||||
"config_ims_package_override_string";
|
||||
|
||||
/**
|
||||
* Override the platform's notion of a network operator being considered roaming.
|
||||
* Value is string array of SIDs to be considered roaming for 3GPP2 RATs.
|
||||
@@ -1225,6 +1231,7 @@ public class CarrierConfigManager {
|
||||
});
|
||||
sDefaults.putStringArray(KEY_GSM_ROAMING_NETWORKS_STRING_ARRAY, null);
|
||||
sDefaults.putStringArray(KEY_GSM_NONROAMING_NETWORKS_STRING_ARRAY, null);
|
||||
sDefaults.putString(KEY_CONFIG_IMS_PACKAGE_OVERRIDE_STRING, null);
|
||||
sDefaults.putStringArray(KEY_CDMA_ROAMING_NETWORKS_STRING_ARRAY, null);
|
||||
sDefaults.putStringArray(KEY_CDMA_NONROAMING_NETWORKS_STRING_ARRAY, null);
|
||||
sDefaults.putStringArray(KEY_DIAL_STRING_REPLACE_STRING_ARRAY, null);
|
||||
|
||||
35
telephony/java/android/telephony/ims/ImsServiceBase.java
Normal file
35
telephony/java/android/telephony/ims/ImsServiceBase.java
Normal file
@@ -0,0 +1,35 @@
|
||||
/*
|
||||
* 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.telephony.ims;
|
||||
|
||||
import android.annotation.SystemApi;
|
||||
import android.app.Service;
|
||||
import android.content.Intent;
|
||||
import android.os.IBinder;
|
||||
|
||||
/**
|
||||
* Base ImsService Implementation, which is used by the ImsResolver to bind.
|
||||
* @hide
|
||||
*/
|
||||
@SystemApi
|
||||
public class ImsServiceBase extends Service {
|
||||
|
||||
@Override
|
||||
public IBinder onBind(Intent intent) {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
33
telephony/java/android/telephony/ims/feature/ImsFeature.java
Normal file
33
telephony/java/android/telephony/ims/feature/ImsFeature.java
Normal file
@@ -0,0 +1,33 @@
|
||||
/*
|
||||
* 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.telephony.ims.feature;
|
||||
|
||||
/**
|
||||
* Base class for all IMS features that are supported by the framework.
|
||||
* @hide
|
||||
*/
|
||||
public class ImsFeature {
|
||||
|
||||
// Invalid feature value
|
||||
public static final int INVALID = -1;
|
||||
// ImsFeatures that are defined in the Manifests
|
||||
public static final int EMERGENCY_MMTEL = 0;
|
||||
public static final int MMTEL = 1;
|
||||
public static final int RCS = 2;
|
||||
// Total number of features defined
|
||||
public static final int MAX = 3;
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
/*
|
||||
* 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 com.android.ims.internal;
|
||||
|
||||
/**
|
||||
* {@hide}
|
||||
*/
|
||||
interface IImsServiceController {
|
||||
void createImsFeature(int slotId, int feature);
|
||||
void removeImsFeature(int slotId, int feature);
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
/*
|
||||
* 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 com.android.ims.internal;
|
||||
|
||||
/**
|
||||
* {@hide}
|
||||
*/
|
||||
oneway interface IImsServiceFeatureListener {
|
||||
void imsFeatureCreated(int slotId, int feature);
|
||||
void imsFeatureRemoved(int slotId, int feature);
|
||||
}
|
||||
Reference in New Issue
Block a user