{"metadata":{"image":[],"title":"","description":""},"api":{"url":"","auth":"required","settings":"","results":{"codes":[]},"params":[]},"next":{"description":"","pages":[]},"title":"IOS","type":"basic","slug":"ios","excerpt":"Essa pagina descreve como instalar e utilizar a SDK IOS da Dito.","body":"## Features\n\n- [ x ] Initialize\n- [ x ] Identify\n- [ x ] Track\n- [ x ] Notification\n- [ x ] Offline Management\n\n## Requirements\n- iOS 11.0+\n- Xcode 11.3.1+\n\n## Installation\nPara instalar o SDK Dito em seu projeto é necessário arrastar o arquivo DitoSDK.framework, disponível na pasta Framework do projeto.\n## Example\nHá neste repositório presente na pasta Example a forma de utilização e configuração do SDK.\n\n### Usage example\n\nÉ necessário setar o ```App Key``` e ```App secret``` do seu dashboard Dito no arquivo ```.plist``` do seu projeto, utilizar as chaves exatamente como no exemplo abaixo:\n\n![plist](https://user-images.githubusercontent.com/76013839/105905864-5c010c00-5ff9-11eb-9961-eda5c9a62d4b.png)\n\n#### Initialize\n\nÉ necessário fazer a inicialização do SDK no arquivo ```AppDelegate.swift``` do seu projeto.\n\n```swift\nimport DitoSDK\n\nfunc application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {\n    ...\n        \n    Dito.shared.configure()\n        \n    ...\n}\n```\n#### Identify\n```swift\n        let customData = [\"x\": \"y\"]\n                \n        let ditoUser = DitoUser(name: \"My name\",\n                          gender: .masculino,\n                          email: \"teste:::at:::teste.com.br\",\n                          birthday: Date(),\n                          location: \"My city\",\n                          createdAt: Date(),\n                          customData: customData)\n        Dito.identify(id: \"My user id\", data: ditoUser)\n```\n#### Track\n```swift\n    let event = DitoEvent(action: \"my-current-event-to-track\")\n    Dito.track(event: event)\n```\n\n#### Push Notification\n\n##### Register Device\n\n```swift\n    Dito.registerDevice(token: \"My notification token\", tokenType: .apple)\n```\n##### Unregister Device\n```swift\n    Dito.unregisterDevice(token: \"My notification token\", tokenType: .apple)\n```\n##### Register notification reading\n\nO método recebe como parâmetro um ```dictionary``` que é enviado no push. Não necessáriamente precisa ser implementado no método do delegate como no exemplo abaixo:\n\n```swift\n    func application(_ application: UIApplication, didReceiveRemoteNotification userInfo: [AnyHashable : Any], fetchCompletionHandler completionHandler: @escaping (UIBackgroundFetchResult) -> Void) {\n        Dito.notificationRead(with: userInfo)\n    }\n```\n\nTambém é possível obter o ```deepLink``` para direcionamento de fluxo como no exemplo abaixo:\n\n```swift\n    func application(_ application: UIApplication, didReceiveRemoteNotification userInfo: [AnyHashable : Any], fetchCompletionHandler completionHandler: @escaping (UIBackgroundFetchResult) -> Void) {\n        let notificationRead = Dito.notificationRead(with: userInfo)\n        print(notificationRead.deepLink)\n    }\n``` \n\n## Debug mode\nPara ativar os logs é necessário colocar a flag ```EnabledDebug``` ativada no ```Arguments Passed On Launch``` que fica no ```scheme``` do seu projeto.\n\n## Author\n\nioasys, [email protected]\n\n## License\nDitoSDK is available under the MIT license. See the LICENSE file for more info.","updates":[],"order":8,"isReference":false,"hidden":false,"sync_unique":"","link_url":"","link_external":false,"_id":"6171a4d498f138007af030e6","createdAt":"2021-10-21T17:35:16.539Z","user":"55bbb13fa8400c2d00873f1e","category":{"sync":{"isSync":false,"url":""},"pages":["5538ff4227f8540d0024f00f","554264348aeff51700a20e44","5547c963d3427d0d00cd6e28","5547c9ea70b82f0d0027c312","5547c9fc70b82f0d0027c314","5547ca09d3427d0d00cd6e2a","555cbc2a15a89b0d00c1af58","5566fa95f579050d00c3d63e"],"title":"SDKs","slug":"sdks","order":1,"from_sync":false,"reference":false,"_id":"5538feec27f8540d0024f00e","createdAt":"2015-04-23T14:17:16.792Z","project":"5538fb24dc5dd00d00e1da91","__v":8,"version":"5538fb25dc5dd00d00e1da94"},"version":{"version":"1.0","version_clean":"1.0.0","codename":"","is_stable":true,"is_beta":false,"is_hidden":false,"is_deprecated":false,"categories":["5538fb25dc5dd00d00e1da95","5538feec27f8540d0024f00e","5547cbd3d3427d0d00cd6e2d","554a574f0b54d30d007fe0f9","55afbdbef202b12100cd9eeb","5c016f198e69b802d4385e25","5c81470b175ad6002457d9fa","5c81472e74fd5a0063420bae","5c81476b2dd69100430ea5a4"],"_id":"5538fb25dc5dd00d00e1da94","createdAt":"2015-04-23T14:01:09.040Z","project":"5538fb24dc5dd00d00e1da91","__v":9,"releaseDate":"2015-04-23T14:01:09.040Z"},"project":"5538fb24dc5dd00d00e1da91","__v":0,"parentDoc":null}

