2016-10-13 4 views
0

Ich versuche Gesundheit App aus meiner Anwendung zu starten.So starten Sie die Health iOS App von einem anderen iOS APP

ich in der Regel mit den folgenden Codezeilen versuche Anwendung für den Start wie als

let mystr = "health://" 
    let myurl = NSURL(string: mystr)! 
    if (UIApplication.sharedApplication().canOpenURL(myurl)) 
    { 
     UIApplication.sharedApplication().openURL(myurl) 
    } 
    else 
    { 
     print("unable to open") 
    } 

Ich habe versucht, über code.i Störung erhalten („Null“).

Einige bitte helfen Sie in dieser Ausgabe.

Vielen Dank im Voraus.

+0

ich mit anderem Apfel nie tief war die Verknüpfung Apps. Aber haben Sie eine Ausnahme in den LSApplicationQueriesSchemes in Ihrem PLIST hinzugefügt? – Croisciento

+0

I ** Hoffnung, ** Dies wird Ihnen helfen- [App von einem anderen starten] (http://stackoverflow.com/questions/419119/launch-an-app-from-within-another-iphone) – iDeveloper

+0

Ich habe hinzugefügt LSApplicationQueriesSchemes in info.plist. LSApplicationQueriesSchemes \t \t \t Gesundheit \t

Antwort

0

Sie können HealthApp nicht direkt über Ihre App öffnen. Weil OS unterstützt nur zum Öffnen der Einstellungen App mit UIApplicationOpenSettingsURLString. Wenn wir zum Öffnen der HealthApp das URL-Schema verwenden, lehnt Apple die App möglicherweise im Überprüfungsprozess ab.

+0

nicht mehr in iOS10 + http://stackoverflow.com/a/41409203/5941807 – Joannes

0

Ich habe keine Erfahrung mit dem HealthKit Rahmen aber hier ist, was ich gefunden:

Nach Open Apple Health programmatically Sie können keinen Deeplink von Ihrer App auf die Gesundheit App erstellt werden, weil es nicht unterstützt wird.

Wenn Sie die Daten der Health-App verwenden möchten, müssen Sie das HealthKit-Framework in Ihre App implementieren und um Erlaubnis für Ihre Benutzer bitten.

Ich habe versucht, in die Health-App mit Code, der für andere Apps funktioniert und die gleichen Ergebnisse erzielt wie du, eine Verbindung herzustellen.

0

Mit iOS 10+ dies versuchen:

let mystr = "x-apple-health://" 

Vielleicht in objective.c:

-(IBAction)openAppHealth:(id)sender { 
    [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"x-apple-health://"] options:@{} completionHandler:nil]; 
} 

(mit neuen openURL für iOS 10)