3

I have an APK that has assemblies in a single blob file. I could extract them successfully using decompress-assemblies.

Is there anyway I can compress them again into assemblies.blob file or at least modify the APK to allow loading the the extracted DLL like older Xamarin APKs?

I seem to have found that the application checks for application_config.have_assembly_store value, if it's true, it only continues if there's an assembly blob. Any idea how to change this value inside the APK?

0

1 Answer 1

2

For unpacking and repacking Xamarin (and .Net MAUI as it is now called) assemblies.blob + assemblies.manifest files you can use the Python based tool Xamarin AssemblyStore Explorer (pyxamstore).

Unpacking

Make sure your current directory contains the files assemblies.blob and assemblies.manifest.

pyxamstore unpack

This will create the directory out which will contain the decoded dll files.

Repacking

Enter the directory where you have execute pyxamstore unpack and execute

pyxamstore pack

This will generate the two files assemblies.blob.new and assemblies.manifest.new. Just rename the two files to it's original names without .new and replace them in the APK file.

Finally don't forget to zipalign and resign (apksigner) your APK file.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.