Implement system API to get the default phone app.
Change-Id: I6aded7a9ec36f6fd0dfa70d56c6e5fd1fe40707c
diff --git a/src/com/android/telecomm/TelecommServiceImpl.java b/src/com/android/telecomm/TelecommServiceImpl.java
index 9793fda..bf25432 100644
--- a/src/com/android/telecomm/TelecommServiceImpl.java
+++ b/src/com/android/telecomm/TelecommServiceImpl.java
@@ -64,6 +64,11 @@
}
};
+ /** Private constructor; @see init() */
+ private TelecommServiceImpl() {
+ publish();
+ }
+
/**
* Initialize the singleton TelecommServiceImpl instance.
* This is only done once, at startup, from TelecommApp.onCreate().
@@ -79,21 +84,28 @@
}
}
- /** Private constructor; @see init() */
- private TelecommServiceImpl() {
- publish();
- }
-
- private void publish() {
- Log.d(this, "publish: %s", this);
- ServiceManager.addService(SERVICE_NAME, this);
- }
-
//
// Implementation of the ITelephony interface.
//
@Override
+ public List<Subscription> getSubscriptions() {
+ return sSubscriptions;
+ }
+
+ @Override
+ public void setEnabled(Subscription subscription, boolean enabled) {
+ // Enforce MODIFY_PHONE_STATE ?
+ // TODO
+ }
+
+ @Override
+ public void setSystemDefault(Subscription subscription) {
+ // Enforce MODIFY_PHONE_STATE ?
+ // TODO
+ }
+
+ @Override
public void silenceRinger() {
Log.d(this, "silenceRinger");
// TODO: find a more appropriate permission to check here.
@@ -101,6 +113,18 @@
mHandler.sendEmptyMessage(MSG_SILENCE_RINGER);
}
+ @Override
+ public ComponentName getDefaultPhoneApp() {
+ Resources resources = TelecommApp.getInstance().getResources();
+ return new ComponentName(
+ resources.getString(R.string.ui_default_package),
+ resources.getString(R.string.dialer_default_class));
+ }
+
+ //
+ // Supporting methods for the ITelephony interface implementation.
+ //
+
/**
* Internal implemenation of silenceRinger().
* This should only be called from the main thread of the Phone app.
@@ -174,22 +198,8 @@
false)
);
-
-
- @Override
- public List<Subscription> getSubscriptions() {
- return sSubscriptions;
- }
-
- @Override
- public void setEnabled(Subscription subscription, boolean enabled) {
- // Enforce MODIFY_PHONE_STATE ?
- // TODO
- }
-
- @Override
- public void setSystemDefault(Subscription subscription) {
- // Enforce MODIFY_PHONE_STATE ?
- // TODO
+ private void publish() {
+ Log.d(this, "publish: %s", this);
+ ServiceManager.addService(SERVICE_NAME, this);
}
}