2010-10-17 16 views
10

Moja aplikacja współpracuje ze zdjęciami. Może wykonać wiele zdjęć jako dane wejściowe, przetworzyć je i wysłać ponownie do innej aplikacji.Jak wykluczyć moją własną aktywność z Activity.startActivity (Intent) Chooser?

W konsekwencji, moim głównym Activity ogłosił zamiarem filtr na ACTION_SEND_MULTIPLE dla image/* typów MIME i może doprowadzić do wydania nowego Intent z tego samego działania i rodzaju danych z wykorzystaniem Activity.startActivity(Intent).

Czy istnieje sposób wykluczenia mojej aktywności z listy aplikacji wyświetlanej użytkownikowi po rozmowie startActivity()?

+0

Czy możesz dodać dodatkowe w swoich zamiarach, które możesz sprawdzić? – Falmarri

+0

Myślałem o czymś takim, ale wszystko, co mogę sobie wyobrazić, jest testem sprawdzającym, czy moja aktywność została ponownie uruchomiona sama. Wolałbym uniemożliwić użytkownikowi zobaczenie tego wyboru na liście. Chociaż, myślę, że zastosuję takie obejście jak szybką naprawę, a następnie zbadam odpowiedź CommonsWare, aby wdrożyć mój własny wybór. –

+0

Możesz migrować moje rozwiązanie dla intencji URL (http://stackoverflow.com/a/37988201/1185087) używa aliasu aktywności, aby włączyć i wyłączyć otrzymywanie intencji ... – user1185087

Odpowiedz

7

Nie bezpośrednio, AFAIK. Można jednak utworzyć własny wybieracz za pomocą PackageManager i queryIntentActivityOptions(), co pozwala na filtrowanie siebie (lub innych rzeczy).

+0

Dzięki, zacząłem odkrywać to rozwiązanie i Powinienem móc osiągnąć to, czego chcę. Byłaby to jednak standardowa funkcja do apia Androida. –

+0

@Kevin Gaudin: Zgadzam się, chociaż jest to drobna sprawa, więc nie jestem zszokowany, że jej nie oferują. – CommonsWare

+0

Czy ktoś, kto to zrobił, podał fragment kodu, aby inni mogli zobaczyć, w jaki sposób został on zaimplementowany? – lf215

Powiązane problemy