Android Build Issue: com.android.installreferrer

xamarin
#1

Description of the issue

When building a Xamarin Android app with code that’s dependent on com.android.installreferrer, the build fails with the following:

R8 : warning : Missing class: com.android.installreferrer.api.InstallReferrerStateListener
R8 : error : Compilation can't be completed because some library classes are missing.

Environment:

Where did the issue happen?

Visual Studio for Mac, Stable Channel

Which build Step causes the issue and which version of the step?

Xamarin Archive 1.5.2

Reproducibility

  • Does a “Rebuild” help? (You can trigger a rebuild from the Build’s page, by clicking the “Rebuild” button in the top right corner of a finished build) : NO
  • Does a rebuild without caches help? (You can remove the Cache:Pull and Cache:Push steps temporarily to not to use the cache, or you can delete all the caches on the Settings tab of the app. : NO
  • Does the issue happen sporadically, or every time? : Every time
  • Does upgrading the build Step to the latest version help? : NO
  • When did the issue start? : Saturday, March 28, 2020

Local reproduction

Can it be reproduced on your own Mac/PC by following our local debug guide? Please follow at least the first section (“Testing with a full clean git clone”) to make sure to test the state of the code what bitrise.io will get when it does a git clone in the clean environment! If possible please note which sections you tried.

Clean git, local build is successful.

Local reproduction: Linux / Android (docker based) stack builds

Can it be reproduced by running the build locally, after doing a new git clone of the repository into the /tmp directory and running the build from there with the Bitrise CLI ( https://www.bitrise.io/cli )? If no, can it be reproduced with Docker (using the same docker images / environment we use on bitrise.io)? Related guide: http://devcenter.bitrise.io/docker/run-your-build-locally-in-docker/ .

Build log

1 Like

#2

Also seeing this issue under the same conditions

0 Likes

#3

We have resolved this issue by explicitly including the installreferrer AAR in our project.

Download the AAR from Maven: https://mvnrepository.com/artifact/com.android.installreferrer/installreferrer

Copy the AAR file into your Droid project somewhere, e.g. a lib/ directory in the project root.

Then, in the Droid csproj:

<ItemGroup>
  <Folder Include="lib\" />
</ItemGroup>
<ItemGroup>
  <AndroidAarLibrary Include="lib\installreferrer-1.1.2.aar" />
</ItemGroup>
0 Likes

closed #4

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.

0 Likes