In my app, I have to use Intent.setClassName or setComponent to start an activity in another package. There is no problem when I use Intent.setClass like
Intent intent = new Intent(getApplicationContext(), org.iustb.knowledebase.animation.transparent.MainTransparentActivity.class);
The suggestions to solve this problem on the web is that adding or android:exported=”true” to the target activity in the AndroidManifest, but it doesn’t work.
Is there anybody can help me?
i wrote the below code:
Intent intent = new Intent();
intent.setClassName(cursor.getString(pIndex), cursor.getString(cIndex));
startActivity(intent);
manifest file settings of the target activity:
<activity android:name="org.iustb.knowledebase.animation.transparent.MainTransparentActivity"
android:exported="true"></activity>
Did you make sure the values that the
cursorreturns the are correct ones?The first parameter of the
setClassName()should be the application package name, not the package where the Activity beings started is.Assume the application package is:
com.testandroid, but you want to start the other activity from thecom.testandroid.otherpackage, then your code should look like this: