Apple Watch 및 iPhone 용 운동 앱을 프로그래밍하려고합니다. 그러나 내 iPhone에 다차원 Array를 보낼 수 없습니다. shared container을 사용하여 WCsession, NSUserDefaults 또는 CoreData와 같은 많은 제안을 시도했습니다.iOS 10과 WatchOS 3 (공유 컨테이너) 간의 데이터 공유
여기 몇 가지 해결책이 stackoverflow에서 이미 제안되었지만 짧은 문자열이나 사전 만 보내는 경우가 많습니다.
내 응용 프로그램 :
내 변수와 두 개의 클래스가 있습니다
class WorkoutClass: NSObject {
var date: String
var exercise: String
var duration: Double
var repetitions: Double?
var meanRepDuration: Double?
var idealAngle: Double?
var meanAngle: Double?
var repArray: Array<Any>?
init(date: String, exercise: String, duration: Double, repetitions: Double?, meanRepDuration: Double?, idealAngle: Double?, meanAngle: Double?, repArray: Array<Any>?) {
self.date = date
self.exercise = exercise
self.duration = duration
self.repetitions = repetitions
self.meanRepDuration = meanRepDuration
self.idealAngle = idealAngle
self.meanAngle = meanAngle
self.repArray = repArray
}
}
및
class RepetitionClass: NSObject {
var oneRepAngle: Double?
var oneRepStartTime: Double?
var oneRepEndTime: Double?
var oneRepInternalVariation: Double?
init(oneRepAngle: Double?, oneRepStartTime: Double?, oneRepEndTime: Double?, oneRepInternalVariation: Double?) {
self.oneRepAngle = oneRepAngle
self.oneRepStartTime = oneRepStartTime
self.oneRepEndTime = oneRepEndTime
self.oneRepInternalVariation = oneRepInternalVariation
}
}
주석 : 나는 내가 가진 특별한 방법으로 내 데이터를 얻을 수 있기 때문에 이런 식으로 할 수 있습니다.
나는 시계에서 내 가속도 데이터를 얻을로 저장 : 각 연습 배열이는 "exerciseArray"라는 배열에 여러 운동과 함께 추가됩니다
각 반복에서 특정 데이터에 추가 배열. 이 배열로 선언 :
var exerciseArray = [Any]()
그러나 사전에이 배열을 넣고 작동하지 않았다 userDefaults로 보낼 수 있습니다. 내 exerciseArray를 데이터로 캐스팅하고 sendMessage
과 함께 보내도록 제안되었습니다. 유감스럽게도 youtube, stackoverflow 또는 다른 곳에서 발견 된 모든 자습서는 iOS 10 및 watchOS 3에서 작동하지 않았습니다.
따라서 누군가가 iOS 앱과 그 확장은 실제로 다른 많은 사람들에게도 도움이 될 것입니다 (이미 stackoverflow에서 본 것처럼).
핵심 데이터가 포함 된 공유 컨테이너를 사용하는 것이 더 좋지만 프로그래밍에 완전히 익숙하므로 도움을 요청합니다. 감사!