设置Action时无法启动Intent

时间:2018-04-26 20:41:39

标签: android gradle android-productflavors

我正在构建应用的多个productFlavors。当我启动一个intent并只设置包时,应用程序启动正常。当我设置动作时它不再有效。

最终目标是能够在两个应用之间来回切换。我对Android比较陌生,所以我很感激任何帮助!我相信包名是正确的所以我不确定为什么行动不起作用。不确定哪个部分是我应该关注的。

我正在更改appId,这可能会改变packageName,以便android知道它们是独立的应用程序。

Intent intent = new Intent();
intent.setAction("fitpay.issuerDemo.authenticate_user"); //without this line it goes to the correct activity although i
intent.setPackage("fitpay.issuerDemo");
if (intent.resolveActivity(getPackageManager()) != null) {
    startActivityForResult(intent, A2A_VERIFICATION_REQUEST);
}
风味AndroidManifest:

<?xml version="1.0" encoding="utf-8"?>

<application>
    <activity
        android:name="fitpay.pagare.activities.SimulatedAppToAppActivity"
        android:exported="true"
        android:screenOrientation="portrait">
        <intent-filter>
            <action android:name="fitpay.issuerDemo.generate_auth_code" />
            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
        <intent-filter>
            <action android:name="fitpay.issuerDemo.authenticate_user" />
            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>


    <provider
        android:name="android.support.v4.content.FileProvider"
        android:authorities="fitpay.issuerDemo.fileprovider"
        android:exported="false"
        android:grantUriPermissions="true">
        <meta-data
            android:name="android.support.FILE_PROVIDER_PATHS"
            android:resource="@xml/image_path" />
    </provider>

</application>

App .gradle:

 productFlavors {
    wvUI {
        dimension "default"
    }
    nativeUI {
        dimension "default"
    }
    issuerDemo {
        applicationId "fitpay.issuerDemo"
        dimension "default"
    }
}

sourceSets {
    wvUI {
        java {
            srcDirs('src/wvUI/java', 'src/qa/java')
        }
    }
    nativeUI {
        java {
            srcDirs('src/nativeUI/java', 'src/qa/java')
        }
    }
    issuerDemo {
        java {
            srcDirs('src/issuerDemo/java', 'src/qa/java')
        }
    }
}

的活动:

package fitpay.pagare.activities;

public class SimulatedAppToAppActivity extends BaseActivity {
}

0 个答案:

没有答案