You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Android: Standardize the use of application id and namespace (#5210)
This PR standardises the use of application id and namespace. It is also
one of the pre-requisites of making hilt instrumented tests to work.
The application id is a unique id for every android app , so the android
manifest package depends on it.
The android manifest package is also used whenever there's a relative
path for Applications and activities so
```xml
<manifest package="com.foo">
<application android:name=".TodoApplication"/>
</manifest>
```
Becomes
```xml
<manifest package="com.foo">
<application android:name="com.foo.TodoApplication"/>
</manifest>
```
During manifest merging. Because this happens when the manifest is
loaded (before everything is merged) we start with the manifest package
being the android namespace. We then pass the package property to the
merger to be the application id (the package for each up is unique).
This is what appears to be happening in AGP as well. (It is also the
reason why I was confused when reverse engineering the AGP behaviour and
was alternating between namespace and application id)
I've also cleaned up some of the xml manual modifications that are not
needed anymore as are handled by the merger tool
0 commit comments