как назвать активность другого приложения android?

1

Чтобы вызвать основное действие, я увидел класс componentName в android.

intent = new Intent(new ComponentName(packageNam,classname);

если он используется в случае дочерней активности, я получил ошибку, "is activity delcared in andorid manifest?" как ошибка.

как вызвать дочернюю активность app1 в app2 с помощью намерения? В приложении 1 активность объявляется следующим образом в манифесте

<activity android:name=".activity.MessageCompose" android:label="@string/app_name" android:enabled="false">
- <intent-filter>
  <action android:name="android.intent.action.VIEW" /> 
  <action android:name="android.intent.action.SENDTO" /> 
  <data android:scheme="mailto" /> 
  <category android:name="android.intent.category.DEFAULT" /> 
  <category android:name="android.intent.category.BROWSABLE" /> 
  </intent-filter>
- <intent-filter android:label="@string/app_name">
  <action android:name="android.intent.action.SEND" /> 
  <data android:mimeType="*/*" /> 
  <category android:name="android.intent.category.DEFAULT" /> 
  </intent-filter>
- <intent-filter android:label="@string/app_name">
  <action android:name="android.intent.action.SEND_MULTIPLE" /> 
  <data android:mimeType="*/*" /> 
  <category android:name="android.intent.category.DEFAULT" /> 
  </intent-filter>
  </activity>
Теги:

2 ответа

1
Лучший ответ

Прочитайте, как намерения работают в Android. Поскольку компонент, который вы запускаете, находится в другом приложении, вы не можете напрямую обращаться к компоненту. Короче говоря, вам нужно каким-то образом определить дочернюю активность app1 с помощью фильтра намерений, а затем вызвать это из app2, используя что-то вроде этого:

Intent intent = new Intent(Intent.ACTION_VIEW, uri);
startActivity(intent);
  • 0
    как я могу узнать URI активности ребенка
  • 0
    ты решил эту проблему?
0

Просьба объявить, что активность в app1/AndroidManifest.xml

Ещё вопросы

Сообщество Overcoder
Наверх
Меню