Ich habe die iOS-App erfolgreich für die Verarbeitung von Audiodokumenttypen (nicht Deeplinks!) Konfiguriert, sodass ich den Freigabedialog verwenden kann, um Audiodateien in meiner App zu öffnen. Dies funktioniert einwandfrei.Wie wird die Sendeabsicht (Menübaum) in der nativen App verarbeitet?
Ich habe Android intent-filter
in der AndroidManifest.xml
erfolgreich so konfiguriert, audiofiles auf die gleiche Weise zu verhandeln, das wird auch gut von Android-System erkannt und ich sehe meine App, wenn ich Share-Menü auf Audiofiles verwende. Allerdings scheint Android Implementierung von Linking
Komponente SEND
Absicht Aktionen zu ignorieren und nur über View
Absicht Aktionen kümmern, wie ich auf IntentModule.java:55
sah:
if (Intent.ACTION_VIEW.equals(action) && uri != null) {
initialURL = uri.toString();
}
Ich versuchte Absicht zu Patch in meinem MainActivity.java
es gleiche uri zu machen Rückkehr mit VIEW
Aktion , aber dies erzeugt immer einen Fehler in der Laufzeit.
@Override
public Intent getIntent() {
Intent origIntent = super.getIntent();
if (origIntent != null && Intent.ACTION_SEND.equals(origIntent.getAction())) {
return new Intent(Intent.ACTION_VIEW, origIntent.getData());
}
return origIntent;
}
Allerdings bekomme ich einen Fehler immer darauf hinweist, dass getData
null ist.
Ich sah this answer, aber mit einer Freigabeerweiterung ist ein Overkill für mich.