2016-07-25 1 views
2

Спасибо, что нажмете мой вопрос.Android: Как я могу запустить ярлык определенного приложения в своем приложении?

Я разрабатываю некоторые виды приложений на начальном уровне и задаюсь вопросом, можно ли запустить собственный ярлык (а не само приложение) в моем приложении.

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

Есть ли способ сделать то, что я сказал?

С уважением.

+1

Ваш вопрос не имеет смысла. Существует не так, как запуск ярлыка. Вы можете запустить приложение (в Android, которое будет запускать запуск программы). Но идея запуска ярлыка не имеет смысла ни на одной ОС. –

+0

Если вы хотите иметь определенную [ограниченную] функциональность другого приложения в своем приложении, то это, безусловно, не приложение для начинающих. Пожалуйста, уточните свой вопрос. – Shaishav

+1

спасибо, ребята. Я понял, что мой вопрос не имеет смысла, когда я проверял ваши ответы. Конечно, нет таких вещей, как запуск ярлыков, как вы сказали. То, что я хочу сделать, - это взять на себя ОС Windows. Я создаю ярлык, и я (мое приложение) может запустить сам ярлык (если я ввожу команду «c: ₩ users ₩ desktop ₩ aaa.lnk»), а не .exe-файл, даже если ярлык связан с этим исполнительным файлом , Мне интересно, есть ли способ «запустить ярлык в моем рабочем столе» программным способом, а не «.exe-файл в каталоге, в котором было установлено приложение», образно говоря, в Windows. – jhim

ответ

1

Может быть полезно, но как получить классы из манифеста, я хотел бы знать, http://www.tutorialforandroid.com/2009/10/launching-other-application-using-code.html

Допустим, вы хотите открыть fuelgauge, чтобы сделать это.

final Intent intent = new Intent(Intent.ACTION_MAIN, null); 
intent.addCategory(Intent.CATEGORY_LAUNCHER); 
final ComponentName cn = new ComponentName("com.android.settings","com.android.settings.fuelgauge.PowerUsageSummary"); 
intent.setComponent(cn); 
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
startActivity(intent); 

Объяснение Чтобы открыть приложение других людей, вы должны убедиться, что в файле манифеста, автор указать класс, чтобы иметь android.intent.action.MAIN намерения фильтр добавил к ним.

final Intent intent = new Intent(Intent.ACTION_MAIN, null); 

Затем добавить категорию, что эта новая цель будет запускать что-то

intent.addCategory(Intent.CATEGORY_LAUNCHER); 

Тогда мы получим идентифицировать приложение, нам нужно открыть с помощью ComponentName, здесь можно указать имя пакета приложения, как первый аргумент и класс, который мы хотим открыть как второй. Вы должны понимать, что у com.android.settings есть много классов, у которых есть основной фильтр намерений, в результате чего второй аргумент будет конкретным классом, который нам нужен. (Это более одной строки)

final ComponentName cn = new ComponentName("com.android.settings", "com.android.settings.fuelgauge.PowerUsageSummary"); 

После того как мы идентифицировать компонент, который мы хотим, мы устанавливаем его в наше намерение

intent.setComponent(cn); 

Мы тогда сказать намерение, что открыть открытие это один сделать это как новая задача

intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 

Тогда, наконец, начать наше намерение

startActivity(intent); 
Смежные вопросы