diff options
author | Colin Cross <ccross@android.com> | 2023-10-17 16:33:02 -0700 |
---|---|---|
committer | Colin Cross <ccross@android.com> | 2023-10-17 16:38:44 -0700 |
commit | 252082bfc0cde8ac468dc50d08da8dd7b2be1899 (patch) | |
tree | df039dcfcba11430f1ab0a488996aef4d7c98d52 | |
parent | 58103e0d654367b7ee24283a7b1e6df1cb3a7dff (diff) | |
download | ManagedProvisioning-252082bfc0cde8ac468dc50d08da8dd7b2be1899.tar.gz |
Fix ManagedProvisioning for use_resource_processor: true
Reference resources using the package name of the library that includes
them.
Bug: 294256649
Test: m javac-check
Change-Id: If2b7a5daa02d142930f39926aebdb8e39870e99c
13 files changed, 45 insertions, 78 deletions
diff --git a/Android.bp b/Android.bp index 1b651e336..976704098 100644 --- a/Android.bp +++ b/Android.bp @@ -65,31 +65,9 @@ android_library { android_app { name: "ManagedProvisioning", - libs: [ - "auto_value_annotations", - ], + static_libs: ["ManagedProvisioningLib"], - static_libs: [ - "androidx.legacy_legacy-support-v4", - "setupcompat", - "setupdesign", - "managedprovisioning_protoslite", - "androidx.webkit_webkit-nodeps", - "setupdesign-lottie-loading-layout", - "lottie", - "guava", - "aconfig_managed_provisioning_flags_lib" - ], - - plugins: ["auto_value_plugin"], - - srcs: [ - "src/**/*.java", - "src/**/*.kt", - "src/**/I*.aidl", - ], - - resource_dirs: ["res"], + resource_dirs: [], platform_apis: true, certificate: "platform", diff --git a/src/com/android/managedprovisioning/common/SetupGlifLayoutActivity.java b/src/com/android/managedprovisioning/common/SetupGlifLayoutActivity.java index 768632c58..888ea8e86 100644 --- a/src/com/android/managedprovisioning/common/SetupGlifLayoutActivity.java +++ b/src/com/android/managedprovisioning/common/SetupGlifLayoutActivity.java @@ -68,7 +68,7 @@ public abstract class SetupGlifLayoutActivity extends SetupLayoutActivity { layout.setHeaderText(headerResourceId); } - TextView header = findViewById(R.id.suc_layout_title); + TextView header = findViewById(com.google.android.setupdesign.R.id.suc_layout_title); if (header != null) { mInitialHeaderMaxLines = header.getMaxLines(); header.addTextChangedListener(new TextWatcher() { diff --git a/src/com/android/managedprovisioning/common/ThemeHelper.java b/src/com/android/managedprovisioning/common/ThemeHelper.java index d6ed34c20..f26da7f9e 100644 --- a/src/com/android/managedprovisioning/common/ThemeHelper.java +++ b/src/com/android/managedprovisioning/common/ThemeHelper.java @@ -35,11 +35,10 @@ import androidx.appcompat.app.AppCompatDelegate; import androidx.webkit.WebSettingsCompat; import androidx.webkit.WebViewFeature; -import com.android.managedprovisioning.R; - import com.airbnb.lottie.LottieAnimationView; import com.airbnb.lottie.LottieComposition; import com.google.android.setupcompat.util.WizardManagerHelper; +import com.google.android.setupdesign.R; import com.google.android.setupdesign.util.ThemeResolver; /** diff --git a/src/com/android/managedprovisioning/common/Utils.java b/src/com/android/managedprovisioning/common/Utils.java index 44fc5f986..f690f1330 100644 --- a/src/com/android/managedprovisioning/common/Utils.java +++ b/src/com/android/managedprovisioning/common/Utils.java @@ -842,7 +842,7 @@ public class Utils { .setText(label) .setListener(listener) .setButtonType(buttonType) - .setTheme(R.style.SudGlifButton_Primary) + .setTheme(com.google.android.setupdesign.R.style.SudGlifButton_Primary) .build(); mixin.setPrimaryButton(primaryButton); return primaryButton; @@ -865,7 +865,7 @@ public class Utils { .setText(buttonLabel) .setListener(listener) .setButtonType(buttonType) - .setTheme(R.style.SudGlifButton_Secondary) + .setTheme(com.google.android.setupdesign.R.style.SudGlifButton_Secondary) .build(); mixin.setSecondaryButton(secondaryButton); return secondaryButton; diff --git a/src/com/android/managedprovisioning/preprovisioning/consent/ConsentUiHelperImpl.java b/src/com/android/managedprovisioning/preprovisioning/consent/ConsentUiHelperImpl.java index 7e8b03fc7..0f78e589b 100644 --- a/src/com/android/managedprovisioning/preprovisioning/consent/ConsentUiHelperImpl.java +++ b/src/com/android/managedprovisioning/preprovisioning/consent/ConsentUiHelperImpl.java @@ -125,7 +125,8 @@ class ConsentUiHelperImpl implements ConsentUiHelper { private void setupViewTermsButton() { final GlifLayout layout = mActivity.findViewById(R.id.setup_wizard_layout); layout.setDescriptionText(R.string.view_terms); - TextView subtitle = layout.findViewById(R.id.sud_layout_subtitle); + TextView subtitle = layout.findViewById( + com.google.android.setupdesign.R.id.sud_layout_subtitle); subtitle.setTextColor(mUtils.getAccentColor(mActivity)); subtitle.setOnClickListener(v -> mBridgeCallbacks.onTermsButtonClicked()); mTouchTargetEnforcer.enforce(subtitle, (View) subtitle.getParent()); diff --git a/src/com/android/managedprovisioning/provisioning/AdminIntegratedFlowPrepareActivity.java b/src/com/android/managedprovisioning/provisioning/AdminIntegratedFlowPrepareActivity.java index d8ff91aa0..c53b4bd0a 100644 --- a/src/com/android/managedprovisioning/provisioning/AdminIntegratedFlowPrepareActivity.java +++ b/src/com/android/managedprovisioning/provisioning/AdminIntegratedFlowPrepareActivity.java @@ -108,7 +108,9 @@ public class AdminIntegratedFlowPrepareActivity extends AbstractProvisioningActi public void preFinalizationCompleted() { ProvisionLogger.logi("AdminIntegratedFlowPrepareActivity pre-finalization completed"); setResult(Activity.RESULT_OK); - this.overridePendingTransition(R.anim.sud_slide_next_in, R.anim.sud_slide_next_out); + this.overridePendingTransition( + com.google.android.setupdesign.R.anim.sud_slide_next_in, + com.google.android.setupdesign.R.anim.sud_slide_next_out); this.finish(); } diff --git a/src/com/android/managedprovisioning/provisioning/FinancedDeviceLandingActivity.java b/src/com/android/managedprovisioning/provisioning/FinancedDeviceLandingActivity.java index 40623b946..97b7357f6 100644 --- a/src/com/android/managedprovisioning/provisioning/FinancedDeviceLandingActivity.java +++ b/src/com/android/managedprovisioning/provisioning/FinancedDeviceLandingActivity.java @@ -112,7 +112,7 @@ public final class FinancedDeviceLandingActivity extends SetupGlifLayoutActivity .setText(R.string.next) .setListener(view -> onNextButtonClicked()) .setButtonType(FooterButton.ButtonType.NEXT) - .setTheme(R.style.SudGlifButton_Primary) + .setTheme(com.google.android.setupdesign.R.style.SudGlifButton_Primary) .build()); } diff --git a/src/com/android/managedprovisioning/provisioning/LandingActivityBridgeImpl.java b/src/com/android/managedprovisioning/provisioning/LandingActivityBridgeImpl.java index 81c924612..2d0d3e95a 100644 --- a/src/com/android/managedprovisioning/provisioning/LandingActivityBridgeImpl.java +++ b/src/com/android/managedprovisioning/provisioning/LandingActivityBridgeImpl.java @@ -68,7 +68,8 @@ abstract class LandingActivityBridgeImpl implements LandingActivityBridge { private void setupSubtitleText(Activity activity, ProvisioningParams params, CustomizationParams customizationParams) { - TextView info = activity.findViewById(R.id.sud_layout_subtitle); + TextView info = activity.findViewById( + com.google.android.setupdesign.R.id.sud_layout_subtitle); info.setVisibility(View.VISIBLE); if (shouldShowAccountManagementDisclaimer( params.initiatorRequestedProvisioningModes, getUtils())) { diff --git a/src/com/android/managedprovisioning/provisioning/ProvisioningActivityBridgeImpl.java b/src/com/android/managedprovisioning/provisioning/ProvisioningActivityBridgeImpl.java index d1895df47..a695149e8 100644 --- a/src/com/android/managedprovisioning/provisioning/ProvisioningActivityBridgeImpl.java +++ b/src/com/android/managedprovisioning/provisioning/ProvisioningActivityBridgeImpl.java @@ -92,7 +92,8 @@ abstract class ProvisioningActivityBridgeImpl implements ProvisioningActivityBri getProgressLabelResId()); if (getUtils().isFinancedDeviceAction(getParams().provisioningAction)) { // make the icon invisible - layout.findViewById(R.id.sud_layout_icon).setVisibility(View.INVISIBLE); + layout.findViewById(com.google.android.setupdesign.R.id.sud_layout_icon) + .setVisibility(View.INVISIBLE); } Utils.addNextButton(layout, v -> getBridgeCallbacks().onNextButtonClicked()); @@ -101,7 +102,8 @@ abstract class ProvisioningActivityBridgeImpl implements ProvisioningActivityBri if (getUtils().isDeviceOwnerAction(getParams().provisioningAction)) { Utils.addAbortAndResetButton(layout, v -> getBridgeCallbacks().onAbortButtonClicked()); } - ViewGroup root = activity.findViewById(R.id.sud_layout_template_content); + ViewGroup root = activity.findViewById( + com.google.android.setupdesign.R.id.sud_layout_template_content); mButtonFooterContainer = getButtonFooterContainer(root); mButtonFooterContainer.setAccessibilityLiveRegion(ACCESSIBILITY_LIVE_REGION_POLITE); @@ -174,8 +176,9 @@ abstract class ProvisioningActivityBridgeImpl implements ProvisioningActivityBri private void setupTransitionAnimationHelper( GlifLayout layout, TransitionAnimationCallback callback) { - TextView header = layout.findViewById(R.id.suc_layout_title); - TextView description = layout.findViewById(R.id.sud_layout_subtitle); + TextView header = layout.findViewById(com.google.android.setupdesign.R.id.suc_layout_title); + TextView description = + layout.findViewById(com.google.android.setupdesign.R.id.sud_layout_subtitle); ViewGroup item1 = layout.findViewById(R.id.item1); ViewGroup item2 = layout.findViewById(R.id.item2); LottieAnimationView drawable = layout.findViewById(R.id.animation); @@ -208,7 +211,8 @@ abstract class ProvisioningActivityBridgeImpl implements ProvisioningActivityBri @StringRes int progressLabelResId) { addProvisioningProgressLabel(activity); if (shouldSkipEducationScreens) { - TextView header = layout.findViewById(R.id.suc_layout_title); + TextView header = + layout.findViewById(com.google.android.setupdesign.R.id.suc_layout_title); header.setText(progressLabelResId); getProvisioningProgressLabelContainer(activity).setVisibility(View.GONE); } else { @@ -217,12 +221,14 @@ abstract class ProvisioningActivityBridgeImpl implements ProvisioningActivityBri } private void addProvisioningProgressLabel(Activity activity) { - ViewGroup parent = activity.findViewById(R.id.sud_layout_template_content); + ViewGroup parent = activity.findViewById( + com.google.android.setupdesign.R.id.sud_layout_template_content); activity.getLayoutInflater().inflate(R.layout.label_provisioning_progress, parent, true); } private ViewGroup getProvisioningProgressLabelContainer(Activity activity) { - ViewGroup parent = activity.findViewById(R.id.sud_layout_template_content); + ViewGroup parent = activity.findViewById( + com.google.android.setupdesign.R.id.sud_layout_template_content); return parent.findViewById(R.id.provisioning_progress_container); } @@ -243,7 +249,8 @@ abstract class ProvisioningActivityBridgeImpl implements ProvisioningActivityBri } private TextView getRelevantProgressLabel(Activity activity) { - ViewGroup parent = (ViewGroup) activity.findViewById(R.id.suc_layout_footer).getParent(); + ViewGroup parent = (ViewGroup) activity.findViewById( + com.google.android.setupdesign.R.id.suc_layout_footer).getParent(); TextView provisioningProgressLabel = parent.findViewById(R.id.provisioning_progress); if (provisioningProgressLabel != null) { return provisioningProgressLabel; diff --git a/tests/instrumentation/Android.bp b/tests/instrumentation/Android.bp index e4115004d..0dd5a28d0 100644 --- a/tests/instrumentation/Android.bp +++ b/tests/instrumentation/Android.bp @@ -5,35 +5,10 @@ package { android_test { name: "ManagedProvisioningTests", - libs: [ - "android.test.runner", - "android.test.base", - "android.test.mock", - ], - - srcs: [ - "src/**/*.java", - "src/**/*.kt", - ], - platform_apis: true, certificate: "platform", - static_libs: [ - "androidx.test.rules", - "mockito-target-minus-junit4", - "androidx.test.espresso.core", - "androidx.test.espresso.contrib", - "androidx.test.espresso.intents", - "truth", - "testng", // used only for assertThrows - "androidx.test.uiautomator_uiautomator", // used for unlocking the device - "TestApp", - "ctstestrunner-axt", - "Harrier", - "flag-junit", - "platform-test-annotations", - ], + static_libs: ["ManagedProvisioningTestsLib"], instrumentation_for: "ManagedProvisioning", test_suites: ["device-tests"], @@ -59,11 +34,13 @@ android_library { "androidx.test.espresso.contrib", "androidx.test.espresso.intents", "truth", - "testng", - "androidx.test.uiautomator_uiautomator", + "testng", // used only for assertThrows + "androidx.test.uiautomator_uiautomator", // used for unlocking the device "TestApp", "ctstestrunner-axt", "Harrier", + "flag-junit", + "platform-test-annotations", "ManagedProvisioningLib", ], } diff --git a/tests/instrumentation/src/com/android/managedprovisioning/common/ThemeHelperTest.java b/tests/instrumentation/src/com/android/managedprovisioning/common/ThemeHelperTest.java index 6fefcd5d6..399558bcb 100644 --- a/tests/instrumentation/src/com/android/managedprovisioning/common/ThemeHelperTest.java +++ b/tests/instrumentation/src/com/android/managedprovisioning/common/ThemeHelperTest.java @@ -29,9 +29,8 @@ import android.content.Intent; import androidx.test.InstrumentationRegistry; import androidx.test.filters.SmallTest; -import com.android.managedprovisioning.R; - import com.google.android.setupcompat.util.WizardManagerHelper; +import com.google.android.setupdesign.R; import org.junit.After; import org.junit.Before; diff --git a/tests/instrumentation/src/com/android/managedprovisioning/preprovisioning/EncryptDeviceActivityTest.java b/tests/instrumentation/src/com/android/managedprovisioning/preprovisioning/EncryptDeviceActivityTest.java index d4b71a132..6b6f9e854 100644 --- a/tests/instrumentation/src/com/android/managedprovisioning/preprovisioning/EncryptDeviceActivityTest.java +++ b/tests/instrumentation/src/com/android/managedprovisioning/preprovisioning/EncryptDeviceActivityTest.java @@ -125,7 +125,7 @@ public class EncryptDeviceActivityTest { Activity activity = mActivityRule.launchActivity(PROFILE_OWNER_INTENT); // THEN the profile owner description should be present - onView(withId(R.id.sud_layout_subtitle)) + onView(withId(com.google.android.setupdesign.R.id.sud_layout_subtitle)) .check(matches(withText(R.string.encrypt_device_text_for_profile_owner_setup))); // WHEN pressing the encrypt button @@ -146,7 +146,7 @@ public class EncryptDeviceActivityTest { Activity activity = mActivityRule.launchActivity(DEVICE_OWNER_INTENT); // THEN the profile owner description should be present - onView(withId(R.id.sud_layout_subtitle)) + onView(withId(com.google.android.setupdesign.R.id.sud_layout_subtitle)) .check(matches(withText(R.string.encrypt_device_text_for_device_owner_setup))); // WHEN pressing the encrypt button diff --git a/tests/instrumentation/src/com/android/managedprovisioning/provisioning/ProvisioningActivityTest.java b/tests/instrumentation/src/com/android/managedprovisioning/provisioning/ProvisioningActivityTest.java index 55ba450ad..6cb9ff5da 100644 --- a/tests/instrumentation/src/com/android/managedprovisioning/provisioning/ProvisioningActivityTest.java +++ b/tests/instrumentation/src/com/android/managedprovisioning/provisioning/ProvisioningActivityTest.java @@ -440,7 +440,7 @@ public class ProvisioningActivityTest { onView(withId(R.id.animation)).check(matches(isDisplayed())); waitForFullyManagedDeviceHeader(); - onView(withId(R.id.sud_layout_subtitle)).check(matches( + onView(withId(com.google.android.setupdesign.R.id.sud_layout_subtitle)).check(matches( withText(R.string.fully_managed_device_provisioning_step_2_subheader))); onView(withId(R.id.item1)).check(matches(not(isDisplayed()))); onView(withId(R.id.item2)).check(matches(not(isDisplayed()))); @@ -534,10 +534,12 @@ public class ProvisioningActivityTest { launchActivityAndWait(FINANCED_DEVICE_INTENT); // THEN the header will be set - onView(withId(R.id.suc_layout_title)).check(matches(withText(R.string.just_a_sec))); + onView(withId(com.google.android.setupdesign.R.id.suc_layout_title)) + .check(matches(withText(R.string.just_a_sec))); // THEN the icon will be invisible - onView(withId(R.id.sud_layout_icon)).check(matches(not(isDisplayed()))); + onView(withId(com.google.android.setupdesign.R.id.sud_layout_icon)) + .check(matches(not(isDisplayed()))); // THEN the animation is shown. onView(withId(R.id.animation)).check(matches(isDisplayed())); @@ -552,8 +554,9 @@ public class ProvisioningActivityTest { int numAttempts = 0; while (numAttempts < 40) { try { - onView(withId(R.id.sud_layout_subtitle)).check(matches( - withText(R.string.fully_managed_device_provisioning_step_2_subheader))); + onView(withId(com.google.android.setupdesign.R.id.sud_layout_subtitle)) + .check(matches(withText( + R.string.fully_managed_device_provisioning_step_2_subheader))); break; } catch (AssertionFailedError e) { numAttempts++; |