2012-02-16 3 views
3

Можно ли создать две точки входа в приложение в Android, я имею в виду может я могу переключить основную деятельность programiticallyКак изменить основной вид деятельности в Android programitically

+0

Это отличается от того, точки входа, что просто решает сделать одно из двух возможных вещей? – Thilo

ответ

1

проверить это один ниже

Intent intent = new Intent(Intent.ACTION_MAIN); 
intent.addCategory(Intent.CATEGORY_LAUNCHER); 
intent.setComponent(new ComponentName(packageName,mainActivity)); 
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
ctx.startActivity(intent); 
0

Если говорить о запускать другие приложения с вашего приложений, то это может быть код:

Intent intent = new Intent(Intent.ACTION_MAIN); 
intent.addCategory(Intent.CATEGORY_LAUNCHER); 
intent.setComponent(new ComponentName(packageName,mainActivity)); 
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
ctx.startActivity(intent); 
1

Я думаю, вы говорите о запуске решения деятельности на основе некоторых событий, то вам необходимо добавить широковещательный приемник, как, нажав на значок приложения на пусковой, если вы хотите Запустите Activity1. затем добавьте фильтры намерений в это действие Action_MAIN и ACTION_LAUNCHER, если вы хотите запустить Activity2 при загрузке телефона, а затем добавить фильтр для этого действия, BOOT_COMPLETED.

3

Любая экспортированная деятельность является потенциальной точкой входа в ваше приложение; иностранное приложение может начать любой из них с намерением. (Фильтр намерений поставляется с неявным android: export.) Однако вы можете иметь только одну точку входа, которую будет соблюдать пусковая установка. Для имитации второго запуска точки, либо

  1. Обеспечить совершенно отдельное приложение с целью запуска одной из экспортированных деятельности или

  2. Дайте вашу «запуск» деятельность исключительно с целью немедленного старта то или иное действие, основанное на некоторой логике (сохраненное предпочтение, расчет фазы-луны, что угодно).

+0

+1. Я бы выбрал вариант 2 в любое время. – josephus