Bitrise build success - Android Apk not installed

xamarin
android
#1

I have a workflow that builds a Xamarin project both on iOS and Android and then deploys them to HockeyApp. This workflow completes successfully. The iOS application works as expected. The Android application when downloaded from HockeyApp will not install. “App not installed.” error. I can’t seam to see why. When archiving manually from VS the apk will install perfectly.

Any assistance here would be greatly appreciated.

I’m wondering if Supported architectures setting could have anything to do with this. I have it currently set at armeabi-v7a;arm64-v8a
I suspect this may be it because I recently had to change this in order to get it to build, however I can’t confirm the problem started happening directly after this change (I think there were a few successful builds with working APKs with this setting)

UPDATE
After checking off my current supported architectures and selecting x86_64 and attempt to archive manually the archive is successful, but when attempting to install apk on my phone I get “App not installed”. This leads me to believe, despite my project settings, bitrise is using x86_64 (or some other architecture) when archiving my android project. Not sure how to stop bitrise from overwriting this setting.

0 Likes

#2

Hello @joshua.tanton

Can you set the architecture type from terminal somehow? and not from the editor? :thinking:

0 Likes

#3

So I’ve found out a few things here. Firstly, after some help from bitrise support I learned how to run workflow with remote access. This helped me determine my original theory was incorrect. Bitrise was not changing the architecture. My code signing was using the Android Key Signing section. According to the this that is incorrect for xamarin projects.

So I followed the instructions on that link. I uploaded my keystore to the Generic file storage. And created a file downloader step before the archiving step. I see this works by running the workflow with remote access and seeing the file is indeed downloading in the intended directory.

However I am still getting the same issue. I reread the link above and noticed the beginning of the instructions; you need to set the values in Android Package Signing. So I did this. But it still is not working. I suspect because when it comes to Keystore and you select browse in VS selecting the keystore will give you absolute path. While bitrise will obviously need this set to a relative path if it’s going to work. So I just entered in what I thought would be the appropriate relative path. But it’s still not working.

Anyone have experience with this part? (getting xamarin android apps to sign using generic file storage, file downloader, and android package signing properties?)

0 Likes