Compare the results of building Fenix from mozilla-central root folder and mobile/android/fenix folder using Diffoscope
Categories
(Fenix :: Tooling, task, P3)
Tracking
(Not tracked)
People
(Reporter: titouan, Unassigned)
References
(Blocks 1 open bug)
Details
Attachments
(1 file)
4.54 MB,
text/plain
|
Details |
We already know the size of the apks generated differs depending on how they are built:
- running
./mach gradle fenix:assembleDebug
from the root mozilla-central folder - running
./gradlew :app:assembleFenixDebug
frommobile/android/fenix
Some investigation is needed to understand the differences, and fix them if necessary.
Reporter | ||
Comment 1•11 months ago
|
||
I found out that running tests on Android Studio from the root folder might fail, while the same test run from the android-components folder succeed.
This can also be replicated on a terminal with the following commands:
Running from the root folder, will fail:
mobile/android/android-components/gradlew :feature-sitepermissions:testDebugUnitTest --tests mozilla.components.feature.sitepermissions.SitePermissionsFeatureTest
Running from mobile/android/android-components
, will succeed:
./gradlew :feature-sitepermissions:testDebugUnitTest --tests mozilla.components.feature.sitepermissions.SitePermissionsFeatureTest
Reporter | ||
Comment 2•11 months ago
|
||
local.properties
is taken into account when building from the project's folder.
It is ignored when building from the root folder opened on Android Studio, meaning autosignReleaseWithDebugKey
for release builds doesn't work, e.g. withGeckoBinariesFocusNightly
.
Comment 3•11 months ago
|
||
Is this an investigation ticket or is there something you will file to solve comment 2? We've marked bug 1891159 as blocker for now.
Reporter | ||
Comment 4•11 months ago
|
||
For now I'm using this bug mainly as an investigation ticket, and collecting the difference I'm aware of.
But I think it still makes sense to keep bug 1891159 as a blocker.
Reporter | ||
Comment 5•19 days ago
|
||
Reporter | ||
Comment 6•19 days ago
|
||
I used APK-Compare-Tool to compare two Fenix APKs:
- One built from the root folder
- One built from mobile/android/fenix
I attached the resulting log. The differences are in the smali files, where app_fenixDebug is replaced by fenix_fenixDebug in the other APK.
Smali files are the human-readable representation of Dalvik bytecode, which is what Android apps run on. These differences in smali file paths are related to build configuration and naming conventions rather than functional code changes. They do not affect the app’s behavior, as they only reflect the module structure and do not change the compiled logic or runtime execution.
Description
•