{"id":13995793,"url":"https://github.com/microsoftgraph/ios-swift-connect-sample","last_synced_at":"2025-07-22T22:32:31.975Z","repository":{"id":66157017,"uuid":"58653326","full_name":"microsoftgraph/ios-swift-connect-sample","owner":"microsoftgraph","description":"Please see https://github.com/microsoftgraph/msgraph-training-ios-swift for a Swift sample.","archived":true,"fork":false,"pushed_at":"2020-03-06T15:02:25.000Z","size":464,"stargazers_count":14,"open_issues_count":0,"forks_count":16,"subscribers_count":10,"default_branch":"master","last_synced_at":"2024-11-29T18:41:31.700Z","etag":null,"topics":["devxsample"],"latest_commit_sha":null,"homepage":"","language":"Swift","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/microsoftgraph.png","metadata":{"files":{"readme":"README-Localized/README-de-de.md","changelog":null,"contributing":null,"funding":null,"license":"License.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2016-05-12T15:23:10.000Z","updated_at":"2023-11-16T18:35:11.000Z","dependencies_parsed_at":"2023-02-21T02:16:02.739Z","dependency_job_id":null,"html_url":"https://github.com/microsoftgraph/ios-swift-connect-sample","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/microsoftgraph/ios-swift-connect-sample","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoftgraph%2Fios-swift-connect-sample","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoftgraph%2Fios-swift-connect-sample/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoftgraph%2Fios-swift-connect-sample/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoftgraph%2Fios-swift-connect-sample/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/microsoftgraph","download_url":"https://codeload.github.com/microsoftgraph/ios-swift-connect-sample/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoftgraph%2Fios-swift-connect-sample/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266585912,"owners_count":23952168,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-22T02:00:09.085Z","response_time":66,"last_error":null,"robots_txt_status":null,"robots_txt_updated_at":null,"robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["devxsample"],"created_at":"2024-08-09T14:03:35.325Z","updated_at":"2025-07-22T22:32:31.539Z","avatar_url":"https://github.com/microsoftgraph.png","language":"Swift","funding_links":[],"categories":["Swift"],"sub_categories":[],"readme":"# \u003ca name=\"office-365-connect-sample-for-ios-using-the-microsoft-graph-sdk\"\u003e\u003c/a\u003eOffice 365 Connect-Beispiel für iOS unter Verwendung des Microsoft Graph-SDKs\n\nMicrosoft Graph ist ein einheitlicher Endpunkt für den Zugriff auf Daten, Beziehungen und Erkenntnisse, die von der Microsoft-Cloud stammen. In diesem Beispiel wird gezeigt, wie Sie eine Verbindung damit herstellen und die Authentifizierung ausführen, und dann E-Mails und Benutzer-APIs über das [Microsoft Graph-SDK für iOS](https://github.com/microsoftgraph/msgraph-sdk-ios) aufrufen.\n\n\u003e Hinweis: Testen Sie die Seite des [App-Registrierungsportals von Microsoft Graph](https://graph.microsoft.io/en-us/app-registration), durch das die Registrierung erleichtert wird, sodass Sie schneller mit diesem Beispiel loslegen können.\n \n## \u003ca name=\"prerequisites\"\u003e\u003c/a\u003eVoraussetzungen\n* [Xcode](https://developer.apple.com/xcode/downloads/) von Apple - Dieses Beispiel wird derzeit getestet und auf Version 7.3.1 von Xcode unterstützt.\n* Installation von [CocoaPods](https://guides.cocoapods.org/using/using-cocoapods.html) als ein Abhängigkeits-Manager.\n* Ein geschäftliches oder persönliches Microsoft-E-Mail-Konto, z. B. Office 365 oder outlook.com, hotmail.com usw. Sie können sich für ein [Office 365-Entwicklerabonnement](https://aka.ms/devprogramsignup) registrieren. Dieses umfasst die Ressourcen, die Sie zum Erstellen von Office 365-Apps benötigen.\n\n     \u003e Hinweis: Wenn Sie bereits über ein Abonnement verfügen, gelangen Sie über den vorherigen Link zu einer Seite mit der Meldung *Leider können Sie Ihrem aktuellen Konto diesen Inhalt nicht hinzufügen*. Verwenden Sie in diesem Fall ein Konto aus Ihrem aktuellen Office 365-Abonnement.    \n* Eine Client-ID aus der registrierten App unter dem [App-Registrierungsportal von Microsoft Graph](https://graph.microsoft.io/en-us/app-registration)\n* Um Anforderungen auszuführen, muss ein **MSAuthenticationProvider** bereitgestellt werden, der HTTPS-Anforderungen mit einem entsprechenden OAuth 2.0-Bearertoken authentifizieren kann. Wir verwenden [msgraph-sdk-ios-nxoauth2-adapter](https://github.com/microsoftgraph/msgraph-sdk-ios-nxoauth2-adapter) für eine Beispielimplementierung von MSAuthenticationProvider, die Sie für einen Schnelleinstieg in Ihr Projekt verwenden können. Weitere Informationen finden Sie im folgenden Abschnitt **Interessanter Code**.\n\n       \n## \u003ca name=\"running-this-sample-in-xcode\"\u003e\u003c/a\u003eAusführen dieses Beispiels in Xcode\n\n1. Klonen dieses Repositorys\n2. Verwenden Sie CocoaPods, um das Microsoft Graph-SDK und Authentifizierungsabhängigkeiten zu importieren:\n        \n        pod 'MSGraphSDK'\n        pod 'MSGraphSDK-NXOAuth2Adapter'\n\n\n Diese Beispiel-App enthält bereits eine POD-Datei, die die Pods in das Projekt überträgt. Navigieren Sie einfach über das **Terminal** zum Projekt, und führen Sie Folgendes aus: \n        \n        pod install\n        \n   Weitere Informationen finden Sie im Thema über das **Verwenden von CocoaPods** in [Zusätzliche Ressourcen](#AdditionalResources).\n  \n3. Öffnen Sie **Graph-iOS-Swift-Connect.xcworkspace**.\n4. Öffnen Sie **AutheticationConstants.swift** unter dem Anwendungsordner. Sie werden sehen, dass die **clientId** aus dem Registrierungsprozess zu dieser Datei hinzugefügt werden kann.\n\n   ```swift\n        static let clientId = \"ENTER_YOUR_CLIENT_ID\"\n   ```    \n    \u003e Hinweis: Sie sehen, dass die folgenden Berechtigungsbereiche für dieses Projekt konfiguriert wurden: **\"https://graph.microsoft.com/Mail.Send\", \"https://graph.microsoft.com/User.Read\", \"Offline_access\"**. Die in diesem Projekt verwendeten Dienstaufrufe, also das Senden einer E-Mail an Ihr E-Mail-Konto und das Abrufen einiger Profilinformationen (Anzeigename, E-Mail-Adresse) benötigen diese Berechtigungen, damit die App ordnungsgemäß ausgeführt wird.\n\n\n5. Führen Sie das Beispiel aus. Sie werden aufgefordert, eine Verbindung zu einem geschäftlichen oder persönlichen E-Mail-Konto herzustellen oder zu authentifizieren. Dann können Sie eine E-Mail an dieses Konto oder an ein anderes ausgewähltes E-Mail-Konto senden.\n\n\n##\u003ca name=\"code-of-interest\"\u003e\u003c/a\u003eInteressanter Code\n\nDer gesamte Authentifizierungscode kann in der Datei **Authentication.swift** angezeigt werden. Wir verwenden eine Beispielimplementierung von MSAuthenticationProvider, die über [NXOAuth2Client](https://github.com/nxtbgthng/OAuth2Client) hinaus erweitert wurde, um Anmeldeinformationen für registrierte systemeigene Apps, eine automatische Aktualisierung von Zugriffstoken sowie eine Abmeldefunktion bereitzustellen:\n```swift\n        NXOAuth2AuthenticationProvider.setClientId(clientId, scopes: scopes)\n        \n        if NXOAuth2AuthenticationProvider.sharedAuthProvider().loginSilent() == true {\n            completion(error: nil)\n        }\n        else {\n            NXOAuth2AuthenticationProvider.sharedAuthProvider()\n                .loginWithViewController(nil) { (error: NSError?) in\n                    \n                    if let nserror = error {\n                        completion(error: MSGraphError.NSErrorType(error: nserror))\n                    }\n                    else {\n                        completion(error: nil)\n                    }\n            }\n        }\n        ...\n        func disconnect() {\n             NXOAuth2AuthenticationProvider.sharedAuthProvider().logout()\n        }\n\n```\n\n\nNachdem der Authentifizierungsanbieter festgelegt wurde, können wir ein Clientobjekt (MSGraphClient) erstellen und initialisieren, das für Aufrufe des Microsoft Graph-Dienstendpunkts (E-Mail und Benutzer) verwendet wird. In **SendMailViewcontroller.swift** können wir eine E-Mail-Anforderung erstellen und diese mithilfe des folgenden Codes senden:\n\n```swift\n            let requestBuilder = graphClient.me().sendMailWithMessage(message, saveToSentItems: false)\n            let mailRequest = requestBuilder.request()\n            \n            mailRequest.executeWithCompletion({\n                (response: [NSObject : AnyObject]?, error: NSError?) in\n                ...\n            })\n\n```\n\nWeitere Informationen, einschließlich des Codes zum Aufrufen anderer Dienste wie OneDrive, finden Sie im [Microsoft Graph-SDK für iOS](https://github.com/microsoftgraph/msgraph-sdk-ios)\n\n## \u003ca name=\"questions-and-comments\"\u003e\u003c/a\u003eFragen und Kommentare\n\nWir schätzen Ihr Feedback hinsichtlich des Office 365 iOS Microsoft Graph Connect-Projekts. Sie können uns Ihre Fragen und Vorschläge über den Abschnitt [Probleme]() dieses Repositorys senden.\n\nAllgemeine Fragen zur Office 365-Entwicklung sollten in [Stack Overflow](http://stackoverflow.com/questions/tagged/Office365+API) gestellt werden. Stellen Sie sicher, dass Ihre Fragen oder Kommentare mit [Office365] und [MicrosoftGraph] markiert sind.\n\n## \u003ca name=\"contributing\"\u003e\u003c/a\u003eMitwirkung\nVor dem Senden Ihrer Pull Request müssen Sie eine [Lizenzvereinbarung für Teilnehmer](https://cla.microsoft.com/) unterschreiben. Zum Vervollständigen der Lizenzvereinbarung für Teilnehmer (Contributor License Agreement, CLA) müssen Sie eine Anforderung über das Formular senden. Nachdem Sie die E-Mail mit dem Link zum Dokument empfangen haben, müssen Sie die CLA anschließend elektronisch signieren. \n\nIn diesem Projekt wurden die [Microsoft Open Source-Verhaltensregeln](https://opensource.microsoft.com/codeofconduct/) übernommen. Weitere Informationen finden Sie unter [Häufig gestellte Fragen zu Verhaltensregeln](https://opensource.microsoft.com/codeofconduct/faq/), oder richten Sie Ihre Fragen oder Kommentare an [opencode@microsoft.com](mailto:opencode@microsoft.com).\n\n## \u003ca name=\"additional-resources\"\u003e\u003c/a\u003eZusätzliche Ressourcen\n\n* [Office Dev Center](http://dev.office.com/)\n* [Microsoft Graph-Übersichtsseite](https://graph.microsoft.io)\n* [Verwenden von CocoaPods](https://guides.cocoapods.org/using/using-cocoapods.html)\n\n## \u003ca name=\"copyright\"\u003e\u003c/a\u003eCopyright\nCopyright (c) 2016 Microsoft. Alle Rechte vorbehalten.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmicrosoftgraph%2Fios-swift-connect-sample","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmicrosoftgraph%2Fios-swift-connect-sample","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmicrosoftgraph%2Fios-swift-connect-sample/lists"}