Skip to content

Commit ebfe01a

Browse files
committed
Enforce resourcePrefix on Android library modules
``` :ui-test-hilt-manifest -> ui_test_hilt_manifest_ :core:analytics -> core_analytics_ :core:common -> core_common_ :core:data -> core_data_ :core:data-test -> core_data_test_ :core:database -> core_database_ :core:datastore -> core_datastore_ :core:datastore-test -> core_datastore_test_ :core:designsystem -> core_designsystem_ :core:domain -> core_domain_ :core:network -> core_network_ :core:notifications -> core_notifications_ :core:testing -> core_testing_ :core:ui -> core_ui_ :feature:bookmarks -> feature_bookmarks_ :feature:foryou -> feature_foryou_ :feature:interests -> feature_interests_ :feature:search -> feature_search_ :feature:settings -> feature_settings_ :feature:topic -> feature_topic_ :sync:sync-test -> sync_test_ :sync:work -> sync_work_ ```
1 parent 151f877 commit ebfe01a

File tree

39 files changed

+193
-190
lines changed

39 files changed

+193
-190
lines changed

app/src/androidTest/java/com/google/samples/apps/nowinandroid/ui/NavigationTest.kt

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ import javax.inject.Inject
5151
import kotlin.properties.ReadOnlyProperty
5252
import com.google.samples.apps.nowinandroid.feature.bookmarks.R as BookmarksR
5353
import com.google.samples.apps.nowinandroid.feature.foryou.R as FeatureForyouR
54-
import com.google.samples.apps.nowinandroid.feature.interests.R as FeatureInterestsR
54+
import com.google.samples.apps.nowinandroid.feature.search.R as FeatureSearchR
5555
import com.google.samples.apps.nowinandroid.feature.settings.R as SettingsR
5656

