question

Duane Craw avatar image
Duane Craw asked jatin-patel commented

Uploading APK to app store breaks app written using Xamarin mobile development tools.

We are using Xamarin to build a Clover app. Xamarin is a cross-platform development tool that allows us to write code in C# and compile it to an APK that can run on Android. We have been successful building an app that calls and interacts with the Clover SDK on the device.

If we side-load the APK generated from Xamarin to a Clover Station, it runs perfectly. We uploaded the application to the sandbox app market, and when it downloads to the Clover station, it doesn't run.

After further investigation it appears that Xamarin puts the C# binaries in a folder called Assemblies in the apk, and expects them to be uncompressed (Stored). When the APK comes down from the app market there are two changes to it. The Clover certificate files (CLOVER.RSA and CLOVER.SF) have been added, and the files in the assemblies directory have been compressed using the Deflate compression algorithm. This causes the app to crash.

Is there anything that can be done to prevent the app market submission from making these changes to the APK?

App MarketSandbox
3 comments
10 |2000

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Found a workaround to this issue. There is an option in Xamarin build process that allows you bundle the assembles folder dlls into the primary application. Since the Assemblies folder isn't built the problem goes away.

0 Likes 0 ·

Hi, could you share what settings you changed to get the build to work? We are having the same problem. Thank you.

0 Likes 0 ·

Project Properties -> Android Options -> Check the "Bundle assemblies into native code" checkbox

0 Likes 0 ·

0 Answers

Welcome to the
Clover Developer Community