Open Bug 1888358 Opened 11 months ago Updated 19 days ago

Compare the results of building Fenix from mozilla-central root folder and mobile/android/fenix folder using Diffoscope

Categories

(Fenix :: Tooling, task, P3)

All
Android
task

Tracking

(Not tracked)

People

(Reporter: titouan, Unassigned)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

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 from mobile/android/fenix

Some investigation is needed to understand the differences, and fix them if necessary.

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

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.

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.

Flags: needinfo?(tthibaud)

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.

Flags: needinfo?(tthibaud)
Attached file apk-comparison.log

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.

You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: