Ich sehe via Teilen von Inhalten aus anderen Apps, dass es möglich ist, ein anderes Thema und einen anderen Text festzulegen, wenn ich das Freigabeblatt für die Google Mail App verwende. Ich habe es implementiert und es funktioniert gut mit der nativen Mail-App, aber nicht mit Gmail.UIActivityViewController kann den Betreff nicht festlegen, wenn er mit der Google Mail-App geteilt wird
Gehen Sie auf Yelp und teilen ein Geschäft, dann gmail aus dem Aktienblatt wählen, sehe ich, dass das Thema und der Körper sind unterschiedlich. Das Thema enthält die Adresse des Unternehmens, während der Körper die Adresse enthält + einen Link zum Geschäft auf Yelp.
Ich habe versucht, diese Logik mit Erfolg auf der nativen Mail App, aber nicht in der Google Mail App zu replizieren.
Ich habe versucht, die folgenden:
Implementierung UIActivityItemSource Methoden
UIActivityViewController *activityViewController = [[UIActivityViewController alloc] initWithActivityItems:@[self] applicationActivities:nil];
- (id)activityViewControllerPlaceholderItem:(UIActivityViewController *)activityViewController {
return @"";
}
- (id)activityViewController:(UIActivityViewController *)activityViewController itemForActivityType:(NSString *)activityType {
return @"body";
}
- (NSString *)activityViewController:(UIActivityViewController *)activityViewController subjectForActivityType:(NSString *)activityType {
return @"subject";
}
Ergebnis
Apple Mail Betreff auf "Betreff", Körper auf "Körper"
Google Mail Betreff, der auf "body" gesetzt ist, Body auf "body" gesetzt "
- (NSString *)activityViewController:(UIActivityViewController *)activityViewController subjectForActivityType:(NSString *)activityType
Wird nie beim Teilen in der Google Mail App aufgerufen.
ich mehr Hack Art und Weise, es zu tun
UIActivityViewController *activityViewController = [[UIActivityViewController alloc] initWithActivityItems:@[@"body"] applicationActivities:nil];
[activityViewController setValue:@"subject" forKey:@"subject"];
Ergebnis
Apple Mail Betreff dann versuchen, "Betreff" gesetzt, Körper auf "Körper"
Gmail Betreff auf "Körper", Körper auf "Körper"
Sie können Google Mail wie Apple Mail verhalten?
Wieder habe ich gesehen, dass andere Anwendungen wie Yelp und Safari das richtige Verhalten aus der Gmail-App durch Share Sheet bekommen haben. Jeder Rat würde geschätzt werden, danke.
Es sieht aus wie Google Mail, bis die erste leere Zeile aus dem Körper und macht zieht nur, dass sich das Motiv – dan
@ Dan Sie einen Test-String haben Sie ich versuchen kann, ? Ich habe versucht @ "Dies ist der erste Teil. \ N \ nDies ist der zweite Teil." aber immer noch das gleiche Verhalten. –
Hallo! Hast du eine Lösung dafür gefunden? Ich stehe vor dem gleichen Problem –