IOS

Essa pagina descreve como instalar e utilizar a SDK IOS da Dito.

## Features - [ x ] Initialize - [ x ] Identify - [ x ] Track - [ x ] Notification - [ x ] Offline Management ## Requirements - iOS 11.0+ - Xcode 11.3.1+ ## Installation Para instalar o SDK Dito em seu projeto é necessário arrastar o arquivo DitoSDK.framework, disponível na pasta Framework do projeto. ## Example Há neste repositório presente na pasta Example a forma de utilização e configuração do SDK. ### Usage example É necessário setar o ```App Key``` e ```App secret``` do seu dashboard Dito no arquivo ```.plist``` do seu projeto, utilizar as chaves exatamente como no exemplo abaixo: ![plist](https://user-images.githubusercontent.com/76013839/105905864-5c010c00-5ff9-11eb-9961-eda5c9a62d4b.png) #### Initialize É necessário fazer a inicialização do SDK no arquivo ```AppDelegate.swift``` do seu projeto. ```swift import DitoSDK func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { ... Dito.shared.configure() ... } ``` #### Identify ```swift let customData = ["x": "y"] let ditoUser = DitoUser(name: "My name", gender: .masculino, email: "[email protected]", birthday: Date(), location: "My city", createdAt: Date(), customData: customData) Dito.identify(id: "My user id", data: ditoUser) ``` #### Track ```swift let event = DitoEvent(action: "my-current-event-to-track") Dito.track(event: event) ``` #### Push Notification ##### Register Device ```swift Dito.registerDevice(token: "My notification token", tokenType: .apple) ``` ##### Unregister Device ```swift Dito.unregisterDevice(token: "My notification token", tokenType: .apple) ``` ##### Register notification reading O método recebe como parâmetro um ```dictionary``` que é enviado no push. Não necessáriamente precisa ser implementado no método do delegate como no exemplo abaixo: ```swift func application(_ application: UIApplication, didReceiveRemoteNotification userInfo: [AnyHashable : Any], fetchCompletionHandler completionHandler: @escaping (UIBackgroundFetchResult) -> Void) { Dito.notificationRead(with: userInfo) } ``` Também é possível obter o ```deepLink``` para direcionamento de fluxo como no exemplo abaixo: ```swift func application(_ application: UIApplication, didReceiveRemoteNotification userInfo: [AnyHashable : Any], fetchCompletionHandler completionHandler: @escaping (UIBackgroundFetchResult) -> Void) { let notificationRead = Dito.notificationRead(with: userInfo) print(notificationRead.deepLink) } ``` ## Debug mode Para ativar os logs é necessário colocar a flag ```EnabledDebug``` ativada no ```Arguments Passed On Launch``` que fica no ```scheme``` do seu projeto. ## Author ioasys, [email protected] ## License DitoSDK is available under the MIT license. See the LICENSE file for more info.