2016-12-13 2 views
1

Привет, я использую Sinch sms для регистрации пользователей в моем приложении, но после обновления моего кода до swift 3 (и sink sdk в настоящее время 2.0.3), Im получает следующую ошибку:Sinch Sms Verification 2.0.3 SDK Swift 3

Использование неразрешенного идентификатора «SINPhoneNumberUtil»

Использование неразрешенного идентификатора «SINPhoneNumberFormat»

Использование необъявленной типа «SINPhoneNumber»

Это код, который работал с предыдущим SDK и Swift 2

if (result.success){ 

        let phoneUtil = SINPhoneNumberUtil() 

        do { 
         let defaultRegion = DeviceRegion.currentCountryCode() 
         let phoneNum: SINPhoneNumber = try phoneUtil.parse(self.phoneNumber.text!, defaultRegion: defaultRegion) 
         let formattedString: String = try phoneUtil.formatNumber(phoneNum, format: SINPhoneNumberFormat.E164)//format(phoneNumber, numberFormat: .E164) 
         self.formattedNumToPass = formattedString 
         print(formattedString) 
        } 
        catch let error as NSError { 
         print(error.localizedDescription) 
        } 
        self.performSegue(withIdentifier: "enterPin", sender: sender); 
} 

Я видел, произошли некоторые изменения в ссылочных SinchVerification документы: http://download.sinch.com/docs/verification/ios/latest/reference-swift/html/index.html
, но до сих пор я не удается сделать правильные изменения ..

Спасибо за вашу помощь!

ответ

1

Как я прочитал в ссылке прикрепленной в вашем вопросе

SIN префикс был понижен так, чтобы исправить ошибки, которые вы столкнулись просто удалите его из вашего кода, как это.

if (result.success) { 

    let phoneUtil = SharedPhoneNumberUtil() 

    do { 
     let defaultRegion = DeviceRegion.currentCountryCode() 
     let phoneNum: PhoneNumber = 
      try phoneUtil.parse(self.phoneNumber.text!, defaultRegion: defaultRegion) 
     let formattedString: String = 
      try phoneUtil.formatNumber(phoneNum, format: PhoneNumberFormat.e164) //format(phoneNumber, numberFormat: .E164) 
     self.formattedNumToPass = formattedString 
     print(formattedString) 
    } catch 
    let error as NSError { 
     print(error.localizedDescription) 
    } 
    self.performSegue(withIdentifier: "enterPin", sender: sender); 
} 
+0

Я уже попробовать это, но Im получаю следующее сообщение об ошибке: «PhoneNumberUtil» не может быть построен, поскольку он не имеет доступных инициализаторами – jerem

+0

вы можете получить его бросить общую функцию, как это упоминается в: Http: // скачать. sinch.com/docs/verification/ios/latest/reference-swift/html/Functions.html#/s:F17SinchVerification21SharedPhoneNumberUtilFT_PS_15PhoneNumberUtil_ – zombie

Смежные вопросы