5757
/**
@@ -93,15 +93,15 @@ class NavigationTest {
9393
ReadOnlyProperty<Any?, String> { _, _ -> activity.getString(resId) }
9494

9595
// The strings used for matching in these tests
96-
private val navigateUp by composeTestRule.stringResource(FeatureForyouR.string.navigate_up)
97-
private val forYou by composeTestRule.stringResource(FeatureForyouR.string.for_you)
98-
private val interests by composeTestRule.stringResource(FeatureInterestsR.string.interests)
96+
private val navigateUp by composeTestRule.stringResource(FeatureForyouR.string.feature_foryou_navigate_up)
97+
private val forYou by composeTestRule.stringResource(FeatureForyouR.string.feature_foryou_title)
98+
private val interests by composeTestRule.stringResource(FeatureSearchR.string.feature_search_interests)
9999
private val sampleTopic = "Headlines"
100100
private val appName by composeTestRule.stringResource(R.string.app_name)
101-
private val saved by composeTestRule.stringResource(BookmarksR.string.saved)
102-
private val settings by composeTestRule.stringResource(SettingsR.string.top_app_bar_action_icon_description)
103-
private val brand by composeTestRule.stringResource(SettingsR.string.brand_android)
104-
private val ok by composeTestRule.stringResource(SettingsR.string.dismiss_dialog_button_text)
101+
private val saved by composeTestRule.stringResource(BookmarksR.string.feature_bookmarks_title)
102+
private val settings by composeTestRule.stringResource(SettingsR.string.feature_settings_top_app_bar_action_icon_description)
103+
private val brand by composeTestRule.stringResource(SettingsR.string.feature_settings_brand_android)
104+
private val ok by composeTestRule.stringResource(SettingsR.string.feature_settings_dismiss_dialog_button_text)
105105

106106
@Before
107107
fun setup() = hiltRule.inject()

app/src/main/java/com/google/samples/apps/nowinandroid/navigation/TopLevelDestination.kt

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ import com.google.samples.apps.nowinandroid.R
2121
import com.google.samples.apps.nowinandroid.core.designsystem.icon.NiaIcons
2222
import com.google.samples.apps.nowinandroid.feature.bookmarks.R as bookmarksR
2323
import com.google.samples.apps.nowinandroid.feature.foryou.R as forYouR
24-
import com.google.samples.apps.nowinandroid.feature.interests.R as interestsR
24+
import com.google.samples.apps.nowinandroid.feature.search.R as searchR
2525

2626
/**
2727
* Type for the top level destinations in the application. Each of these destinations
@@ -37,19 +37,19 @@ enum class TopLevelDestination(
3737
FOR_YOU(
3838
selectedIcon = NiaIcons.Upcoming,
3939
unselectedIcon = NiaIcons.UpcomingBorder,
40-
iconTextId = forYouR.string.for_you,
40+
iconTextId = forYouR.string.feature_foryou_title,
4141
titleTextId = R.string.app_name,
4242
),
4343
BOOKMARKS(
4444
selectedIcon = NiaIcons.Bookmarks,
4545
unselectedIcon = NiaIcons.BookmarksBorder,
46-
iconTextId = bookmarksR.string.saved,
47-
titleTextId = bookmarksR.string.saved,
46+
iconTextId = bookmarksR.string.feature_bookmarks_title,
47+
titleTextId = bookmarksR.string.feature_bookmarks_title,
4848
),
4949
INTERESTS(
5050
selectedIcon = NiaIcons.Grid3x3,
5151
unselectedIcon = NiaIcons.Grid3x3,
52-
iconTextId = interestsR.string.interests,
53-
titleTextId = interestsR.string.interests,
52+
iconTextId = searchR.string.feature_search_interests,
53+
titleTextId = searchR.string.feature_search_interests,
5454
),
5555
}

app/src/main/java/com/google/samples/apps/nowinandroid/ui/NiaApp.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -183,11 +183,11 @@ fun NiaApp(
183183
titleRes = destination.titleTextId,
184184
navigationIcon = NiaIcons.Search,
185185
navigationIconContentDescription = stringResource(
186-
id = settingsR.string.top_app_bar_navigation_icon_description,
186+
id = settingsR.string.feature_settings_top_app_bar_navigation_icon_description,
187187
),
188188
actionIcon = NiaIcons.Settings,
189189
actionIconContentDescription = stringResource(
190-
id = settingsR.string.top_app_bar_action_icon_description,
190+
id = settingsR.string.feature_settings_top_app_bar_action_icon_description,
191191
),
192192
colors = TopAppBarDefaults.centerAlignedTopAppBarColors(
193193
containerColor = Color.Transparent,

build-logic/convention/src/main/kotlin/AndroidLibraryConventionPlugin.kt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,9 @@ class AndroidLibraryConventionPlugin : Plugin<Project> {
4141
defaultConfig.targetSdk = 34
4242
configureFlavors(this)
4343
configureGradleManagedDevices(this)
44+
// The resource prefix is derived from the module name,
45+
// so resources inside ":core:module1" must be prefixed with "core_module1_"
46+
resourcePrefix = path.split("""\W""".toRegex()).drop(1).distinct().joinToString(separator = "_").lowercase() + "_"
4447
}
4548
extensions.configure<LibraryAndroidComponentsExtension> {
4649
configurePrintApksTask(this)

core/common/src/main/res/drawable-anydpi-v24/ic_nia_notification.xml renamed to core/common/src/main/res/drawable-anydpi-v24/core_common_ic_nia_notification.xml

File renamed without changes.

core/common/src/main/res/drawable-hdpi/ic_nia_notification.png renamed to core/common/src/main/res/drawable-hdpi/core_common_ic_nia_notification.png

File renamed without changes.

core/common/src/main/res/drawable-mdpi/ic_nia_notification.png renamed to core/common/src/main/res/drawable-mdpi/core_common_ic_nia_notification.png

File renamed without changes.

core/common/src/main/res/drawable-xhdpi/ic_nia_notification.png renamed to core/common/src/main/res/drawable-xhdpi/core_common_ic_nia_notification.png

File renamed without changes.

core/common/src/main/res/drawable-xxhdpi/ic_nia_notification.png renamed to core/common/src/main/res/drawable-xxhdpi/core_common_ic_nia_notification.png

File renamed without changes.

core/designsystem/src/main/java/com/google/samples/apps/nowinandroid/core/designsystem/component/DynamicAsyncImage.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ fun DynamicAsyncImage(
4949
imageUrl: String,
5050
contentDescription: String?,
5151
modifier: Modifier = Modifier,
52-
placeholder: Painter = painterResource(R.drawable.ic_placeholder_default),
52+
placeholder: Painter = painterResource(R.drawable.core_designsystem_ic_placeholder_default),
5353
) {
5454
val iconTint = LocalTintTheme.current.iconTint
5555
var isLoading by remember { mutableStateOf(true) }

0 commit comments

Comments
 (0)