Read SettingsIntelligence package name from resource

Test: make RunSettingsRoboTests
Change-Id: I2143e1f7657cc0e01e91978e8c212ff079cec7d7
This commit is contained in:
Raff Tsai
2018-11-13 14:45:01 +08:00
parent 675f843659
commit 35ae9bbaac
5 changed files with 14 additions and 8 deletions

View File

@@ -145,4 +145,9 @@
<!-- Whether or not TopLevelSettings should force rounded icon for injected tiles --> <!-- Whether or not TopLevelSettings should force rounded icon for injected tiles -->
<bool name="config_force_rounded_icon_TopLevelSettings">true</bool> <bool name="config_force_rounded_icon_TopLevelSettings">true</bool>
<!-- Settings intelligence package name -->
<string name="config_settingsintelligence_package_name" translatable="false">
com.android.settings.intelligence
</string>
</resources> </resources>

View File

@@ -29,6 +29,7 @@ import android.view.ViewGroup;
import android.widget.Toolbar; import android.widget.Toolbar;
import com.android.internal.logging.nano.MetricsProto; import com.android.internal.logging.nano.MetricsProto;
import com.android.settings.R;
import com.android.settings.Utils; import com.android.settings.Utils;
import com.android.settings.overlay.FeatureFactory; import com.android.settings.overlay.FeatureFactory;
import com.android.settingslib.search.SearchIndexableResources; import com.android.settingslib.search.SearchIndexableResources;
@@ -55,8 +56,8 @@ public interface SearchFeatureProvider {
*/ */
SearchIndexableResources getSearchIndexableResources(); SearchIndexableResources getSearchIndexableResources();
default String getSettingsIntelligencePkgName() { default String getSettingsIntelligencePkgName(Context context) {
return "com.android.settings.intelligence"; return context.getString(R.string.config_settingsintelligence_package_name);
} }
/** /**
@@ -66,7 +67,7 @@ public interface SearchFeatureProvider {
if (activity == null || toolbar == null) { if (activity == null || toolbar == null) {
return; return;
} }
if (!Utils.isPackageEnabled(activity, getSettingsIntelligencePkgName())) { if (!Utils.isPackageEnabled(activity, getSettingsIntelligencePkgName(activity))) {
final ViewGroup parent = (ViewGroup)toolbar.getParent(); final ViewGroup parent = (ViewGroup)toolbar.getParent();
if (parent != null) { if (parent != null) {
parent.setVisibility(View.GONE); parent.setVisibility(View.GONE);
@@ -84,7 +85,7 @@ public interface SearchFeatureProvider {
toolbar.setOnClickListener(tb -> { toolbar.setOnClickListener(tb -> {
final Intent intent = SEARCH_UI_INTENT; final Intent intent = SEARCH_UI_INTENT;
intent.setPackage(getSettingsIntelligencePkgName()); intent.setPackage(getSettingsIntelligencePkgName(activity));
final Context context = activity.getApplicationContext(); final Context context = activity.getApplicationContext();
FeatureFactory.getFactory(context).getSlicesFeatureProvider() FeatureFactory.getFactory(context).getSlicesFeatureProvider()

View File

@@ -41,7 +41,7 @@ public class SearchFeatureProviderImpl implements SearchFeatureProvider {
} }
final String packageName = caller.getPackageName(); final String packageName = caller.getPackageName();
final boolean isSettingsPackage = TextUtils.equals(packageName, context.getPackageName()) final boolean isSettingsPackage = TextUtils.equals(packageName, context.getPackageName())
|| TextUtils.equals(getSettingsIntelligencePkgName(), packageName); || TextUtils.equals(getSettingsIntelligencePkgName(context), packageName);
final boolean isWhitelistedPackage = final boolean isWhitelistedPackage =
isSignatureWhitelisted(context, caller.getPackageName()); isSignatureWhitelisted(context, caller.getPackageName());
if (isSettingsPackage || isWhitelistedPackage) { if (isSettingsPackage || isWhitelistedPackage) {

View File

@@ -57,8 +57,8 @@ public class SearchMenuController implements LifecycleObserver, OnCreateOptionsM
@Override @Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
final Context context = mHost.getContext(); final Context context = mHost.getContext();
final String SettingsIntelligencePkgName = FeatureFactory.getFactory(context) final String SettingsIntelligencePkgName = context.getString(
.getSearchFeatureProvider().getSettingsIntelligencePkgName(); R.string.config_settingsintelligence_package_name);
if (!Utils.isDeviceProvisioned(mHost.getContext())) { if (!Utils.isDeviceProvisioned(mHost.getContext())) {
return; return;
} }

View File

@@ -89,7 +89,7 @@ public class SearchFeatureProviderImplTest {
@Test @Test
public void verifyLaunchSearchResultPageCaller_settingsIntelligenceCaller_shouldNotCrash() { public void verifyLaunchSearchResultPageCaller_settingsIntelligenceCaller_shouldNotCrash() {
final String packageName = mProvider.getSettingsIntelligencePkgName(); final String packageName = mProvider.getSettingsIntelligencePkgName(mActivity);
final ComponentName cn = new ComponentName(packageName, "class"); final ComponentName cn = new ComponentName(packageName, "class");
mProvider.verifyLaunchSearchResultPageCaller(mActivity, cn); mProvider.verifyLaunchSearchResultPageCaller(mActivity, cn);
} }