Why does QueryIntentActivities return an empty list? How do I allow intent to perform an activity?

kenneth.leekenneth.lee USMember ✭✭✭

Hi Everyone,

I'm trying to write a dependency service for BrainTree Drop-in UI with
https://github.com/NAXAM/braintreedropin-android-binding for the android side.

This nuget package i assume is just a C# version of its java counterpart from https://github.com/braintree/braintree_android

So to the problem, when attempting to display one of the activities I hit an exception that says

Com.Braintreepayments.Api.Exceptions.BraintreeException: BraintreeBrowserSwitchActivity missing, incorrectly configured in AndroidManifest.xml or another app defines the same browser switch url as this app. See https://developers.braintreepayments.com/guides/client-sdk/android/v2#browser-switch for the correct configuration

which is ultimately triggered by

context.getPackageManager().queryIntentActivities(intent, 0); returning an empty list

if it returns empty, that means that my intent doesn't have any available activities it can run. I have added the activity in my androidmanifest.xml to allow it to run but it doesn't seem to have worked.

    <activity android:name="com.braintreepayments.api.BraintreeBrowserSwitchActivity" android:launchMode="singleTask">
      <intent-filter>
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.DEFAULT" />
        <category android:name="android.intent.category.BROWSABLE" />
        <data android:scheme="com.company.application.android.braintree" />
      </intent-filter>
    </activity>

I'm not sure how else to debug what I have done wrong. Any suggestions would be greatly appreciated.

Sign In or Register to comment.