Android Intent Absender Package-Name

  • Antworten:11
  • Bentwortet
Aaron B.
  • Forum-Beiträge: 206

03.08.2013, 18:52:04 via App

Hallo

Ich starte eine Activity aus einer anderen App über startActivity().

Ich brauche den package-Name der Absender-App (dispatch). Man soll das ganze jedoch nicht selbst (z. B. als Extra) festlegen, sondern es soll am besten schon da sein.
Gibt es da eine Möglichkeit? Sowas wie getPackage() für die Dispatch-Anwendung oder so?

LG

— geändert am 03.08.2013, 18:52:33

Antworten
Leo K.
  • Forum-Beiträge: 56

11.08.2013, 23:33:23 via Website

Hi,

wenn ich dich richtig verstanden habe willst du in der Anderen App dann den Package-Name von der Activity haben die die App gestartet hat?

Wenn ja dann kannst du ja einfach mit
1getApplicationContext().getPackageName();
den Package-Name kriegen und dann mit nen Intent mitgeben, oder ist das genau was du nicht willst?

Antworten
Mac Systems
  • Forum-Beiträge: 1.727

11.08.2013, 23:47:55 via Website

Ansich ist einer anderen APP egal wer sie startet ? Wann soll das relevant sein ? Ansich sind im intent die infos nur enthalten die wichtig sind ...

Windmate HD, See you @ IO 14 , Worked on Wundercar, Glass V3, LG G Watch, Moto 360, Android TV

Antworten
Aaron B.
  • Forum-Beiträge: 206

12.08.2013, 17:00:39 via App

Ich möchte den package name dazu nutzen, um Apps für meine App zu registrieren. Gleichzeitig soll er dazu genutzt werden, um den App-Namen herauszufinden. Beides darf aber nicht verfälscht werden.

LG

Antworten
Mac Systems
  • Forum-Beiträge: 1.727

12.08.2013, 17:39:08 via Website

Du kannst doch über den Packagemanger selbst rausfinden was installiert ist... dann ist es auch jeden fall der richtige Packagename

Windmate HD, See you @ IO 14 , Worked on Wundercar, Glass V3, LG G Watch, Moto 360, Android TV

Antworten
Aaron B.
  • Forum-Beiträge: 206

13.08.2013, 16:02:02 via App

ja aber man könnte doch den package name einer anderen installierten app nutzen / im namen einer anderen installierten app agieren. Der Nutzer könnte dieser doch eher vertrauen und deshalb zustimmen.

LG

Antworten
Mac Systems
  • Forum-Beiträge: 1.727

13.08.2013, 19:24:12 via Website

aber aber aber... kA was du vorhast das es so high security sein muss. Davon abgesehen ist eher unwahrscheinlich das andere APPs dich so schnell aufrufen werden. Das muss dokumentiert und dann muss deine APP so wichtig sein das es sich echt lohnt. Wenn das beides APPs unter deiner Kontrolle sind würdest du aber nicht fragen sondern das einfach machen oder ?

Windmate HD, See you @ IO 14 , Worked on Wundercar, Glass V3, LG G Watch, Moto 360, Android TV

Antworten
Aaron B.
  • Forum-Beiträge: 206

13.08.2013, 19:42:15 via App

Andere Programmierer sollen es nutzen können. Und es ist wichtig, da ich persönliche Daten des Handy-Nutzers speichere und (mit Berechtigung des Nutzers) an andere Apps weitergebe, damit diese die Daten verwalten können.

LG

Antworten
impjor
  • Forum-Beiträge: 1.793

13.08.2013, 22:55:33 via App

Du könntest es so machen:
Die externe App startet deine Activity mit ihrem eigenen Appnamen, darauf hin rufst du mit startActivityForResult() und einem besonderen Extra (z.B. check=true) dieselbe App wieder auf. Die muss dann via setResult dann das OK geben, ob sie den Aufruf wirklich getätigt hat.
Etwas aufwendig, sonst fällt mir aber nichts anderes ein, wenn es 100%ig sicher sein soll.
Gruß

Liebe Grüße impjor.

Für ein gutes Miteinander: Unsere Regeln
Apps für jeden Einsatzzweck
Stellt eure App vor!

Antworten
Andy N.
  • Forum-Beiträge: 3.112

13.08.2013, 23:57:41 via App

Du könntest Signaturen heraus geben, die deine App prüft. Natürlich musst du das dann so umsetzen, dass es kein anderer mitlesen kann.

Antworten
Mac Systems
  • Forum-Beiträge: 1.727

14.08.2013, 00:01:41 via Website

Oder du schaust dir mal Custom Permissions an.

Windmate HD, See you @ IO 14 , Worked on Wundercar, Glass V3, LG G Watch, Moto 360, Android TV

Antworten
Aaron B.
  • Forum-Beiträge: 206

14.08.2013, 00:32:42 via App

Okay danke für die vielen Antworten. :)

Antworten