Link overlay emergency app by feature flag
Add feature flag to link overlay emergency app instead of Emergency Info app for teamfood in the future. Test: Manually Bug: 118809382 Change-Id: I7956704b9d134647cc0a1a5975a0bf8bea482422
This commit is contained in:
@@ -150,4 +150,14 @@
|
|||||||
<string name="config_settingsintelligence_package_name" translatable="false">
|
<string name="config_settingsintelligence_package_name" translatable="false">
|
||||||
com.android.settings.intelligence
|
com.android.settings.intelligence
|
||||||
</string>
|
</string>
|
||||||
|
|
||||||
|
<!-- Emergency app package name -->
|
||||||
|
<string name="config_emergency_package_name" translatable="false">
|
||||||
|
com.android.emergency
|
||||||
|
</string>
|
||||||
|
<!-- Emergency app intent action -->
|
||||||
|
<string name="config_emergency_intent_action" translatable="false">
|
||||||
|
android.settings.EDIT_EMERGENCY_INFO
|
||||||
|
</string>
|
||||||
|
|
||||||
</resources>
|
</resources>
|
||||||
|
@@ -22,6 +22,7 @@ import android.content.pm.UserInfo;
|
|||||||
import android.content.res.Resources;
|
import android.content.res.Resources;
|
||||||
import android.os.UserHandle;
|
import android.os.UserHandle;
|
||||||
import android.os.UserManager;
|
import android.os.UserManager;
|
||||||
|
import android.util.FeatureFlagUtils;
|
||||||
|
|
||||||
import androidx.preference.Preference;
|
import androidx.preference.Preference;
|
||||||
|
|
||||||
@@ -63,7 +64,7 @@ public class EmergencyInfoPreferenceController extends AbstractPreferenceControl
|
|||||||
@Override
|
@Override
|
||||||
public boolean handlePreferenceTreeClick(Preference preference) {
|
public boolean handlePreferenceTreeClick(Preference preference) {
|
||||||
if (KEY_EMERGENCY_INFO.equals(preference.getKey())) {
|
if (KEY_EMERGENCY_INFO.equals(preference.getKey())) {
|
||||||
Intent intent = new Intent(ACTION_EDIT_EMERGENCY_INFO);
|
Intent intent = new Intent(getIntentAction(mContext));
|
||||||
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
|
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
|
||||||
mContext.startActivity(intent);
|
mContext.startActivity(intent);
|
||||||
return true;
|
return true;
|
||||||
@@ -73,7 +74,7 @@ public class EmergencyInfoPreferenceController extends AbstractPreferenceControl
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isAvailable() {
|
public boolean isAvailable() {
|
||||||
Intent intent = new Intent(ACTION_EDIT_EMERGENCY_INFO).setPackage(PACKAGE_NAME_EMERGENCY);
|
Intent intent = new Intent(getIntentAction(mContext)).setPackage(getPackageName(mContext));
|
||||||
List<ResolveInfo> infos = mContext.getPackageManager().queryIntentActivities(intent, 0);
|
List<ResolveInfo> infos = mContext.getPackageManager().queryIntentActivities(intent, 0);
|
||||||
return infos != null && !infos.isEmpty();
|
return infos != null && !infos.isEmpty();
|
||||||
}
|
}
|
||||||
@@ -82,4 +83,20 @@ public class EmergencyInfoPreferenceController extends AbstractPreferenceControl
|
|||||||
public String getPreferenceKey() {
|
public String getPreferenceKey() {
|
||||||
return KEY_EMERGENCY_INFO;
|
return KEY_EMERGENCY_INFO;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private String getIntentAction(Context context) {
|
||||||
|
if (FeatureFlagUtils.isEnabled(context, FeatureFlagUtils.SAFETY_HUB)) {
|
||||||
|
return context.getResources().getString(R.string.config_emergency_intent_action);
|
||||||
|
}
|
||||||
|
|
||||||
|
return ACTION_EDIT_EMERGENCY_INFO;
|
||||||
|
}
|
||||||
|
|
||||||
|
private String getPackageName(Context context) {
|
||||||
|
if (FeatureFlagUtils.isEnabled(context, FeatureFlagUtils.SAFETY_HUB)) {
|
||||||
|
return context.getResources().getString(R.string.config_emergency_package_name);
|
||||||
|
}
|
||||||
|
|
||||||
|
return PACKAGE_NAME_EMERGENCY;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user