Я использую «ActivityNotFoundException: Невозможно найти явный класс активности ...» при использовании эмулятора Eclipse для вызова активности другого приложения из приложения. Возможно, проблема может быть связана с тем, что я не могу загрузить/найти оба приложения одновременно, когда я нажимаю «Управление приложениями» в «Настройках». Это первый проект, который мне нужно назвать деятельностью другого приложения. Но я не уверен, что код правильный. Пожалуйста, помогите мне определить, есть ли ошибки в приведенных ниже фрагментах кода. Подчеркивается, что я могу установить поле действия намерения для достижения цели, но не нашел для этого учебного материала. Я узнал об использовании метода setComponent в вызывающем приложении и добавил android: экспортирует AndroidManifest.xml вызываемой активности. Заранее спасибо!ActivityNotFoundException при вызове активности другого приложения
Calling приложения в соответствующие исходный код: отношение AndroidManifest.xml
Intent intent = new Intent();
intent.setComponent(new ComponentName("com.MyPackage", om.MyPackage.Activity1));
startActivity(intent);
Calling приложения в:
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".MainActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".Activity1">
<intent-filter>
<action android:name="com.MyPackage.Activity1" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
</application>
Соответствующий код AndroidManifest.xml деятельности другого приложения
<activity android:name=".Activity1" android:exported = "true">
<intent-filter>
<action android:name="com.MyPackage.Activity1" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
Я по-прежнему получаю ActivityNotFoundException или ClassNotFoundException после внесения рекомендуемых изменений. Возможно, это связано с тем, что не удается правильно установить приложения на эмуляторе. В моих последних усилиях сначала я установил вызываемое приложение (которое содержит класс Activity1) с помощью команды adb. Затем я запускаю вызывающее приложение из Eclipse. Это генерирует ClassNotFoundException относительно Activity1, что, вероятно, вызвано тем, что вызываемое приложение больше не находится в эмуляторе по какой-то странной причине.Почему он больше не установлен? Как его решить, если это часть моей проблемы? Благодаря! – macrogeo
Вы пытаетесь вызвать Activity в другом приложении? Я указывал на начало второй активности в том же приложении. См. Мой отредактированный ответ –
Он работает! Спасибо, Марек! – macrogeo