0

Я создаю приложение, которое автоматически сортирует установленные приложения и позволяет пользователю запускать эти приложения. Я просто столкнулся с небольшой проблемой с приложением камеры. Когда я просматриваю установленные приложения с помощью «queryIntentActivities 'for' ResolveInfo« Я получаю галерею ResolveInfo дважды, и оба объекта идентичны. Мне интересно, не хватает ли я чего-то очевидного или камера просто не запускается из имени пакета.Камера для Android: есть ли уникальное имя пакета?

Если камера и галерея совместно используют один и тот же пакет, я все еще смогу использовать диспетчер пакетов, чтобы вытаскивать значки и метки для каждого из них? Я хочу избегать использования своих собственных возможностей, поскольку разные OEM-производители делают разные значки.

Я знаю, что я могу просто запустить камеру с намерением захватить изображение, но я не забочусь о результатах, и я хочу запустить камеру как самостоятельную деятельность плюс использование этого намерения на самом деле не решает мою проблему ,

Update:

Так ResolveInfo «s Я получаю для камеры и галереи не совсем то же самое. Они одни и те же имя пакета, но я могу тянуть их соответствующие значки через ResolveInfo.loadLabel и ResolveInfo.loadIcon (а то, что я делал с ResolveInfo.ApplicationInfo.loadLabel ... которые возвращаются одинаковые этикетки и значки). Однако я все еще не могу найти способ запуска действий для камеры и галереи отдельно.

Update 2,0

Проблема решена. Я нашел уникальную строку активности в ResolveInfo.ActivityInfo.name. Теперь вместо того, чтобы запускать приложение с именем пакета, я просто запускаю его с активностью, указанной в этой переменной.

ответ

1

Нет, менеджер пакетов для камеры и галереи отличается.

для камеры - com.android.camera. для галереи - com.android.gallery.

Это способ, которым вы должны различать галерею и камеру.

+0

Я исследовал дальше, и кажется, что это было верно для старых телефонов. Начиная с ** android 4.1 ** камера и галерея ** были объединены ** в один и тот же пакет. Конечно, это для акций Android, и OEM-производители могут по-прежнему иметь собственную реализацию камеры. – https

+1

@https ok, но можете ли вы указать имя этого пакета? –