2016-10-04 7 views
0

健康キット承認に2番目のHKQuantityTypeを追加するにはどうすればよいですか? QuantityTypesの配列として、心拍数とエネルギーの両方を追加したいと思います。配列として数量型の代わりに 'dataTypes = Set(arrayLiteral:quantityTypes)'という行を追加すると、 "HKQuantityTypeの値を期待される引数型[]に変換できません。健康キット認証のためにHKQuantityTypeの配列を追加する方法

私は初心者です、私は私が正しく配列をフォーマットしないと思う。

guard let heartRateQuantityType = HKQuantityType.quantityTypeForIdentifier(HKQuantityTypeIdentifierActiveEnergyBurned) else { 
     // displayNotAllowed() 
     return 
    } 

    guard let calorieQuantityType = HKQuantityType.quantityTypeForIdentifier(HKQuantityTypeIdentifierActiveEnergyBurned) else { 
     // displayNotAllowed() 
     return 
    } 

    let quantityTypes = [calorieQuantityType, heartRateQuantityType] 
    let dataTypes = Set(arrayLiteral: quantityTypes) 
    healthStore.requestAuthorizationToShareTypes(nil, readTypes: dataTypes) { (success, error) -> Void in 
     if success == false { 
      // self.displayNotAllowed() 
     } 
    } 

答えて

0

あなたが許可を要求し、その後セットに配列を設定している。代わりにSETにcalorieQuantityTypeとheartRateQuantityTypeを追加し、直接

//delete this let quantityTypes = [calorieQuantityType, heartRateQuantityType] 
let dataTypes = Set([calorieQuantityType, heartRateQuantityType]) 
healthStore.requestAuthorizationToShareTypes(nil, readTypes: dataTypes) { (success, error) -> Void in 
    if success == false { 
     // self.displayNotAllowed() 
    } 
} 
関連する問題