From ead0650dfbceb83fb20b92a82c4ce3bf14009ecd Mon Sep 17 00:00:00 2001 From: Yuan Zhu Date: Mon, 26 Sep 2016 22:23:17 -0700 Subject: [PATCH] Convergence --- README.md | 2 +- RELEASE-NOTES.md | 68 ++ ResearchKit.podspec | 2 +- ResearchKit.xcodeproj/project.pbxproj | 120 ++- .../xcschemes/ResearchKit.xcscheme | 2 +- .../xcshareddata/xcschemes/docs.xcscheme | 2 +- .../ActiveTasks/HKSample+ORKJSONDictionary.m | 2 +- ResearchKit/ActiveTasks/ORKAudioContentView.m | 12 +- .../ActiveTasks/ORKAudioLevelNavigationRule.h | 2 +- .../ActiveTasks/ORKAudioLevelNavigationRule.m | 3 +- ResearchKit/ActiveTasks/ORKDataLogger.h | 1 + .../ORKHealthQuantityTypeRecorder.m | 45 +- .../ActiveTasks/ORKHolePegTestPlaceHoleView.h | 2 +- .../ActiveTasks/ORKHolePegTestRemovePegView.h | 2 +- .../ActiveTasks/ORKTappingContentView.h | 2 + .../ActiveTasks/ORKTappingContentView.m | 9 + .../ORKTappingIntervalStepViewController.m | 5 + ResearchKit/Charts/ORKChartTypes.h | 4 +- ResearchKit/Common/ORKAnswerFormat.h | 2 +- ResearchKit/Common/ORKAnswerFormat.m | 4 +- ResearchKit/Common/ORKChoiceViewCell.m | 10 +- ResearchKit/Common/ORKCollector.h | 173 ++++ ResearchKit/Common/ORKCollector.m | 360 ++++++++ ResearchKit/Common/ORKCollector_Internal.h | 82 ++ ResearchKit/Common/ORKCountdownLabel.m | 26 +- ResearchKit/Common/ORKDataCollectionManager.h | 200 +++++ ResearchKit/Common/ORKDataCollectionManager.m | 342 ++++++++ .../ORKDataCollectionManager_Internal.h | 51 ++ .../Common/ORKFormStepViewController.m | 2 +- .../Common/ORKHealthSampleQueryOperation.h | 49 ++ .../Common/ORKHealthSampleQueryOperation.m | 247 ++++++ .../Common/ORKMotionActivityQueryOperation.h | 48 + .../Common/ORKMotionActivityQueryOperation.m | 206 +++++ .../Common/ORKNavigationContainerView.m | 4 + ResearchKit/Common/ORKOperation.h | 72 ++ ResearchKit/Common/ORKOperation.m | 172 ++++ .../ORKPasscodeStepViewController_Internal.h | 2 +- .../Common/ORKQuestionStepViewController.m | 2 +- ResearchKit/Common/ORKReviewStep.h | 3 +- .../Common/ORKReviewStepViewController.m | 2 +- .../Common/ORKStepNavigationRule.swift | 18 +- ResearchKit/Common/ORKStepViewController.m | 7 + ResearchKit/Common/ORKSurveyAnswerCell.h | 3 + ResearchKit/Common/ORKSurveyAnswerCell.m | 33 +- .../Common/ORKSurveyAnswerCellForNumber.m | 3 + .../Common/ORKSurveyAnswerCellForScale.m | 4 + .../Common/ORKSurveyAnswerCellForText.m | 11 +- .../Common/ORKTableStepViewController.m | 2 +- ResearchKit/Common/ORKTaskViewController.m | 10 +- ResearchKit/Common/ORKTextButton.h | 2 +- ResearchKit/Common/ORKTextButton.m | 8 + .../Common/ORKVideoCaptureCameraPreviewView.h | 50 ++ .../Common/ORKVideoCaptureCameraPreviewView.m | 231 +++++ ResearchKit/Common/ORKVideoCaptureStep.h | 127 +++ ResearchKit/Common/ORKVideoCaptureStep.m | 119 +++ .../ORKVideoCaptureStepViewController.h | 46 + .../ORKVideoCaptureStepViewController.m | 341 ++++++++ ResearchKit/Common/ORKVideoCaptureView.h | 65 ++ ResearchKit/Common/ORKVideoCaptureView.m | 436 ++++++++++ .../ORKConsentReviewStepViewController.m | 2 +- .../Localized/ar.lproj/ResearchKit.strings | 93 +- .../Localized/ar.lproj/locversion.plist | 4 +- .../Localized/ca.lproj/ResearchKit.strings | 91 +- .../Localized/ca.lproj/locversion.plist | 4 +- .../Localized/cs.lproj/ResearchKit.strings | 93 +- .../Localized/cs.lproj/locversion.plist | 4 +- .../Localized/da.lproj/ResearchKit.strings | 105 ++- .../Localized/da.lproj/locversion.plist | 4 +- .../Localized/de.lproj/ResearchKit.strings | 245 ++++-- .../Localized/de.lproj/locversion.plist | 4 +- .../Localized/el.lproj/ResearchKit.strings | 99 ++- .../Localized/el.lproj/locversion.plist | 4 +- .../Localized/en.lproj/ResearchKit.strings | 10 + .../Localized/en.lproj/locversion.plist | 4 +- .../Localized/en_AU.lproj/ResearchKit.strings | 89 +- .../Localized/en_AU.lproj/locversion.plist | 4 +- .../Localized/en_GB.lproj/ResearchKit.strings | 89 +- .../Localized/en_GB.lproj/locversion.plist | 4 +- .../Localized/es.lproj/ResearchKit.strings | 117 ++- .../Localized/es.lproj/locversion.plist | 4 +- .../Localized/es_MX.lproj/ResearchKit.strings | 89 +- .../Localized/es_MX.lproj/locversion.plist | 4 +- .../Localized/fi.lproj/ResearchKit.strings | 93 +- .../Localized/fi.lproj/locversion.plist | 4 +- .../Localized/fr.lproj/ResearchKit.strings | 93 +- .../Localized/fr.lproj/locversion.plist | 4 +- .../Localized/fr_CA.lproj/ResearchKit.strings | 89 +- .../Localized/fr_CA.lproj/locversion.plist | 4 +- .../Localized/he.lproj/ResearchKit.strings | 89 +- .../Localized/he.lproj/locversion.plist | 4 +- .../Localized/hi.lproj/ResearchKit.strings | 99 ++- .../Localized/hi.lproj/locversion.plist | 4 +- .../Localized/hr.lproj/ResearchKit.strings | 89 +- .../Localized/hr.lproj/locversion.plist | 4 +- .../Localized/hu.lproj/ResearchKit.strings | 95 +- .../Localized/hu.lproj/locversion.plist | 4 +- .../Localized/id.lproj/ResearchKit.strings | 89 +- .../Localized/id.lproj/locversion.plist | 4 +- .../Localized/it.lproj/ResearchKit.strings | 91 +- .../Localized/it.lproj/locversion.plist | 4 +- .../Localized/ja.lproj/ResearchKit.strings | 91 +- .../Localized/ja.lproj/locversion.plist | 4 +- .../Localized/ko.lproj/ResearchKit.strings | 89 +- .../Localized/ko.lproj/locversion.plist | 4 +- .../Localized/ms.lproj/ResearchKit.strings | 115 ++- .../Localized/ms.lproj/locversion.plist | 4 +- .../Localized/nl.lproj/ResearchKit.strings | 191 ++-- .../Localized/nl.lproj/locversion.plist | 4 +- .../Localized/no.lproj/ResearchKit.strings | 89 +- .../Localized/no.lproj/locversion.plist | 4 +- .../Localized/pl.lproj/ResearchKit.strings | 89 +- .../Localized/pl.lproj/locversion.plist | 4 +- .../Localized/pt.lproj/ResearchKit.strings | 89 +- .../Localized/pt.lproj/locversion.plist | 4 +- .../Localized/pt_PT.lproj/ResearchKit.strings | 97 ++- .../Localized/pt_PT.lproj/locversion.plist | 4 +- .../Localized/ro.lproj/ResearchKit.strings | 93 +- .../Localized/ro.lproj/locversion.plist | 4 +- .../Localized/ru.lproj/ResearchKit.strings | 113 ++- .../Localized/ru.lproj/locversion.plist | 4 +- .../Localized/sk.lproj/ResearchKit.strings | 109 ++- .../Localized/sk.lproj/locversion.plist | 4 +- .../Localized/sv.lproj/ResearchKit.strings | 91 +- .../Localized/sv.lproj/locversion.plist | 4 +- .../Localized/th.lproj/ResearchKit.strings | 91 +- .../Localized/th.lproj/locversion.plist | 4 +- .../Localized/tr.lproj/ResearchKit.strings | 113 ++- .../Localized/tr.lproj/locversion.plist | 4 +- .../Localized/uk.lproj/ResearchKit.strings | 125 ++- .../Localized/uk.lproj/locversion.plist | 4 +- .../Localized/vi.lproj/ResearchKit.strings | 91 +- .../Localized/vi.lproj/locversion.plist | 4 +- .../Localized/zh_CN.lproj/ResearchKit.strings | 141 ++- .../Localized/zh_CN.lproj/locversion.plist | 4 +- .../Localized/zh_HK.lproj/ResearchKit.strings | 97 ++- .../Localized/zh_HK.lproj/locversion.plist | 4 +- .../Localized/zh_TW.lproj/ResearchKit.strings | 99 ++- .../Localized/zh_TW.lproj/locversion.plist | 4 +- ResearchKit/ResearchKit.h | 5 + .../ORKTest/ORKTest.xcodeproj/project.pbxproj | 19 +- .../xcshareddata/xcschemes/ORKTest.xcscheme | 2 +- .../ORKTest/Charts/ChartDataSources.swift | 94 +- .../Charts/ChartListViewController.swift | 127 ++- Testing/ORKTest/ORKTest/MainViewController.m | 92 +- Testing/ORKTest/ORKTest/ORKESerialization.m | 15 + .../ORKTest/Supporting Files/Info.plist | 10 + Testing/ORKTest/ORKTest/TaskFactory.swift | 40 +- Testing/ORKTest/ORKTestTests/Info.plist | 4 + .../ORKTestTests/ORKDataCollectionTests.m | 427 +++++++++ .../ORKTestTests/ORKJSONSerializationTests.m | 34 +- docs/Account/Account-template.markdown | 82 ++ docs/Account/Login.png | Bin 0 -> 61473 bytes docs/Account/Registration.png | Bin 0 -> 86015 bytes docs/Account/Verification.png | Bin 0 -> 79489 bytes .../ActiveTasks/ActiveTasks-template.markdown | 145 ++-- .../AudioImages/AboutTaskIntroduction.png | Bin .../AudioImages/AudioTaskCompletionStep.png | Bin .../AudioImages/AudioTaskCountdownStep.png | Bin .../AudioImages/AudioTaskIntroduction.png | Bin .../ActiveTasks/AudioImages/AudioTaskStep.png | Bin .../FitnessImages/FitnessCountDownStep.png | Bin .../FitnessTaskCompletionStep.png | Bin .../FitnessImages/FitnessTaskIntroduction.png | Bin .../FitnessImages/FitnessTaskRestStep.png | Bin .../FitnessImages/FitnessTaskWalkStep.png | Bin .../FitnessImages/TaskIntroduction.png | Bin .../HolePegTaskImages/HolePegPlaceStep.png | Bin 0 -> 32490 bytes .../HolePegTaskImages/HolePegRemoveStep.png | Bin 0 -> 35493 bytes .../PsatTaskImages/Old/PSATStep1.png_old.png | Bin 0 -> 35220 bytes .../PsatTaskImages/Old/PSATStep2.png_old.png | Bin 0 -> 40473 bytes docs/ActiveTasks/PsatTaskImages/PSATStep1.png | Bin 35220 -> 32648 bytes docs/ActiveTasks/PsatTaskImages/PSATStep2.png | Bin 40473 -> 40695 bytes docs/ActiveTasks/PsatTaskImages/PSATStep3.png | Bin docs/ActiveTasks/PsatTaskImages/PSATStep4.png | Bin docs/ActiveTasks/PsatTaskImages/PSATStep5.png | Bin .../PsatActivityCompletionStep.png | Bin .../ReactionTimeStep1.png | Bin .../ReactionTimeStep2.png | Bin .../ReactionTimeStep3.png | Bin .../ReactionTimeStep4.png | Bin .../ShortWalkTaskStep1.png | Bin .../ShortWalkTaskStep2.png | Bin .../ShortWalkTaskStep3.png | Bin .../ShortWalkTaskStep4.png | Bin .../ShortWalkTaskStep5.png | Bin .../ShortWalkTaskStep6.png | Bin .../ShortWalkTaskStep7.png | Bin .../SpatialMemoryTestStep1.png | Bin .../SpatialMemoryTestStep2.png | Bin .../SpatialMemoryTestStep3.png | Bin .../SpatialMemoryTestStep3_1.png | Bin .../SpatialMemoryTestStep3_2.png | Bin .../SpatialMemoryTestStep3_3.png | Bin .../SpatialMemoryTestStep3_4.png | Bin .../SpatialMemoryTestStep4.png | Bin docs/ActiveTasks/TOHTaskImages/TOHStep1.png | Bin docs/ActiveTasks/TOHTaskImages/TOHStep2.png | Bin docs/ActiveTasks/TOHTaskImages/TOHStep3.png | Bin docs/ActiveTasks/TOHTaskImages/TOHStep4.png | Bin .../TimedWalkTaskImages/TimedWalkStep1.png | Bin .../TimedWalkStep1_notification.png | Bin .../TimedWalkTaskImages/TimedWalkStep2.png | Bin .../TimedWalkTaskImages/TimedWalkStep3.png | Bin .../TimedWalkTaskImages/TimedWalkStep4.png | Bin .../TimedWalkTaskImages/TimedWalkStep5.png | Bin .../TimedWalkTaskImages/TimedWalkStep6.png | Bin .../TimedWalkTaskImages/TimedWalkStep7.png | Bin .../ToneAudiometryTaskStep1.png | Bin .../ToneAudiometryTaskStep2.png | Bin .../ToneAudiometryTaskStep3.png | Bin .../ToneAudiometryTaskStep4.png | Bin .../ToneAudiometryTaskStep5.png | Bin .../ToneAudiometryTaskStep6.png | Bin .../TwoFingerTappingTaskStep1.png | Bin .../TwoFingerTappingTaskStep2.png | Bin .../TwoFingerTappingTaskStep3.png | Bin .../TwoFingerTappingTaskStep4.png | Bin .../ChartsAndGraphs-template.markdown | 387 +++++++++ .../ChartsImages/CustomizedChart.png | Bin 0 -> 68841 bytes .../ChartsImages/CustomizedLineGraph.png | Bin 0 -> 57963 bytes .../ChartsImages/DiscreteGraphChart.png | Bin 0 -> 48807 bytes .../ChartsImages/DiscreteGraphChart2.png | Bin 0 -> 47449 bytes .../ChartsImages/LineChart/LineChart1.png | Bin 0 -> 37294 bytes ...scereteGraphChartMultipleLinesOverview.png | Bin 0 -> 23467 bytes .../Overview/DiscreteGraphChartOverview.png | Bin 0 -> 19347 bytes .../LineGraphChartMultipleLinesOverview.png | Bin 0 -> 34831 bytes .../Overview/LineGraphChartOverview.png | Bin 0 -> 25396 bytes .../Overview/PieChartOverview.png | Bin 0 -> 29847 bytes .../PieChart/CustomTitlePieChart.png | Bin 0 -> 29604 bytes .../ChartsImages/PieChart/CustomizedChart.png | Bin 0 -> 28953 bytes .../ChartsImages/PieChart/chart1.png | Bin 0 -> 27528 bytes docs/Passcode/Passcode-template.markdown | 131 +++ docs/Passcode/Passcode.png | Bin 0 -> 87632 bytes docs/Passcode/Passcode_ask.png | Bin 0 -> 87632 bytes docs/Passcode/Passcode_edit.png | Bin 0 -> 74514 bytes docs/Passcode/Passcode_retry.png | Bin 0 -> 72328 bytes docs/Survey/CreatingSurveys-template.markdown | 38 +- .../SurveyImages/BooleanAnswerFormat.png | Bin docs/Survey/SurveyImages/DateAnswerFormat.png | Bin .../Survey/SurveyImages/EmailAnswerFormat.png | Bin docs/Survey/SurveyImages/FormStep.png | Bin docs/Survey/SurveyImages/FormStep_2.png | Bin .../SurveyImages/ImageChoiceAnswerFormat.png | Bin docs/Survey/SurveyImages/InstructionStep.png | Bin .../SurveyImages/LocationAnswerFormat.png | Bin 0 -> 102163 bytes .../SurveyImages/NavigableOrderedTasks.png | Bin 0 -> 35107 bytes .../SurveyImages/NumericAnswerFormat.png | Bin docs/Survey/SurveyImages/OrderedTasks.png | Bin 0 -> 30092 bytes docs/Survey/SurveyImages/QuestionStep.png | Bin docs/Survey/SurveyImages/ResultsHierarchy.png | Bin .../Survey/SurveyImages/ScaleAnswerFormat.png | Bin docs/Survey/SurveyImages/SurveyExample.png | Bin 0 -> 51914 bytes .../SurveyImages/SurveyIntroduction_1.png | Bin .../SurveyImages/SurveyIntroduction_2.png | Bin .../SurveyImages/TextAnswerFormat_1.png | Bin .../SurveyImages/TextAnswerFormat_2.png | Bin .../SurveyImages/TextChoiceAnswerFormat_1.png | Bin .../SurveyImages/TextChoiceAnswerFormat_2.png | Bin .../SurveyImages/TimeIntervalAnswerFormat.png | Bin .../SurveyImages/TimeOfTheDayAnswerFormat.png | Bin .../ValidatedTextAnswerFormat.png | Bin 0 -> 35219 bytes .../SurveyImages/ValuePickerAnswerFormat.png | Bin .../VerticalSliderAnswerFormat.png | Bin docs/Utility/Utility-template.markdown | 5 + docs/templates/html/document-template.html | 6 +- docs/templates/html/hierarchy-template.html | 6 +- docs/templates/html/index-template.html | 6 +- docs/templates/html/object-template.html | 6 +- .../ORKCatalog.xcodeproj/project.pbxproj | 16 +- .../ORKCatalog/ORKCatalog/AppDelegate.swift | 4 +- .../ORKCatalog/Charts/ChartDataSources.swift | 38 +- .../Charts/ChartListViewController.swift | 40 +- .../Results/ResultTableViewProviders.swift | 211 ++--- .../Results/ResultViewController.swift | 26 +- .../ORKCatalog/Tasks/TaskListRow.swift | 821 +++++++++--------- .../Tasks/TaskListViewController.swift | 55 +- .../ORKSample.xcodeproj/project.pbxproj | 6 +- .../ORKSample/ActivityViewController.swift | 56 +- .../ORKSample/ORKSample/AnimatableChart.swift | 2 +- samples/ORKSample/ORKSample/AppDelegate.swift | 26 +- .../ORKSample/ORKSample/ConsentDocument.swift | 40 +- .../DashboardTableViewController.swift | 8 +- .../ORKSample/DiscreteGraphDataSource.swift | 8 +- .../ORKSample/HKHealthStore+Queries.swift | 6 +- .../ORKSample/HealthClientType.swift | 4 +- .../ORKSample/ORKSample/HealthDataStep.swift | 16 +- .../HealthDataStepViewController.swift | 2 +- samples/ORKSample/ORKSample/Info.plist | 6 + .../IntroductionViewController.swift | 20 +- .../ORKSample/LineGraphDataSource.swift | 12 +- .../ORKSample/OnboardingViewController.swift | 20 +- .../ORKSample/PieChartDataSource.swift | 8 +- .../ORKSample/ProfileHeaderView.swift | 4 +- .../ORKSample/ProfileViewController.swift | 54 +- .../ORKSample/ResearchContainerSegue.swift | 18 +- .../ResearchContainerViewController.swift | 27 +- samples/ORKSample/ORKSample/StudyTasks.swift | 22 +- .../ORKSample/WithdrawViewController.swift | 2 +- 298 files changed, 9635 insertions(+), 1602 deletions(-) create mode 100644 ResearchKit/Common/ORKCollector.h create mode 100644 ResearchKit/Common/ORKCollector.m create mode 100644 ResearchKit/Common/ORKCollector_Internal.h create mode 100644 ResearchKit/Common/ORKDataCollectionManager.h create mode 100644 ResearchKit/Common/ORKDataCollectionManager.m create mode 100644 ResearchKit/Common/ORKDataCollectionManager_Internal.h create mode 100644 ResearchKit/Common/ORKHealthSampleQueryOperation.h create mode 100644 ResearchKit/Common/ORKHealthSampleQueryOperation.m create mode 100644 ResearchKit/Common/ORKMotionActivityQueryOperation.h create mode 100644 ResearchKit/Common/ORKMotionActivityQueryOperation.m create mode 100644 ResearchKit/Common/ORKOperation.h create mode 100644 ResearchKit/Common/ORKOperation.m create mode 100644 ResearchKit/Common/ORKVideoCaptureCameraPreviewView.h create mode 100644 ResearchKit/Common/ORKVideoCaptureCameraPreviewView.m create mode 100644 ResearchKit/Common/ORKVideoCaptureStep.h create mode 100644 ResearchKit/Common/ORKVideoCaptureStep.m create mode 100644 ResearchKit/Common/ORKVideoCaptureStepViewController.h create mode 100644 ResearchKit/Common/ORKVideoCaptureStepViewController.m create mode 100644 ResearchKit/Common/ORKVideoCaptureView.h create mode 100644 ResearchKit/Common/ORKVideoCaptureView.m create mode 100644 Testing/ORKTest/ORKTestTests/ORKDataCollectionTests.m create mode 100644 docs/Account/Account-template.markdown create mode 100644 docs/Account/Login.png create mode 100644 docs/Account/Registration.png create mode 100644 docs/Account/Verification.png mode change 100644 => 100755 docs/ActiveTasks/AudioImages/AboutTaskIntroduction.png mode change 100644 => 100755 docs/ActiveTasks/AudioImages/AudioTaskCompletionStep.png mode change 100644 => 100755 docs/ActiveTasks/AudioImages/AudioTaskCountdownStep.png mode change 100644 => 100755 docs/ActiveTasks/AudioImages/AudioTaskIntroduction.png mode change 100644 => 100755 docs/ActiveTasks/AudioImages/AudioTaskStep.png mode change 100644 => 100755 docs/ActiveTasks/FitnessImages/FitnessCountDownStep.png mode change 100644 => 100755 docs/ActiveTasks/FitnessImages/FitnessTaskCompletionStep.png mode change 100644 => 100755 docs/ActiveTasks/FitnessImages/FitnessTaskIntroduction.png mode change 100644 => 100755 docs/ActiveTasks/FitnessImages/FitnessTaskRestStep.png mode change 100644 => 100755 docs/ActiveTasks/FitnessImages/FitnessTaskWalkStep.png mode change 100644 => 100755 docs/ActiveTasks/FitnessImages/TaskIntroduction.png create mode 100644 docs/ActiveTasks/HolePegTaskImages/HolePegPlaceStep.png create mode 100644 docs/ActiveTasks/HolePegTaskImages/HolePegRemoveStep.png create mode 100755 docs/ActiveTasks/PsatTaskImages/Old/PSATStep1.png_old.png create mode 100755 docs/ActiveTasks/PsatTaskImages/Old/PSATStep2.png_old.png mode change 100644 => 100755 docs/ActiveTasks/PsatTaskImages/PSATStep3.png mode change 100644 => 100755 docs/ActiveTasks/PsatTaskImages/PSATStep4.png mode change 100644 => 100755 docs/ActiveTasks/PsatTaskImages/PSATStep5.png mode change 100644 => 100755 docs/ActiveTasks/PsatTaskImages/PsatActivityCompletionStep.png mode change 100644 => 100755 docs/ActiveTasks/ReactionTimeTaskImages/ReactionTimeStep1.png mode change 100644 => 100755 docs/ActiveTasks/ReactionTimeTaskImages/ReactionTimeStep2.png mode change 100644 => 100755 docs/ActiveTasks/ReactionTimeTaskImages/ReactionTimeStep3.png mode change 100644 => 100755 docs/ActiveTasks/ReactionTimeTaskImages/ReactionTimeStep4.png mode change 100644 => 100755 docs/ActiveTasks/ShortWalkTaskImages/ShortWalkTaskStep1.png mode change 100644 => 100755 docs/ActiveTasks/ShortWalkTaskImages/ShortWalkTaskStep2.png mode change 100644 => 100755 docs/ActiveTasks/ShortWalkTaskImages/ShortWalkTaskStep3.png mode change 100644 => 100755 docs/ActiveTasks/ShortWalkTaskImages/ShortWalkTaskStep4.png mode change 100644 => 100755 docs/ActiveTasks/ShortWalkTaskImages/ShortWalkTaskStep5.png mode change 100644 => 100755 docs/ActiveTasks/ShortWalkTaskImages/ShortWalkTaskStep6.png mode change 100644 => 100755 docs/ActiveTasks/ShortWalkTaskImages/ShortWalkTaskStep7.png mode change 100644 => 100755 docs/ActiveTasks/SpatialSpanMemoryTaskImages/SpatialMemoryTestStep1.png mode change 100644 => 100755 docs/ActiveTasks/SpatialSpanMemoryTaskImages/SpatialMemoryTestStep2.png mode change 100644 => 100755 docs/ActiveTasks/SpatialSpanMemoryTaskImages/SpatialMemoryTestStep3.png mode change 100644 => 100755 docs/ActiveTasks/SpatialSpanMemoryTaskImages/SpatialMemoryTestStep3_1.png mode change 100644 => 100755 docs/ActiveTasks/SpatialSpanMemoryTaskImages/SpatialMemoryTestStep3_2.png mode change 100644 => 100755 docs/ActiveTasks/SpatialSpanMemoryTaskImages/SpatialMemoryTestStep3_3.png mode change 100644 => 100755 docs/ActiveTasks/SpatialSpanMemoryTaskImages/SpatialMemoryTestStep3_4.png mode change 100644 => 100755 docs/ActiveTasks/SpatialSpanMemoryTaskImages/SpatialMemoryTestStep4.png mode change 100644 => 100755 docs/ActiveTasks/TOHTaskImages/TOHStep1.png mode change 100644 => 100755 docs/ActiveTasks/TOHTaskImages/TOHStep2.png mode change 100644 => 100755 docs/ActiveTasks/TOHTaskImages/TOHStep3.png mode change 100644 => 100755 docs/ActiveTasks/TOHTaskImages/TOHStep4.png mode change 100644 => 100755 docs/ActiveTasks/TimedWalkTaskImages/TimedWalkStep1.png mode change 100644 => 100755 docs/ActiveTasks/TimedWalkTaskImages/TimedWalkStep1_notification.png mode change 100644 => 100755 docs/ActiveTasks/TimedWalkTaskImages/TimedWalkStep2.png mode change 100644 => 100755 docs/ActiveTasks/TimedWalkTaskImages/TimedWalkStep3.png mode change 100644 => 100755 docs/ActiveTasks/TimedWalkTaskImages/TimedWalkStep4.png mode change 100644 => 100755 docs/ActiveTasks/TimedWalkTaskImages/TimedWalkStep5.png mode change 100644 => 100755 docs/ActiveTasks/TimedWalkTaskImages/TimedWalkStep6.png mode change 100644 => 100755 docs/ActiveTasks/TimedWalkTaskImages/TimedWalkStep7.png mode change 100644 => 100755 docs/ActiveTasks/ToneAudiometryTaskImages/ToneAudiometryTaskStep1.png mode change 100644 => 100755 docs/ActiveTasks/ToneAudiometryTaskImages/ToneAudiometryTaskStep2.png mode change 100644 => 100755 docs/ActiveTasks/ToneAudiometryTaskImages/ToneAudiometryTaskStep3.png mode change 100644 => 100755 docs/ActiveTasks/ToneAudiometryTaskImages/ToneAudiometryTaskStep4.png mode change 100644 => 100755 docs/ActiveTasks/ToneAudiometryTaskImages/ToneAudiometryTaskStep5.png mode change 100644 => 100755 docs/ActiveTasks/ToneAudiometryTaskImages/ToneAudiometryTaskStep6.png mode change 100644 => 100755 docs/ActiveTasks/TwoFingerTappingTaskImages/TwoFingerTappingTaskStep1.png mode change 100644 => 100755 docs/ActiveTasks/TwoFingerTappingTaskImages/TwoFingerTappingTaskStep2.png mode change 100644 => 100755 docs/ActiveTasks/TwoFingerTappingTaskImages/TwoFingerTappingTaskStep3.png mode change 100644 => 100755 docs/ActiveTasks/TwoFingerTappingTaskImages/TwoFingerTappingTaskStep4.png create mode 100644 docs/ChartsAndGraphs/ChartsAndGraphs-template.markdown create mode 100644 docs/ChartsAndGraphs/ChartsImages/CustomizedChart.png create mode 100644 docs/ChartsAndGraphs/ChartsImages/CustomizedLineGraph.png create mode 100644 docs/ChartsAndGraphs/ChartsImages/DiscreteGraphChart.png create mode 100644 docs/ChartsAndGraphs/ChartsImages/DiscreteGraphChart2.png create mode 100644 docs/ChartsAndGraphs/ChartsImages/LineChart/LineChart1.png create mode 100644 docs/ChartsAndGraphs/ChartsImages/Overview/DiscereteGraphChartMultipleLinesOverview.png create mode 100644 docs/ChartsAndGraphs/ChartsImages/Overview/DiscreteGraphChartOverview.png create mode 100644 docs/ChartsAndGraphs/ChartsImages/Overview/LineGraphChartMultipleLinesOverview.png create mode 100644 docs/ChartsAndGraphs/ChartsImages/Overview/LineGraphChartOverview.png create mode 100644 docs/ChartsAndGraphs/ChartsImages/Overview/PieChartOverview.png create mode 100644 docs/ChartsAndGraphs/ChartsImages/PieChart/CustomTitlePieChart.png create mode 100644 docs/ChartsAndGraphs/ChartsImages/PieChart/CustomizedChart.png create mode 100644 docs/ChartsAndGraphs/ChartsImages/PieChart/chart1.png create mode 100644 docs/Passcode/Passcode-template.markdown create mode 100644 docs/Passcode/Passcode.png create mode 100644 docs/Passcode/Passcode_ask.png create mode 100644 docs/Passcode/Passcode_edit.png create mode 100644 docs/Passcode/Passcode_retry.png mode change 100644 => 100755 docs/Survey/CreatingSurveys-template.markdown mode change 100644 => 100755 docs/Survey/SurveyImages/BooleanAnswerFormat.png mode change 100644 => 100755 docs/Survey/SurveyImages/DateAnswerFormat.png mode change 100644 => 100755 docs/Survey/SurveyImages/EmailAnswerFormat.png mode change 100644 => 100755 docs/Survey/SurveyImages/FormStep.png mode change 100644 => 100755 docs/Survey/SurveyImages/FormStep_2.png mode change 100644 => 100755 docs/Survey/SurveyImages/ImageChoiceAnswerFormat.png mode change 100644 => 100755 docs/Survey/SurveyImages/InstructionStep.png create mode 100644 docs/Survey/SurveyImages/LocationAnswerFormat.png create mode 100644 docs/Survey/SurveyImages/NavigableOrderedTasks.png mode change 100644 => 100755 docs/Survey/SurveyImages/NumericAnswerFormat.png create mode 100644 docs/Survey/SurveyImages/OrderedTasks.png mode change 100644 => 100755 docs/Survey/SurveyImages/QuestionStep.png mode change 100644 => 100755 docs/Survey/SurveyImages/ResultsHierarchy.png mode change 100644 => 100755 docs/Survey/SurveyImages/ScaleAnswerFormat.png create mode 100644 docs/Survey/SurveyImages/SurveyExample.png mode change 100644 => 100755 docs/Survey/SurveyImages/SurveyIntroduction_1.png mode change 100644 => 100755 docs/Survey/SurveyImages/SurveyIntroduction_2.png mode change 100644 => 100755 docs/Survey/SurveyImages/TextAnswerFormat_1.png mode change 100644 => 100755 docs/Survey/SurveyImages/TextAnswerFormat_2.png mode change 100644 => 100755 docs/Survey/SurveyImages/TextChoiceAnswerFormat_1.png mode change 100644 => 100755 docs/Survey/SurveyImages/TextChoiceAnswerFormat_2.png mode change 100644 => 100755 docs/Survey/SurveyImages/TimeIntervalAnswerFormat.png mode change 100644 => 100755 docs/Survey/SurveyImages/TimeOfTheDayAnswerFormat.png create mode 100644 docs/Survey/SurveyImages/ValidatedTextAnswerFormat.png mode change 100644 => 100755 docs/Survey/SurveyImages/ValuePickerAnswerFormat.png mode change 100644 => 100755 docs/Survey/SurveyImages/VerticalSliderAnswerFormat.png create mode 100644 docs/Utility/Utility-template.markdown diff --git a/README.md b/README.md index 2acf32cc..f76af7d1 100644 --- a/README.md +++ b/README.md @@ -67,7 +67,7 @@ Getting Started Requirements ------------ -The primary *ResearchKit framework* codebase supports *iOS* and requires *Xcode 7.0* or newer. The +The primary *ResearchKit framework* codebase supports *iOS* and requires *Xcode 8.0* or newer. The *ResearchKit framework* has a *Base SDK* version of *8.0*, meaning that apps using the *ResearchKit framework* can run on devices with *iOS 8.0* or newer. diff --git a/RELEASE-NOTES.md b/RELEASE-NOTES.md index 276802a5..14540282 100644 --- a/RELEASE-NOTES.md +++ b/RELEASE-NOTES.md @@ -1,5 +1,73 @@ # ResearchKit Release Notes +## ResearchKit 1.4 Release Notes + +*ResearchKit 1.4* supports *iOS* and requires *Xcode 8.0* or newer. The minimum supported *Base SDK* is *8.0*. + +In addition to general stabiltiy and performance improvements, *ResearchKit 1.4* includes the following new features and enhancements. + +- **New Active Task** + + - **Hand Tremor Task** + + *Contributed by [Shannon Young](https://github.com/syoung-smallwisdom).* + + The *Hand Tremor Task* asks the participant to hold the device with their most affected hand in various positions while accelerometer and motion data is captured. + + - **Walk Back and Forth Task** + + *Contributed by [Shannon Young](https://github.com/syoung-smallwisdom).* + + The *Walk Back and Forth Task* addresses the concern of researchers/participants who have difficulty locating an unobstructed path for 20 steps. + + Instructs users to walk and turn in a full circle, allowing the tests to be conducted in a smaller space. + +- **New Steps** + + - **Video Capture Step** + + *Contributed by [Apple Inc](https://github.com/researchkit).* + + The *Video Capture Step* provides a step to be used to record video. + + The step can be used as part of a survey to capture video respones as well. + + - **Review Step** + + *Contributed by [Oliver Schäfer](https://github.com/oliverschaefer).* + + The *Review Step* allows a participant to review and modify their answers to a survey. + + The step can be used in the middle of a survey, at the end of a survey, or a standalone module. + + - **Signature Step** + + *Contributed by [Oliver Schäfer](https://github.com/oliverschaefer).* + + The *Signature Step* provides an interface for a participant to sign their name. + + The step can be used for handwriting detection or simply to sign a document. + + - **Table Step** + + *Contributed by [Shannon Young](https://github.com/syoung-smallwisdom).* + + The *Table Step* provides a way to neatly display data in a table. + +- **Other Improvements** + + - **Data Collection Module** + + *Contributed by [Apple Inc](https://github.com/researchkit).* + + The *Data Collection Module* makes it even easier to aggregate data from HealthKit and device sensors. + + - **Tapping Test** + + *Contributed by [Michał Zaborowski](https://github.com/m1entus).* + + The *Tapping Test* is updated to include tap duration as part of the result. + ## ResearchKit 1.3 Release Notes diff --git a/ResearchKit.podspec b/ResearchKit.podspec index 91e8ebf9..cc6ea6b6 100644 --- a/ResearchKit.podspec +++ b/ResearchKit.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'ResearchKit' - s.version = '1.3.0' + s.version = '1.3.1' s.summary = 'ResearchKit is an open source software framework that makes it easy to create apps for medical research or for other research projects.' s.homepage = 'https://www.github.com/ResearchKit/ResearchKit' s.documentation_url = 'http://researchkit.github.io/docs/' diff --git a/ResearchKit.xcodeproj/project.pbxproj b/ResearchKit.xcodeproj/project.pbxproj index abf1107d..761686a5 100644 --- a/ResearchKit.xcodeproj/project.pbxproj +++ b/ResearchKit.xcodeproj/project.pbxproj @@ -82,6 +82,14 @@ 248604061B4C98760010C8A0 /* ORKAnswerFormatTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 248604051B4C98760010C8A0 /* ORKAnswerFormatTests.m */; }; 24898B0D1B7186C000B0E7E7 /* ORKScaleRangeImageView.h in Headers */ = {isa = PBXBuildFile; fileRef = 24898B0B1B7186C000B0E7E7 /* ORKScaleRangeImageView.h */; }; 24898B0E1B7186C000B0E7E7 /* ORKScaleRangeImageView.m in Sources */ = {isa = PBXBuildFile; fileRef = 24898B0C1B7186C000B0E7E7 /* ORKScaleRangeImageView.m */; }; + 2489F7AF1D65214D008DEF20 /* ORKVideoCaptureCameraPreviewView.h in Headers */ = {isa = PBXBuildFile; fileRef = 2489F7A71D65214D008DEF20 /* ORKVideoCaptureCameraPreviewView.h */; }; + 2489F7B01D65214D008DEF20 /* ORKVideoCaptureCameraPreviewView.m in Sources */ = {isa = PBXBuildFile; fileRef = 2489F7A81D65214D008DEF20 /* ORKVideoCaptureCameraPreviewView.m */; }; + 2489F7B11D65214D008DEF20 /* ORKVideoCaptureStep.h in Headers */ = {isa = PBXBuildFile; fileRef = 2489F7A91D65214D008DEF20 /* ORKVideoCaptureStep.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 2489F7B21D65214D008DEF20 /* ORKVideoCaptureStep.m in Sources */ = {isa = PBXBuildFile; fileRef = 2489F7AA1D65214D008DEF20 /* ORKVideoCaptureStep.m */; }; + 2489F7B31D65214D008DEF20 /* ORKVideoCaptureStepViewController.h in Headers */ = {isa = PBXBuildFile; fileRef = 2489F7AB1D65214D008DEF20 /* ORKVideoCaptureStepViewController.h */; }; + 2489F7B41D65214D008DEF20 /* ORKVideoCaptureStepViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 2489F7AC1D65214D008DEF20 /* ORKVideoCaptureStepViewController.m */; }; + 2489F7B51D65214D008DEF20 /* ORKVideoCaptureView.h in Headers */ = {isa = PBXBuildFile; fileRef = 2489F7AD1D65214D008DEF20 /* ORKVideoCaptureView.h */; }; + 2489F7B61D65214D008DEF20 /* ORKVideoCaptureView.m in Sources */ = {isa = PBXBuildFile; fileRef = 2489F7AE1D65214D008DEF20 /* ORKVideoCaptureView.m */; }; 249F44E51BCD9EAC0000D57E /* ORKFormStepViewController_Internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 249F44E31BCD9EAC0000D57E /* ORKFormStepViewController_Internal.h */; }; 24A4DA101B8D0F21009C797A /* ORKPasscodeStepView.h in Headers */ = {isa = PBXBuildFile; fileRef = 24A4DA0E1B8D0F21009C797A /* ORKPasscodeStepView.h */; }; 24A4DA111B8D0F21009C797A /* ORKPasscodeStepView.m in Sources */ = {isa = PBXBuildFile; fileRef = 24A4DA0F1B8D0F21009C797A /* ORKPasscodeStepView.m */; }; @@ -139,6 +147,18 @@ 865EA1691ABA1AA10037C68E /* ORKPicker.m in Sources */ = {isa = PBXBuildFile; fileRef = 865EA1671ABA1AA10037C68E /* ORKPicker.m */; }; 865EA16C1ABA1BE20037C68E /* ORKSurveyAnswerCellForPicker.h in Headers */ = {isa = PBXBuildFile; fileRef = 865EA16A1ABA1BE20037C68E /* ORKSurveyAnswerCellForPicker.h */; }; 865EA16D1ABA1BE20037C68E /* ORKSurveyAnswerCellForPicker.m in Sources */ = {isa = PBXBuildFile; fileRef = 865EA16B1ABA1BE20037C68E /* ORKSurveyAnswerCellForPicker.m */; }; + 866DA51F1D63D04700C9AF3F /* ORKCollector_Internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 866DA5131D63D04700C9AF3F /* ORKCollector_Internal.h */; }; + 866DA5201D63D04700C9AF3F /* ORKCollector.h in Headers */ = {isa = PBXBuildFile; fileRef = 866DA5141D63D04700C9AF3F /* ORKCollector.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 866DA5211D63D04700C9AF3F /* ORKCollector.m in Sources */ = {isa = PBXBuildFile; fileRef = 866DA5151D63D04700C9AF3F /* ORKCollector.m */; }; + 866DA5221D63D04700C9AF3F /* ORKDataCollectionManager_Internal.h in Headers */ = {isa = PBXBuildFile; fileRef = 866DA5161D63D04700C9AF3F /* ORKDataCollectionManager_Internal.h */; }; + 866DA5231D63D04700C9AF3F /* ORKDataCollectionManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 866DA5171D63D04700C9AF3F /* ORKDataCollectionManager.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 866DA5241D63D04700C9AF3F /* ORKDataCollectionManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 866DA5181D63D04700C9AF3F /* ORKDataCollectionManager.m */; }; + 866DA5251D63D04700C9AF3F /* ORKHealthSampleQueryOperation.h in Headers */ = {isa = PBXBuildFile; fileRef = 866DA5191D63D04700C9AF3F /* ORKHealthSampleQueryOperation.h */; }; + 866DA5261D63D04700C9AF3F /* ORKHealthSampleQueryOperation.m in Sources */ = {isa = PBXBuildFile; fileRef = 866DA51A1D63D04700C9AF3F /* ORKHealthSampleQueryOperation.m */; }; + 866DA5271D63D04700C9AF3F /* ORKMotionActivityQueryOperation.h in Headers */ = {isa = PBXBuildFile; fileRef = 866DA51B1D63D04700C9AF3F /* ORKMotionActivityQueryOperation.h */; }; + 866DA5281D63D04700C9AF3F /* ORKMotionActivityQueryOperation.m in Sources */ = {isa = PBXBuildFile; fileRef = 866DA51C1D63D04700C9AF3F /* ORKMotionActivityQueryOperation.m */; }; + 866DA5291D63D04700C9AF3F /* ORKOperation.h in Headers */ = {isa = PBXBuildFile; fileRef = 866DA51D1D63D04700C9AF3F /* ORKOperation.h */; }; + 866DA52A1D63D04700C9AF3F /* ORKOperation.m in Sources */ = {isa = PBXBuildFile; fileRef = 866DA51E1D63D04700C9AF3F /* ORKOperation.m */; }; 866F86011A96CBF3007B282C /* ORKSurveyAnswerCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 866F86001A96CBF3007B282C /* ORKSurveyAnswerCell.m */; }; 86AD910A1AB7AD1E00361FEB /* ORKNavigationContainerView.h in Headers */ = {isa = PBXBuildFile; fileRef = 86AD91081AB7AD1E00361FEB /* ORKNavigationContainerView.h */; }; 86AD910B1AB7AD1E00361FEB /* ORKNavigationContainerView.m in Sources */ = {isa = PBXBuildFile; fileRef = 86AD91091AB7AD1E00361FEB /* ORKNavigationContainerView.m */; }; @@ -609,6 +629,14 @@ 248604051B4C98760010C8A0 /* ORKAnswerFormatTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ORKAnswerFormatTests.m; sourceTree = ""; }; 24898B0B1B7186C000B0E7E7 /* ORKScaleRangeImageView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ORKScaleRangeImageView.h; sourceTree = ""; }; 24898B0C1B7186C000B0E7E7 /* ORKScaleRangeImageView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ORKScaleRangeImageView.m; sourceTree = ""; }; + 2489F7A71D65214D008DEF20 /* ORKVideoCaptureCameraPreviewView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ORKVideoCaptureCameraPreviewView.h; sourceTree = ""; }; + 2489F7A81D65214D008DEF20 /* ORKVideoCaptureCameraPreviewView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ORKVideoCaptureCameraPreviewView.m; sourceTree = ""; }; + 2489F7A91D65214D008DEF20 /* ORKVideoCaptureStep.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ORKVideoCaptureStep.h; sourceTree = ""; }; + 2489F7AA1D65214D008DEF20 /* ORKVideoCaptureStep.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ORKVideoCaptureStep.m; sourceTree = ""; }; + 2489F7AB1D65214D008DEF20 /* ORKVideoCaptureStepViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ORKVideoCaptureStepViewController.h; sourceTree = ""; }; + 2489F7AC1D65214D008DEF20 /* ORKVideoCaptureStepViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ORKVideoCaptureStepViewController.m; sourceTree = ""; }; + 2489F7AD1D65214D008DEF20 /* ORKVideoCaptureView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ORKVideoCaptureView.h; sourceTree = ""; }; + 2489F7AE1D65214D008DEF20 /* ORKVideoCaptureView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ORKVideoCaptureView.m; sourceTree = ""; }; 249F44E31BCD9EAC0000D57E /* ORKFormStepViewController_Internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ORKFormStepViewController_Internal.h; sourceTree = ""; }; 24A4DA0E1B8D0F21009C797A /* ORKPasscodeStepView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ORKPasscodeStepView.h; sourceTree = ""; }; 24A4DA0F1B8D0F21009C797A /* ORKPasscodeStepView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ORKPasscodeStepView.m; sourceTree = ""; }; @@ -667,6 +695,18 @@ 865EA1671ABA1AA10037C68E /* ORKPicker.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ORKPicker.m; sourceTree = ""; }; 865EA16A1ABA1BE20037C68E /* ORKSurveyAnswerCellForPicker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ORKSurveyAnswerCellForPicker.h; sourceTree = ""; }; 865EA16B1ABA1BE20037C68E /* ORKSurveyAnswerCellForPicker.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; lineEnding = 0; path = ORKSurveyAnswerCellForPicker.m; sourceTree = ""; xcLanguageSpecificationIdentifier = xcode.lang.objc; }; + 866DA5131D63D04700C9AF3F /* ORKCollector_Internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ORKCollector_Internal.h; sourceTree = ""; }; + 866DA5141D63D04700C9AF3F /* ORKCollector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ORKCollector.h; sourceTree = ""; }; + 866DA5151D63D04700C9AF3F /* ORKCollector.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ORKCollector.m; sourceTree = ""; }; + 866DA5161D63D04700C9AF3F /* ORKDataCollectionManager_Internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ORKDataCollectionManager_Internal.h; sourceTree = ""; }; + 866DA5171D63D04700C9AF3F /* ORKDataCollectionManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ORKDataCollectionManager.h; sourceTree = ""; }; + 866DA5181D63D04700C9AF3F /* ORKDataCollectionManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ORKDataCollectionManager.m; sourceTree = ""; }; + 866DA5191D63D04700C9AF3F /* ORKHealthSampleQueryOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ORKHealthSampleQueryOperation.h; sourceTree = ""; }; + 866DA51A1D63D04700C9AF3F /* ORKHealthSampleQueryOperation.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ORKHealthSampleQueryOperation.m; sourceTree = ""; }; + 866DA51B1D63D04700C9AF3F /* ORKMotionActivityQueryOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ORKMotionActivityQueryOperation.h; sourceTree = ""; }; + 866DA51C1D63D04700C9AF3F /* ORKMotionActivityQueryOperation.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ORKMotionActivityQueryOperation.m; sourceTree = ""; }; + 866DA51D1D63D04700C9AF3F /* ORKOperation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ORKOperation.h; sourceTree = ""; }; + 866DA51E1D63D04700C9AF3F /* ORKOperation.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ORKOperation.m; sourceTree = ""; }; 866F86001A96CBF3007B282C /* ORKSurveyAnswerCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ORKSurveyAnswerCell.m; sourceTree = ""; }; 86AD91081AB7AD1E00361FEB /* ORKNavigationContainerView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ORKNavigationContainerView.h; sourceTree = ""; }; 86AD91091AB7AD1E00361FEB /* ORKNavigationContainerView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; lineEnding = 0; path = ORKNavigationContainerView.m; sourceTree = ""; xcLanguageSpecificationIdentifier = xcode.lang.objc; }; @@ -1248,6 +1288,21 @@ name = Account; sourceTree = ""; }; + 2489F7A61D65213D008DEF20 /* Video Capture Step */ = { + isa = PBXGroup; + children = ( + 2489F7A91D65214D008DEF20 /* ORKVideoCaptureStep.h */, + 2489F7AA1D65214D008DEF20 /* ORKVideoCaptureStep.m */, + 2489F7AB1D65214D008DEF20 /* ORKVideoCaptureStepViewController.h */, + 2489F7AC1D65214D008DEF20 /* ORKVideoCaptureStepViewController.m */, + 2489F7A71D65214D008DEF20 /* ORKVideoCaptureCameraPreviewView.h */, + 2489F7A81D65214D008DEF20 /* ORKVideoCaptureCameraPreviewView.m */, + 2489F7AD1D65214D008DEF20 /* ORKVideoCaptureView.h */, + 2489F7AE1D65214D008DEF20 /* ORKVideoCaptureView.m */, + ); + name = "Video Capture Step"; + sourceTree = ""; + }; 24A4DA091B8D0CC8009C797A /* Passcode Step */ = { isa = PBXGroup; children = ( @@ -1415,6 +1470,25 @@ path = Accessibility; sourceTree = ""; }; + 866DA5121D63D01C00C9AF3F /* DataCollection */ = { + isa = PBXGroup; + children = ( + 866DA5131D63D04700C9AF3F /* ORKCollector_Internal.h */, + 866DA5141D63D04700C9AF3F /* ORKCollector.h */, + 866DA5151D63D04700C9AF3F /* ORKCollector.m */, + 866DA5161D63D04700C9AF3F /* ORKDataCollectionManager_Internal.h */, + 866DA5171D63D04700C9AF3F /* ORKDataCollectionManager.h */, + 866DA5181D63D04700C9AF3F /* ORKDataCollectionManager.m */, + 866DA5191D63D04700C9AF3F /* ORKHealthSampleQueryOperation.h */, + 866DA51A1D63D04700C9AF3F /* ORKHealthSampleQueryOperation.m */, + 866DA51B1D63D04700C9AF3F /* ORKMotionActivityQueryOperation.h */, + 866DA51C1D63D04700C9AF3F /* ORKMotionActivityQueryOperation.m */, + 866DA51D1D63D04700C9AF3F /* ORKOperation.h */, + 866DA51E1D63D04700C9AF3F /* ORKOperation.m */, + ); + name = DataCollection; + sourceTree = ""; + }; 86B623AF19520B770074CD3C /* ResearchKit */ = { isa = PBXGroup; children = ( @@ -1467,6 +1541,7 @@ B12EFF341AB2111200A80147 /* Step */, B12EFF331AB2110300A80147 /* Task */, B12EFF321AB2106F00A80147 /* UIKitCategories */, + 866DA5121D63D01C00C9AF3F /* DataCollection */, 24B3535D1BB21137009ED6F8 /* Utilities */, ); path = Common; @@ -1639,6 +1714,7 @@ B12EFF361AB2117B00A80147 /* Question Step */, B12EFF3C1AB211FB00A80147 /* Form Step */, D44239761AF17EE700559D96 /* Image Capture Step */, + 2489F7A61D65213D008DEF20 /* Video Capture Step */, 24A4DA091B8D0CC8009C797A /* Passcode Step */, FF5CA60F1D2C2630001660A3 /* Table Step */, BF9D62C41BD244C4000AA6A7 /* Wait Step */, @@ -2354,6 +2430,7 @@ 86C40D3C1A8D7C5C00081FAC /* ORKImageChoiceLabel.h in Headers */, BC4194291AE8453A00073D6B /* ORKObserver.h in Headers */, 10FF9AD31B79F5EA00ECB5B4 /* ORKHolePegTestRemovePegView.h in Headers */, + 866DA5201D63D04700C9AF3F /* ORKCollector.h in Headers */, BF9155AB1BDE8DA9007FA459 /* ORKWaitStepViewController.h in Headers */, BF9155A91BDE8DA9007FA459 /* ORKWaitStepView.h in Headers */, 86C40C661A8D7C5C00081FAC /* CMAccelerometerData+ORKJSONDictionary.h in Headers */, @@ -2373,6 +2450,7 @@ 86C40C221A8D7C5C00081FAC /* ORKCountdownStep.h in Headers */, 86C40DB61A8D7C5C00081FAC /* ORKSurveyAnswerCellForText.h in Headers */, 86C40E281A8D7C5C00081FAC /* ORKSignatureView.h in Headers */, + 2489F7AF1D65214D008DEF20 /* ORKVideoCaptureCameraPreviewView.h in Headers */, BCB6E65D1B7D534C000D5B34 /* ORKGraphChartView_Internal.h in Headers */, 86C40C8C1A8D7C5C00081FAC /* ORKActiveStepViewController.h in Headers */, 618DA0541A93D0D600E63AA8 /* UIView+ORKAccessibility.h in Headers */, @@ -2402,6 +2480,7 @@ 86C40D981A8D7C5C00081FAC /* ORKStepViewController_Internal.h in Headers */, 86B89ABB1AB3BECC001626A4 /* ORKStepHeaderView.h in Headers */, FF36A49D1D1A15FC00DE8470 /* ORKTableStepViewController.h in Headers */, + 2489F7B51D65214D008DEF20 /* ORKVideoCaptureView.h in Headers */, D42FEFB81AF7557000A124F8 /* ORKImageCaptureView.h in Headers */, 10FF9ADB1B7BA78400ECB5B4 /* ORKOrderedTask_Private.h in Headers */, 86C40D1A1A8D7C5C00081FAC /* ORKFormItem_Internal.h in Headers */, @@ -2419,6 +2498,7 @@ 865EA16C1ABA1BE20037C68E /* ORKSurveyAnswerCellForPicker.h in Headers */, 86C40C121A8D7C5C00081FAC /* ORKActiveStepQuantityView.h in Headers */, 86C40CCC1A8D7C5C00081FAC /* ORKImageSelectionView.h in Headers */, + 866DA5251D63D04700C9AF3F /* ORKHealthSampleQueryOperation.h in Headers */, 2441034F1B966D4C00EEAB0C /* ORKPasscodeViewController.h in Headers */, B11C549F1A9EF4A700265E61 /* ORKConsentSharingStepViewController.h in Headers */, BC4A213F1C85FC0000BFC271 /* ORKBarGraphChartView.h in Headers */, @@ -2436,7 +2516,9 @@ 86C40DD21A8D7C5C00081FAC /* ORKTextButton.h in Headers */, 86C40CD41A8D7C5C00081FAC /* ORKTableContainerView.h in Headers */, 86C40D0E1A8D7C5C00081FAC /* ORKCustomStepView_Internal.h in Headers */, + 866DA51F1D63D04700C9AF3F /* ORKCollector_Internal.h in Headers */, 86C40CF21A8D7C5C00081FAC /* ORKBodyLabel.h in Headers */, + 866DA5271D63D04700C9AF3F /* ORKMotionActivityQueryOperation.h in Headers */, 106FF2B41B71F18E004EACF2 /* ORKHolePegTestPlaceHoleView.h in Headers */, 86C40D921A8D7C5C00081FAC /* ORKStep_Private.h in Headers */, 86C40CC41A8D7C5C00081FAC /* ORKCompletionStepViewController.h in Headers */, @@ -2452,6 +2534,7 @@ FA7A9D331B0843A9005A2BEA /* ORKConsentSignatureFormatter.h in Headers */, 86C40C5A1A8D7C5C00081FAC /* ORKWalkingTaskStep.h in Headers */, BC1C032C1CA301E300869355 /* ORKHeightPicker.h in Headers */, + 866DA5231D63D04700C9AF3F /* ORKDataCollectionManager.h in Headers */, 86C40E361A8D7C5C00081FAC /* ORKVisualConsentTransitionAnimator.h in Headers */, 86AD910D1AB7AE4100361FEB /* ORKNavigationContainerView_Internal.h in Headers */, 2433C9E31B9A506F0052D375 /* ORKKeychainWrapper.h in Headers */, @@ -2507,6 +2590,7 @@ 86C40D301A8D7C5C00081FAC /* ORKHealthAnswerFormat.h in Headers */, 86C40C261A8D7C5C00081FAC /* ORKCountdownStepViewController.h in Headers */, 861D2AF01B8409D9008C4CD0 /* ORKTimedWalkContentView.h in Headers */, + 2489F7B31D65214D008DEF20 /* ORKVideoCaptureStepViewController.h in Headers */, 86C40E0C1A8D7C5C00081FAC /* ORKConsentReviewStepViewController.h in Headers */, 86C40C321A8D7C5C00081FAC /* ORKFitnessStepViewController.h in Headers */, FF5CA6121D2C2670001660A3 /* ORKTableStep.h in Headers */, @@ -2556,11 +2640,14 @@ 10864C9E1B27146B000F4158 /* ORKPSATStep.h in Headers */, 86C40D6E1A8D7C5C00081FAC /* ORKResult_Private.h in Headers */, 86C40D161A8D7C5C00081FAC /* ORKErrors.h in Headers */, + 866DA5291D63D04700C9AF3F /* ORKOperation.h in Headers */, 861D11B51AA7D073003C98A7 /* ORKTextChoiceCellGroup.h in Headers */, 24BC5CEE1BC345D900846B43 /* ORKLoginStep.h in Headers */, 147503B91AEE807C004B17F3 /* ORKToneAudiometryStep.h in Headers */, 106FF2A21B665B86004EACF2 /* ORKHolePegTestPlaceStepViewController.h in Headers */, 24A4DA101B8D0F21009C797A /* ORKPasscodeStepView.h in Headers */, + 86C40C9A1A8D7C5C00081FAC /* ORKDataLogger_Private.h in Headers */, + 2489F7B11D65214D008DEF20 /* ORKVideoCaptureStep.h in Headers */, 861D11AD1AA7951F003C98A7 /* ORKChoiceAnswerFormatHelper.h in Headers */, 86C40C461A8D7C5C00081FAC /* ORKSpatialSpanMemoryStepViewController.h in Headers */, 86C40C521A8D7C5C00081FAC /* ORKTappingIntervalStep.h in Headers */, @@ -2568,6 +2655,7 @@ 86C40DFE1A8D7C5C00081FAC /* ORKConsentDocument.h in Headers */, D442397D1AF17F7600559D96 /* ORKImageCaptureStepViewController.h in Headers */, 86C40C4A1A8D7C5C00081FAC /* ORKSpatialSpanTargetView.h in Headers */, + 866DA5221D63D04700C9AF3F /* ORKDataCollectionManager_Internal.h in Headers */, 86C40C1A1A8D7C5C00081FAC /* ORKAudioStep.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; @@ -2620,7 +2708,7 @@ attributes = { CLASSPREFIX = ORK; LastSwiftUpdateCheck = 0700; - LastUpgradeCheck = 0640; + LastUpgradeCheck = 0800; ORGANIZATIONNAME = researchkit.org; TargetAttributes = { 86CC8E991AC09332001CCD89 = { @@ -2758,7 +2846,7 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "if [ ! -x /usr/local/bin/appledoc ]; then\n echo \"error: appledoc is required for building ResearchKit's documentation. See http://appledoc.gentlebytes.com\" 1>&2\n exit 1\nfi\n\n/usr/local/bin/appledoc --print-settings --publish-docset --install-docset --output \"${BUILT_PRODUCTS_DIR}/docs/\" --include \"docs/ActiveTasks\" --include \"docs/InformedConsent\" --include \"docs/Overview\" --include \"docs/Survey\" --include \"docs/Charts\" --ignore \"docs/templates\" --templates \"docs/templates\" \"${BUILT_PRODUCTS_DIR}/ResearchKit.framework\" \"docs\"\n\necho \"note: Opening documentation in browser...\"\nopen \"$HOME/Library/Developer/Shared/Documentation/DocSets/org.researchkit.ResearchKit.docset/Contents/Resources/Documents/index.html\""; + shellScript = "if [ ! -x /usr/local/bin/appledoc ]; then\n echo \"error: appledoc is required for building ResearchKit's documentation. See http://appledoc.gentlebytes.com\" 1>&2\n exit 1\nfi\n\n/usr/local/bin/appledoc --print-settings --publish-docset --install-docset --output \"${BUILT_PRODUCTS_DIR}/docs/\" --include \"docs/ActiveTasks\" --include \"docs/InformedConsent\" --include \"docs/Overview\" --include \"docs/Survey\" --include \"docs/ChartsAndGraphs\" --include \"docs/Utility\" --include \"docs/Account\" --ignore \"docs/templates\" --templates \"docs/templates\" \"${BUILT_PRODUCTS_DIR}/ResearchKit.framework\" \"docs\"\n\necho \"note: Opening documentation in browser...\"\nopen \"$HOME/Library/Developer/Shared/Documentation/DocSets/org.researchkit.ResearchKit.docset/Contents/Resources/Documents/index.html\""; showEnvVarsInLog = 0; }; /* End PBXShellScriptBuildPhase section */ @@ -2806,14 +2894,17 @@ 86C40D4C1A8D7C5C00081FAC /* ORKLabel.m in Sources */, 86C40C9E1A8D7C5C00081FAC /* ORKDeviceMotionRecorder.m in Sources */, 86C40D961A8D7C5C00081FAC /* ORKStepViewController.m in Sources */, + 2489F7B21D65214D008DEF20 /* ORKVideoCaptureStep.m in Sources */, 86C40DF81A8D7C5C00081FAC /* ORKSignatureStepViewController.m in Sources */, BCB6E6531B7D533B000D5B34 /* ORKPieChartLegendCell.m in Sources */, + 866DA52A1D63D04700C9AF3F /* ORKOperation.m in Sources */, 86C40D8C1A8D7C5C00081FAC /* ORKSkin.m in Sources */, 86C40D221A8D7C5C00081FAC /* ORKFormStep.m in Sources */, 10FF9ACC1B79F22900ECB5B4 /* ORKHolePegTestRemoveStepViewController.m in Sources */, 86C40CD61A8D7C5C00081FAC /* ORKTableContainerView.m in Sources */, 2429D5731BBB5397003A512F /* ORKRegistrationStep.m in Sources */, 257FCE201B4D14E50001EF06 /* ORKTowerOfHanoiTowerView.m in Sources */, + 2489F7B61D65214D008DEF20 /* ORKVideoCaptureView.m in Sources */, 861D11AE1AA7951F003C98A7 /* ORKChoiceAnswerFormatHelper.m in Sources */, 106FF2AB1B690FD7004EACF2 /* ORKHolePegTestPlacePegView.m in Sources */, BF91559D1BDE8D7D007FA459 /* ORKReviewStep.m in Sources */, @@ -2829,6 +2920,7 @@ 86C40C801A8D7C5C00081FAC /* ORKActiveStep.m in Sources */, 86C40D721A8D7C5C00081FAC /* ORKRoundTappingButton.m in Sources */, 86C40E2A1A8D7C5C00081FAC /* ORKSignatureView.m in Sources */, + 866DA5281D63D04700C9AF3F /* ORKMotionActivityQueryOperation.m in Sources */, BCFF24BD1B0798D10044EC35 /* ORKResultPredicate.m in Sources */, 106FF2B51B71F18E004EACF2 /* ORKHolePegTestPlaceHoleView.m in Sources */, 106FF2A31B665B86004EACF2 /* ORKHolePegTestPlaceStepViewController.m in Sources */, @@ -2858,6 +2950,7 @@ 10FF9AD01B79F5CE00ECB5B4 /* ORKHolePegTestRemoveContentView.m in Sources */, 10FF9AD41B79F5EA00ECB5B4 /* ORKHolePegTestRemovePegView.m in Sources */, 618DA0561A93D0D600E63AA8 /* UIView+ORKAccessibility.m in Sources */, + 866DA5211D63D04700C9AF3F /* ORKCollector.m in Sources */, BC4A21401C85FC0000BFC271 /* ORKBarGraphChartView.m in Sources */, 86C40D3A1A8D7C5C00081FAC /* ORKHTMLPDFWriter.m in Sources */, 865EA1691ABA1AA10037C68E /* ORKPicker.m in Sources */, @@ -2878,6 +2971,7 @@ 147503BC1AEE807C004B17F3 /* ORKToneAudiometryStepViewController.m in Sources */, 86AD910B1AB7AD1E00361FEB /* ORKNavigationContainerView.m in Sources */, 865EA1631AB8DF750037C68E /* ORKDateTimePicker.m in Sources */, + 866DA5241D63D04700C9AF3F /* ORKDataCollectionManager.m in Sources */, 86C40C781A8D7C5C00081FAC /* HKSample+ORKJSONDictionary.m in Sources */, 86C40D421A8D7C5C00081FAC /* ORKInstructionStep.m in Sources */, 86C40C2C1A8D7C5C00081FAC /* ORKFitnessContentView.m in Sources */, @@ -2915,6 +3009,7 @@ BF9155AA1BDE8DA9007FA459 /* ORKWaitStepView.m in Sources */, 86C40D261A8D7C5C00081FAC /* ORKFormStepViewController.m in Sources */, BC5FAF851C6901A200057CF1 /* ORKChartTypes.m in Sources */, + 866DA5261D63D04700C9AF3F /* ORKHealthSampleQueryOperation.m in Sources */, FF5CA6131D2C2670001660A3 /* ORKTableStep.m in Sources */, 86C40C8A1A8D7C5C00081FAC /* ORKActiveStepTimerView.m in Sources */, 86AD91111AB7B8A600361FEB /* ORKActiveStepView.m in Sources */, @@ -2983,6 +3078,7 @@ B11C549B1A9EEF8800265E61 /* ORKConsentSharingStep.m in Sources */, 86C40DE01A8D7C5C00081FAC /* ORKVerticalContainerView.m in Sources */, BCD192EC1B81245500FCC08A /* ORKPieChartTitleTextView.m in Sources */, + 2489F7B41D65214D008DEF20 /* ORKVideoCaptureStepViewController.m in Sources */, 861D2AF71B843968008C4CD0 /* ORKCompletionStepViewController.m in Sources */, BCB6E65F1B7D534C000D5B34 /* ORKGraphChartView.m in Sources */, 24BC5CEF1BC345D900846B43 /* ORKLoginStep.m in Sources */, @@ -2990,6 +3086,7 @@ 86C40D661A8D7C5C00081FAC /* ORKQuestionStepViewController.m in Sources */, 86C40DF41A8D7C5C00081FAC /* ORKConsentReviewController.m in Sources */, 242C9E121BBE06DE0088B7F4 /* ORKVerificationStepView.m in Sources */, + 2489F7B01D65214D008DEF20 /* ORKVideoCaptureCameraPreviewView.m in Sources */, 147503BA1AEE807C004B17F3 /* ORKToneAudiometryStep.m in Sources */, FA7A9D301B083DD3005A2BEA /* ORKConsentSectionFormatter.m in Sources */, 86C40D2A1A8D7C5C00081FAC /* ORKFormTextView.m in Sources */, @@ -3077,6 +3174,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; @@ -3087,10 +3185,13 @@ CLANG_WARN_ENUM_CONVERSION = YES; CLANG_WARN_INT_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; COPY_PHASE_STRIP = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; ENABLE_TESTABILITY = YES; GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; GCC_OPTIMIZATION_LEVEL = 0; GCC_PREPROCESSOR_DEFINITIONS = ( "DEBUG=1", @@ -3115,6 +3216,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; @@ -3125,9 +3227,12 @@ CLANG_WARN_ENUM_CONVERSION = YES; CLANG_WARN_INT_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; COPY_PHASE_STRIP = YES; ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_NO_COMMON_BLOCKS = YES; GCC_SYMBOLS_PRIVATE_EXTERN = NO; GCC_WARN_64_TO_32_BIT_CONVERSION = YES; GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; @@ -3146,9 +3251,9 @@ 86CC8EA41AC09332001CCD89 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; CLANG_WARN_UNREACHABLE_CODE = YES; - EMBEDDED_CONTENT_CONTAINS_SWIFT = YES; ENABLE_STRICT_OBJC_MSGSEND = YES; FRAMEWORK_SEARCH_PATHS = "$(inherited)"; GCC_C_LANGUAGE_STANDARD = gnu99; @@ -3169,10 +3274,10 @@ 86CC8EA51AC09332001CCD89 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; CLANG_WARN_UNREACHABLE_CODE = YES; COPY_PHASE_STRIP = NO; - EMBEDDED_CONTENT_CONTAINS_SWIFT = YES; ENABLE_STRICT_OBJC_MSGSEND = YES; FRAMEWORK_SEARCH_PATHS = "$(inherited)"; GCC_C_LANGUAGE_STANDARD = gnu99; @@ -3207,7 +3312,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; INFOPLIST_FILE = "$(SRCROOT)/ResearchKit/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MODULEMAP_FILE = ResearchKit/module.modulemap; MTL_ENABLE_DEBUG_INFO = YES; @@ -3216,6 +3321,7 @@ SDKROOT = iphoneos; SKIP_INSTALL = YES; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 3.0; TARGETED_DEVICE_FAMILY = "1,2"; }; name = Debug; @@ -3238,7 +3344,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; INFOPLIST_FILE = "$(SRCROOT)/ResearchKit/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; MODULEMAP_FILE = ResearchKit/module.modulemap; MTL_ENABLE_DEBUG_INFO = NO; @@ -3246,6 +3352,8 @@ PRODUCT_NAME = ResearchKit; SDKROOT = iphoneos; SKIP_INSTALL = YES; + SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; + SWIFT_VERSION = 3.0; TARGETED_DEVICE_FAMILY = "1,2"; }; name = Release; diff --git a/ResearchKit.xcodeproj/xcshareddata/xcschemes/ResearchKit.xcscheme b/ResearchKit.xcodeproj/xcshareddata/xcschemes/ResearchKit.xcscheme index bc63f129..b5ace2f1 100644 --- a/ResearchKit.xcodeproj/xcshareddata/xcschemes/ResearchKit.xcscheme +++ b/ResearchKit.xcodeproj/xcshareddata/xcschemes/ResearchKit.xcscheme @@ -1,6 +1,6 @@ _alertThreshold)) || _failed; + + if (_alertLabel.hidden && show) { + UIAccessibilityPostNotification(UIAccessibilityAnnouncementNotification, _alertLabel.text); + } _alertLabel.hidden = !show; } @@ -385,11 +389,9 @@ static const CGFloat ValueLineMargin = 1.5; } - (NSString *)accessibilityLabel { - if (_alertLabel.isHidden) { - return _timerLabel.accessibilityLabel; - } - - return ORKAccessibilityStringForVariables(_timerLabel.accessibilityLabel, _alertLabel.accessibilityLabel); + NSString *timerAxString = _timerLabel.isHidden ? nil : _timerLabel.accessibilityLabel; + NSString *alertAxString = _alertLabel.isHidden ? nil : _alertLabel.accessibilityLabel; + return ORKAccessibilityStringForVariables(ORKLocalizedString(@"AX_AUDIO_BAR_GRAPH", nil), timerAxString, alertAxString); } - (UIAccessibilityTraits)accessibilityTraits { diff --git a/ResearchKit/ActiveTasks/ORKAudioLevelNavigationRule.h b/ResearchKit/ActiveTasks/ORKAudioLevelNavigationRule.h index d7578cd8..53d89a52 100644 --- a/ResearchKit/ActiveTasks/ORKAudioLevelNavigationRule.h +++ b/ResearchKit/ActiveTasks/ORKAudioLevelNavigationRule.h @@ -43,7 +43,7 @@ ORK_CLASS_AVAILABLE @param audioLevelStepIdentifier The identifier of the step with the audio file to check. @param destinationStepIdentifier The identifier of the destination step if audio test passes. - + @param recordingSettings Use key AVNumberOfChannelsKey to sepcify the number of recording channels. @return A audio level step navigation rule. */ - (instancetype)initWithAudioLevelStepIdentifier:(NSString *)audioLevelStepIdentifier diff --git a/ResearchKit/ActiveTasks/ORKAudioLevelNavigationRule.m b/ResearchKit/ActiveTasks/ORKAudioLevelNavigationRule.m index e5c258fb..9dd63030 100644 --- a/ResearchKit/ActiveTasks/ORKAudioLevelNavigationRule.m +++ b/ResearchKit/ActiveTasks/ORKAudioLevelNavigationRule.m @@ -135,8 +135,7 @@ Float32 const VolumeClamp = 60.0; return self.destinationStepIdentifier; } -- (BOOL)checkAudioLevelFromSoundFile:(NSURL *)fileURL -{ +- (BOOL)checkAudioLevelFromSoundFile:(NSURL *)fileURL { // Setup reader AVURLAsset *urlAsset = [AVURLAsset URLAssetWithURL:fileURL options:nil]; if (urlAsset.tracks.count == 0) { diff --git a/ResearchKit/ActiveTasks/ORKDataLogger.h b/ResearchKit/ActiveTasks/ORKDataLogger.h index e1ca49d7..09d4992f 100644 --- a/ResearchKit/ActiveTasks/ORKDataLogger.h +++ b/ResearchKit/ActiveTasks/ORKDataLogger.h @@ -70,6 +70,7 @@ NS_ASSUME_NONNULL_BEGIN @optional /** Tells the delegate that the maximum current log file lifetime changed. + @param dataLogger Source of this event. */ - (void)dataLoggerThresholdsDidChange:(ORKDataLogger *)dataLogger; diff --git a/ResearchKit/ActiveTasks/ORKHealthQuantityTypeRecorder.m b/ResearchKit/ActiveTasks/ORKHealthQuantityTypeRecorder.m index df6ccfd1..cc7a01d7 100644 --- a/ResearchKit/ActiveTasks/ORKHealthQuantityTypeRecorder.m +++ b/ResearchKit/ActiveTasks/ORKHealthQuantityTypeRecorder.m @@ -30,12 +30,10 @@ #import "ORKHealthQuantityTypeRecorder.h" - -#import "ORKDataLogger.h" - -#import "ORKRecorder_Internal.h" - #import "ORKHelpers_Internal.h" +#import "ORKDataLogger.h" +#import "ORKRecorder_Private.h" +#import "ORKRecorder_Internal.h" #import "HKSample+ORKJSONDictionary.h" @@ -148,22 +146,22 @@ static const NSInteger _HealthAnchoredQueryLimit = 100; } NSAssert(_samplePredicate != nil, @"Sample predicate should be non-nil if recording"); - ORKWeakTypeOf(self) weakSelf = self; + __weak typeof(self) weakSelf = self; void (^handleResults)(NSArray <__kindof HKSample *> *, HKQueryAnchor *, NSUInteger, NSError *) = ^ (NSArray *results, HKQueryAnchor *newAnchor, NSUInteger newAnchorValue, NSError *error) { - if (error) { - // An error in the query's not the end of the world: we'll probably get another chance. Just log it. - ORK_Log_Warning(@"Anchored query error: %@", error); - return; - } + if (error) { + // An error in the query's not the end of the world: we'll probably get another chance. Just log it. + ORK_Log_Warning(@"Anchored query error: %@", error); + return; + } - ORKStrongTypeOf(self) strongSelf = weakSelf; + __typeof(self) strongSelf = weakSelf; [strongSelf query_logResults:results withAnchor:newAnchor anchorValue:newAnchorValue]; }; HKAnchoredObjectQuery *anchoredQuery; if ([HKAnchoredObjectQuery instancesRespondToSelector:@selector(initWithType:predicate:anchor:limit:resultsHandler:)]) { - + anchoredQuery = [[HKAnchoredObjectQuery alloc] initWithType:_quantityType predicate:_samplePredicate anchor:_anchor @@ -172,9 +170,9 @@ static const NSInteger _HealthAnchoredQueryLimit = 100; ^(HKAnchoredObjectQuery *query, NSArray *sampleObjects, NSArray *deletedObjects, HKQueryAnchor *newAnchor, NSError *error) { handleResults(sampleObjects, newAnchor, 0, error); }]; - } - else if ([HKAnchoredObjectQuery instancesRespondToSelector:@selector(initWithType:predicate:anchor:limit:completionHandler:)]) { - + } else if ([HKAnchoredObjectQuery instancesRespondToSelector:@selector(initWithType:predicate:anchor:limit:completionHandler:)]) { +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wdeprecated-declarations" anchoredQuery = [[HKAnchoredObjectQuery alloc] initWithType:_quantityType predicate:_samplePredicate anchor:_anchorValue @@ -182,7 +180,8 @@ static const NSInteger _HealthAnchoredQueryLimit = 100; completionHandler: ^(HKAnchoredObjectQuery *query, NSArray<__kindof HKSample *> *results, NSUInteger newAnchor, NSError *error) { handleResults(results, nil, newAnchor, error); - }]; + }]; +#pragma clang diagnostic pop } else { NSAssert(NO, @"Could not instantiate an HKAnchoredObjectQuery."); @@ -194,10 +193,10 @@ static const NSInteger _HealthAnchoredQueryLimit = 100; [super start]; if (!_logger) { - NSError *error = nil; - _logger = [self makeJSONDataLoggerWithError:&error]; + NSError *err = nil; + _logger = [self makeJSONDataLoggerWithError:&err]; if (!_logger) { - [self finishRecordingWithError:error]; + [self finishRecordingWithError:err]; return; } } @@ -205,7 +204,7 @@ static const NSInteger _HealthAnchoredQueryLimit = 100; if (![HKHealthStore isHealthDataAvailable]) { [self finishRecordingWithError:[NSError errorWithDomain:NSCocoaErrorDomain code:NSFeatureUnsupportedError - userInfo:@{@"recorder": self}]]; + userInfo:@{@"recorder" : self}]]; return; } @@ -225,12 +224,12 @@ static const NSInteger _HealthAnchoredQueryLimit = 100; NSAssert(!_observerQuery, @"observer query should not exist if not recording"); - ORKWeakTypeOf(self) weakSelf = self; + __weak __typeof(self) weakSelf = self; _observerQuery = [[HKObserverQuery alloc] initWithSampleType:_quantityType predicate:_samplePredicate updateHandler:^(HKObserverQuery *query, HKObserverQueryCompletionHandler completionHandler, NSError *error) { - ORKStrongTypeOf(self) strongSelf = weakSelf; + __typeof(self) strongSelf = weakSelf; dispatch_async(dispatch_get_main_queue(), ^{ if (error) { diff --git a/ResearchKit/ActiveTasks/ORKHolePegTestPlaceHoleView.h b/ResearchKit/ActiveTasks/ORKHolePegTestPlaceHoleView.h index bc0889d2..8b26dff7 100644 --- a/ResearchKit/ActiveTasks/ORKHolePegTestPlaceHoleView.h +++ b/ResearchKit/ActiveTasks/ORKHolePegTestPlaceHoleView.h @@ -36,7 +36,7 @@ NS_ASSUME_NONNULL_BEGIN ORK_CLASS_AVAILABLE -@interface ORKHolePegTestPlaceHoleView : UIView +@interface ORKHolePegTestPlaceHoleView : UIView @property (nonatomic, assign, getter = isRotated) BOOL rotated; @property (nonatomic, assign, getter = isSuccess) BOOL success; diff --git a/ResearchKit/ActiveTasks/ORKHolePegTestRemovePegView.h b/ResearchKit/ActiveTasks/ORKHolePegTestRemovePegView.h index 4da98d1f..c444c38a 100644 --- a/ResearchKit/ActiveTasks/ORKHolePegTestRemovePegView.h +++ b/ResearchKit/ActiveTasks/ORKHolePegTestRemovePegView.h @@ -36,7 +36,7 @@ NS_ASSUME_NONNULL_BEGIN ORK_CLASS_AVAILABLE -@interface ORKHolePegTestRemovePegView : UIView +@interface ORKHolePegTestRemovePegView : UIView @property (nonatomic, assign, getter = isSuccess) BOOL success; diff --git a/ResearchKit/ActiveTasks/ORKTappingContentView.h b/ResearchKit/ActiveTasks/ORKTappingContentView.h index f040ffc8..f22417bb 100644 --- a/ResearchKit/ActiveTasks/ORKTappingContentView.h +++ b/ResearchKit/ActiveTasks/ORKTappingContentView.h @@ -48,6 +48,8 @@ NS_ASSUME_NONNULL_BEGIN @property (nonatomic, strong, readonly) ORKRoundTappingButton *tapButton2; +@property (nonatomic, assign) NSInteger lastTappedButton; + @end NS_ASSUME_NONNULL_END diff --git a/ResearchKit/ActiveTasks/ORKTappingContentView.m b/ResearchKit/ActiveTasks/ORKTappingContentView.m index 6a2973aa..01cda702 100644 --- a/ResearchKit/ActiveTasks/ORKTappingContentView.m +++ b/ResearchKit/ActiveTasks/ORKTappingContentView.m @@ -78,6 +78,7 @@ _progressView = [UIProgressView new]; _progressView.translatesAutoresizingMaskIntoConstraints = NO; _progressView.progressTintColor = [self tintColor]; + [_progressView setIsAccessibilityElement:YES]; [_progressView setAlpha:0]; _tapButton1 = [[ORKRoundTappingButton alloc] init]; @@ -88,6 +89,8 @@ _tapButton2.translatesAutoresizingMaskIntoConstraints = NO; [_tapButton2 setTitle:ORKLocalizedString(@"TAP_BUTTON_TITLE", nil) forState:UIControlStateNormal]; + _lastTappedButton = -1; + [self addSubview:_tapCaptionLabel]; [self addSubview:_tapCountLabel]; [self addSubview:_progressView]; @@ -132,9 +135,15 @@ - (void)setProgress:(CGFloat)progress animated:(BOOL)animated { [_progressView setProgress:progress animated:animated]; + + CGFloat previousAlpha = _progressView.alpha; [UIView animateWithDuration:animated ? 0.2 : 0 animations:^{ [_progressView setAlpha:(progress == 0) ? 0 : 1]; }]; + + if (UIAccessibilityIsVoiceOverRunning() && previousAlpha != _progressView.alpha) { + UIAccessibilityPostNotification(UIAccessibilityLayoutChangedNotification, nil); + } } - (void)resetStep:(ORKActiveStepViewController *)viewController { diff --git a/ResearchKit/ActiveTasks/ORKTappingIntervalStepViewController.m b/ResearchKit/ActiveTasks/ORKTappingIntervalStepViewController.m index 850b2269..9d8586a0 100644 --- a/ResearchKit/ActiveTasks/ORKTappingIntervalStepViewController.m +++ b/ResearchKit/ActiveTasks/ORKTappingIntervalStepViewController.m @@ -249,6 +249,11 @@ NSInteger index = (button == _tappingContentView.tapButton1) ? ORKTappingButtonIdentifierLeft : ORKTappingButtonIdentifierRight; + if ( _tappingContentView.lastTappedButton == index ) { + UIAccessibilityPostNotification(UIAccessibilityAnnouncementNotification, ORKLocalizedString(@"TAP_BUTTON_TITLE", nil)); + } + _tappingContentView.lastTappedButton = index; + [self receiveTouch:[[event touchesForView:button] anyObject] onButton:index]; } diff --git a/ResearchKit/Charts/ORKChartTypes.h b/ResearchKit/Charts/ORKChartTypes.h index c28cfc8f..b890d39a 100644 --- a/ResearchKit/Charts/ORKChartTypes.h +++ b/ResearchKit/Charts/ORKChartTypes.h @@ -37,7 +37,9 @@ NS_ASSUME_NONNULL_BEGIN - +/** + Defines the common attributes of chart values. + */ @protocol ORKValueCollectionType /** diff --git a/ResearchKit/Common/ORKAnswerFormat.h b/ResearchKit/Common/ORKAnswerFormat.h index 8fcc49ae..caeecbaf 100644 --- a/ResearchKit/Common/ORKAnswerFormat.h +++ b/ResearchKit/Common/ORKAnswerFormat.h @@ -1325,7 +1325,7 @@ ORK_CLASS_AVAILABLE @return An initialized height answer format. */ -- (instancetype)initWithMeasurementSystem:(ORKMeasurementSystem)easurementSystem NS_DESIGNATED_INITIALIZER; +- (instancetype)initWithMeasurementSystem:(ORKMeasurementSystem)measurementSystem NS_DESIGNATED_INITIALIZER; /** Indicates the measurement system used by the answer format. diff --git a/ResearchKit/Common/ORKAnswerFormat.m b/ResearchKit/Common/ORKAnswerFormat.m index f236850d..b371109d 100644 --- a/ResearchKit/Common/ORKAnswerFormat.m +++ b/ResearchKit/Common/ORKAnswerFormat.m @@ -1097,7 +1097,7 @@ static NSArray *ork_processTextChoices(NSArray *textChoices) { - (NSUInteger)hash { // Don't bother including everything - style is the main item. - return super.hash ^ self.defaultDate.hash ^ _style; + return ([super hash] & [self.defaultDate hash]) ^ _style; } - (NSCalendar *)currentCalendar { @@ -1263,7 +1263,7 @@ static NSArray *ork_processTextChoices(NSArray *textChoices) { - (NSUInteger)hash { // Don't bother including everything - style is the main item - return super.hash ^ self.unit.hash & _style; + return [super hash] ^ ([self.unit hash] & _style); } - (instancetype)initWithStyle:(ORKNumericAnswerStyle)style unit:(NSString *)unit { diff --git a/ResearchKit/Common/ORKChoiceViewCell.m b/ResearchKit/Common/ORKChoiceViewCell.m index 9a0f5874..08c293ac 100644 --- a/ResearchKit/Common/ORKChoiceViewCell.m +++ b/ResearchKit/Common/ORKChoiceViewCell.m @@ -210,11 +210,11 @@ static const CGFloat LabelRightMargin = 44.0; #pragma mark - Accessibility - (NSString *)accessibilityLabel { - if (self.accessoryType == UITableViewCellAccessoryDisclosureIndicator) { - return ORKAccessibilityStringForVariables(self.shortLabel.accessibilityLabel, self.longLabel.accessibilityLabel); - } - NSString *state = (self.selectedItem ? ORKLocalizedString(@"AX_SELECTED", nil) : ORKLocalizedString(@"AX_UNSELECTED", nil)); - return ORKAccessibilityStringForVariables(state, self.shortLabel.accessibilityLabel, self.longLabel.accessibilityLabel); + return ORKAccessibilityStringForVariables(self.shortLabel.accessibilityLabel, self.longLabel.accessibilityLabel); +} + +- (UIAccessibilityTraits)accessibilityTraits { + return UIAccessibilityTraitButton | (self.selectedItem ? UIAccessibilityTraitSelected : 0); } @end diff --git a/ResearchKit/Common/ORKCollector.h b/ResearchKit/Common/ORKCollector.h new file mode 100644 index 00000000..254b465b --- /dev/null +++ b/ResearchKit/Common/ORKCollector.h @@ -0,0 +1,173 @@ +/* + Copyright (c) 2016, Apple Inc. All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + + 3. Neither the name of the copyright holder(s) nor the names of any contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. No license is granted to the trademarks of + the copyright holders even if such marks are included in this software. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + + +#import +#import +#import +#import + + +NS_ASSUME_NONNULL_BEGIN + +@class ORKCollector; +@class ORKHealthCollector; +@class ORKMotionActivityCollector; + + +/** + Abstract class of data collector. + */ +ORK_CLASS_AVAILABLE +@interface ORKCollector : NSObject + +- (instancetype)init NS_UNAVAILABLE; + +/** + Identifier of this collector. + */ +@property (copy, readonly) NSString *identifier; + +/** + Serialization helper that produces serialized output. + Subclasses should implement to provide a default serialization for upload. + + @params objects The objects to be serialized. + + @return Serialized data object. + */ +- (NSData *)serializedDataForObjects:(NSArray *)objects; + +/** + Serialization helper that produces objects suitable for serialization to JSON. + + Subclasses should implement to provide a default JSON serialization for upload. + Called by `serializedDataForObjects:`. + + @params objects The objects to be serialized. + + @return Serializable dictionary objects. + */ +- (NSArray *)serializableObjectsForObjects:(NSArray *)objects; + +@end + + +/** + ORKHealthCollector collects HKSample. + + It cannot be initiated directly. + Use `addHealthCollectorWithSampleType:`to add one to a `ORKDataCollectionManager`. + */ +ORK_CLASS_AVAILABLE +@interface ORKHealthCollector : ORKCollector + +/** + HealthKit sample type. + */ +@property (copy, readonly) HKSampleType *sampleType; + +/** + HealthKit unit into which data should be collected. + */ +@property (copy, readonly) HKUnit *unit; + +/** + Samples should be collected starting at this date. + */ +@property (copy, readonly) NSDate *startDate; + +/** + Last anchor already seen. + */ +@property (copy, readonly) HKQueryAnchor *lastAnchor; + +@end + + +/** + ORKHealthCollector collects HKCorrelation. + + It cannot be initiated directly. + Use `addHealthCorrelationCollectorWithCorrelationType:`to add one to a `ORKDataCollectionManager`. + */ +ORK_CLASS_AVAILABLE +@interface ORKHealthCorrelationCollector : ORKCollector + +/** + HealthKit correlation type. + */ +@property (copy, readonly) HKCorrelationType *correlationType; + +/** + Array of HKSampleType expected in the correlation. + */ +@property (copy, readonly) NSArray *sampleTypes; + +/** + Array of HKUnit to use when serializing the samples collected (should be same size as sampleTypes). + */ +@property (copy, readonly) NSArray *units; + +/** + Samples should be collected starting at this date. + */ +@property (copy, readonly) NSDate *startDate; + +/** + Last anchor already seen. + */ +@property (copy, readonly) HKQueryAnchor *lastAnchor; + +@end + + +/** + ORKHealthCollector collects CMMotionActivity. + + It cannot be initiated directly. + Use `addMotionActivityCollectorWithStartDate:`to add one to a `ORKDataCollectionManager`. + */ +ORK_CLASS_AVAILABLE +@interface ORKMotionActivityCollector : ORKCollector + +/** + Samples should be collected starting at this date. + */ +@property (copy, readonly) NSDate *startDate; + +/** + Last anchor already seen. + */ +@property (copy, readonly) NSDate *lastDate; + +@end + +NS_ASSUME_NONNULL_END diff --git a/ResearchKit/Common/ORKCollector.m b/ResearchKit/Common/ORKCollector.m new file mode 100644 index 00000000..52545841 --- /dev/null +++ b/ResearchKit/Common/ORKCollector.m @@ -0,0 +1,360 @@ +/* + Copyright (c) 2016, Apple Inc. All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + + 3. Neither the name of the copyright holder(s) nor the names of any contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. No license is granted to the trademarks of + the copyright holders even if such marks are included in this software. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + + +#import "ORKCollector.h" +#import "ORKCollector_Internal.h" +#import "ORKHelpers_Internal.h" +#import "HKSample+ORKJSONDictionary.h" +#import "CMMotionActivity+ORKJSONDictionary.h" +#import "ORKHealthSampleQueryOperation.h" +#import "ORKMotionActivityQueryOperation.h" +#import + + +static NSString *const ItemsKey = @"items"; +static NSString *const ItemIdentifierFormat = @"org.researchkit.%@"; +static NSString *const ItemIdentifierFormatWithTwoPlaceholders = @"org.researchkit.%@.%@"; + +@implementation ORKCollector + +#pragma mark - NSSecureCoding + ++ (BOOL)supportsSecureCoding { + return YES; +} + +- (instancetype)initWithCoder:(NSCoder *)aDecoder { + self = [super init]; + if (self) { + ORK_DECODE_OBJ_CLASS(aDecoder, identifier, NSString); + } + return self; +} + +- (void)encodeWithCoder:(NSCoder *)aCoder { + ORK_ENCODE_OBJ(aCoder, identifier); +} + +- (instancetype)initWithIdentifier:(NSString *)identifier { + self = [super init]; + if (self) { + _identifier = identifier; + } + return self; +} + +- (id)copyWithZone:(NSZone *)zone { + ORKCollector *collector = [[[self class] allocWithZone:zone] initWithIdentifier:_identifier]; + return collector; +} + +- (NSData *)serializedDataForObjects:(NSArray *)objects { + + NSDictionary *output = @{ ItemsKey : [self serializableObjectsForObjects:objects] }; + + NSError *localError; + NSData *jsonData = [NSJSONSerialization dataWithJSONObject:output + options:NSJSONWritingPrettyPrinted + error:&localError]; + if (!jsonData) { + [NSException raise:NSInternalInconsistencyException format:@"Error serializing objects to JSON: %@", [localError localizedDescription]]; + return nil; + } + + return jsonData; +} + +- (ORKOperation *)collectionOperationWithManager:(ORKDataCollectionManager *)mananger { + ORKThrowMethodUnavailableException(); + return nil; +} + +- (NSArray *)serializableObjectsForObjects:(NSArray *)objects { + ORKThrowMethodUnavailableException(); + return nil; +} + +- (BOOL)isEqual:(id)object { + BOOL classEqual = [self class] == [object class]; + + __typeof(self) castObject = object; + return (classEqual && + ORKEqualObjects(_identifier, castObject.identifier)); +} + +@end + + +@implementation ORKHealthCollector : ORKCollector + +- (instancetype)initWithSampleType:(HKSampleType*)sampleType unit:(HKUnit*)unit startDate:(NSDate*)startDate { + NSString *itemIdentifier = [NSString stringWithFormat:ItemIdentifierFormatWithTwoPlaceholders, sampleType.identifier, unit.unitString]; + self = [super initWithIdentifier:itemIdentifier]; + if (self) { + _sampleType = sampleType; + _unit = unit; + _startDate = startDate; + } + return self; +} + ++ (BOOL)supportsSecureCoding { + return YES; +} + +- (instancetype)initWithCoder:(NSCoder *)aDecoder { + self = [super initWithCoder:aDecoder]; + if (self) { + ORK_DECODE_OBJ(aDecoder, sampleType); + ORK_DECODE_OBJ(aDecoder, unit); + ORK_DECODE_OBJ(aDecoder, startDate); + ORK_DECODE_OBJ(aDecoder, lastAnchor); + } + return self; +} + +- (void)encodeWithCoder:(NSCoder *)aCoder { + [super encodeWithCoder:aCoder]; + + ORK_ENCODE_OBJ(aCoder, sampleType); + ORK_ENCODE_OBJ(aCoder, unit); + ORK_ENCODE_OBJ(aCoder, startDate); + ORK_ENCODE_OBJ(aCoder, lastAnchor); +} + +- (NSArray *)serializableObjectsForObjects:(NSArray *)objects { + NSMutableArray *elements = [NSMutableArray arrayWithCapacity:[objects count]]; + for (HKSample *sample in objects) { + [elements addObject:[sample ork_JSONDictionaryWithOptions:(ORKSampleJSONOptions)(ORKSampleIncludeMetadata|ORKSampleIncludeSource|ORKSampleIncludeUUID) unit:self.unit]]; + } + + return elements; +} + +- (ORKOperation*)collectionOperationWithManager:(ORKDataCollectionManager*)mananger { + if (! [HKHealthStore isHealthDataAvailable]) { + return nil; + } + + return [[ORKHealthSampleQueryOperation alloc] initWithCollector:self mananger:mananger]; +} + +- (NSArray *)collectableSampleTypes { + return @[_sampleType]; +} + +- (instancetype)copyWithZone:(NSZone *)zone { + ORKHealthCollector *collector = [super copyWithZone:zone]; + collector->_startDate = self.startDate; + collector->_sampleType = self.sampleType; + collector->_unit = [self.unit copy]; + collector->_lastAnchor = self.lastAnchor; + + return collector; +} + +- (BOOL)isEqual:(id)object { + BOOL isParentSame = [super isEqual:object]; + + __typeof(self) castObject = object; + return (isParentSame && + ORKEqualObjects(_sampleType, castObject.sampleType) && + ORKEqualObjects(_unit, castObject.unit) && + ORKEqualObjects(_startDate, castObject.startDate) && + ORKEqualObjects(_lastAnchor, castObject.lastAnchor)); +} + +@end + + +@implementation ORKHealthCorrelationCollector : ORKCollector + +- (instancetype)initWithCorrelationType:(HKCorrelationType *)correlationType + sampleTypes:(NSArray *)sampleTypes + units:(NSArray *)units + startDate:(NSDate *)startDate { + NSString *itemIdentifier = [NSString stringWithFormat:ItemIdentifierFormat, correlationType.identifier]; + self = [super initWithIdentifier:itemIdentifier]; + if (self) { + _correlationType = correlationType; + _sampleTypes = sampleTypes; + _units = units; + _startDate = startDate; + } + return self; +} + ++ (BOOL)supportsSecureCoding { + return YES; +} + +- (instancetype)initWithCoder:(NSCoder *)aDecoder { + self = [super initWithCoder:aDecoder]; + if (self) { + ORK_DECODE_OBJ(aDecoder, correlationType); + ORK_DECODE_OBJ_ARRAY(aDecoder, sampleTypes, HKSampleType); + ORK_DECODE_OBJ_ARRAY(aDecoder, units, HKUnit); + ORK_DECODE_OBJ(aDecoder, startDate); + ORK_DECODE_OBJ(aDecoder, lastAnchor); + } + return self; +} + +- (void)encodeWithCoder:(NSCoder *)aCoder { + [super encodeWithCoder:aCoder]; + + ORK_ENCODE_OBJ(aCoder, correlationType); + ORK_ENCODE_OBJ(aCoder, sampleTypes); + ORK_ENCODE_OBJ(aCoder, units); + ORK_ENCODE_OBJ(aCoder, startDate); + ORK_ENCODE_OBJ(aCoder, lastAnchor); +} + +- (HKSampleType *)sampleType { + return _correlationType; +} + + +- (NSArray *)collectableSampleTypes { + return self.sampleTypes; +} + + +- (NSArray *)serializableObjectsForObjects:(NSArray *)objects { + NSMutableArray *elements = [NSMutableArray arrayWithCapacity:[objects count]]; + for (HKCorrelation *correlation in objects) { + [elements addObject:[correlation ork_JSONDictionaryWithOptions:(ORKSampleJSONOptions)(ORKSampleIncludeMetadata|ORKSampleIncludeSource|ORKSampleIncludeUUID) sampleTypes:self.sampleTypes units:self.units]]; + } + + return elements; +} + +- (ORKOperation *)collectionOperationWithManager:(ORKDataCollectionManager *)manager { + if (! [HKHealthStore isHealthDataAvailable]) { + return nil; + } + + return [[ORKHealthSampleQueryOperation alloc] initWithCollector:self mananger:manager]; +} + +- (instancetype)copyWithZone:(NSZone *)zone { + ORKHealthCorrelationCollector *collector = [super copyWithZone:zone]; + collector->_startDate = self.startDate; + collector->_correlationType = self.correlationType; + collector->_sampleTypes = [self.sampleTypes copy]; + collector->_units = [self.units copy]; + collector->_lastAnchor = self.lastAnchor; + + return collector; +} + +- (BOOL)isEqual:(id)object { + BOOL isParentSame = [super isEqual:object]; + + __typeof(self) castObject = object; + return (isParentSame && + ORKEqualObjects(_correlationType, castObject.correlationType) && + ORKEqualObjects(_sampleTypes, castObject.sampleTypes) && + ORKEqualObjects(_units, castObject.units) && + ORKEqualObjects(_startDate, castObject.startDate) && + ORKEqualObjects(_lastAnchor, castObject.lastAnchor)); +} + +@end + + +@implementation ORKMotionActivityCollector : ORKCollector + +- (instancetype)initWithStartDate:(NSDate *)startDate { + NSString *itemIdentifier = [NSString stringWithFormat:ItemIdentifierFormat, @"activity"]; + self = [super initWithIdentifier:itemIdentifier]; + if (self) { + _startDate = startDate; + } + return self; +} + ++ (BOOL)supportsSecureCoding { + return YES; +} + +- (instancetype)initWithCoder:(NSCoder *)aDecoder { + self = [super initWithCoder:aDecoder]; + if (self) { + ORK_DECODE_OBJ_CLASS(aDecoder, startDate, NSDate); + ORK_DECODE_OBJ_CLASS(aDecoder, lastDate, NSDate); + } + return self; +} + +- (void)encodeWithCoder:(NSCoder *)aCoder { + [super encodeWithCoder:aCoder]; + ORK_ENCODE_OBJ(aCoder, startDate); + ORK_ENCODE_OBJ(aCoder, lastDate); +} + +- (NSArray *)serializableObjectsForObjects:(NSArray *)objects { + // Expect an array of CMMotionActivity objects + NSMutableArray *elements = [NSMutableArray arrayWithCapacity:[objects count]]; + for (CMMotionActivity *activity in objects) { + [elements addObject:[activity ork_JSONDictionary]]; + } + + return elements; +} + +- (ORKOperation *)collectionOperationWithManager:(ORKDataCollectionManager *)mananger { + if (! [CMMotionActivityManager isActivityAvailable]) { + return nil; + } + + return [[ORKMotionActivityQueryOperation alloc] initWithCollector:self queryQueue:nil manager:mananger]; +} + +- (instancetype)copyWithZone:(NSZone *)zone { + ORKMotionActivityCollector *collector = [super copyWithZone:zone]; + collector->_startDate = self.startDate; + collector->_lastDate = self.lastDate; + + return collector; +} + +- (BOOL)isEqual:(id)object { + BOOL isParentSame = [super isEqual:object]; + + __typeof(self) castObject = object; + return (isParentSame && + ORKEqualObjects(_startDate, castObject.startDate) && + ORKEqualObjects(_lastDate, castObject.lastDate)); +} + +@end + diff --git a/ResearchKit/Common/ORKCollector_Internal.h b/ResearchKit/Common/ORKCollector_Internal.h new file mode 100644 index 00000000..40079369 --- /dev/null +++ b/ResearchKit/Common/ORKCollector_Internal.h @@ -0,0 +1,82 @@ +/* + Copyright (c) 2016, Apple Inc. All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + + 3. Neither the name of the copyright holder(s) nor the names of any contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. No license is granted to the trademarks of + the copyright holders even if such marks are included in this software. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + + +#import "ORKCollector.h" +#import "ORKDataCollectionManager_Internal.h" + + +@class ORKOperation; + +@interface ORKCollector () + +- (instancetype)initWithIdentifier:(NSString *)identifier; + +- (ORKOperation *)collectionOperationWithManager:(ORKDataCollectionManager *)mananger; + +@end + + +@protocol ORKHealthCollectable + +- (HKSampleType *)sampleType; +- (NSArray *)collectableSampleTypes; +- (NSDate *)startDate; +- (HKQueryAnchor *)lastAnchor; +- (void)setLastAnchor:(HKQueryAnchor *)lastAnchor; + +@end + + +@interface ORKHealthCollector() + +- (instancetype)initWithSampleType:(HKSampleType *)objectType unit:(HKUnit *)unit startDate:(NSDate *)startDate; + +@property (copy) HKQueryAnchor *lastAnchor; + +@end + + +@interface ORKHealthCorrelationCollector() + +- (instancetype)initWithCorrelationType:(HKCorrelationType *)objectType sampleTypes:(NSArray *)sampleTypes units:(NSArray *)units startDate:(NSDate *)startDate; + +@property (copy) HKQueryAnchor *lastAnchor; + +@end + + +@interface ORKMotionActivityCollector() + +- (instancetype)initWithStartDate:(NSDate *)startDate; + +@property (copy) NSDate *lastDate; + +@end diff --git a/ResearchKit/Common/ORKCountdownLabel.m b/ResearchKit/Common/ORKCountdownLabel.m index 73efd2bc..f4b518a6 100644 --- a/ResearchKit/Common/ORKCountdownLabel.m +++ b/ResearchKit/Common/ORKCountdownLabel.m @@ -34,14 +34,6 @@ #import "ORKHelpers_Internal.h" -@interface ORKCountdownLabel () - -@property (nonatomic, copy) NSString *minutesString; -@property (nonatomic, copy) NSString *secondsString; - -@end - - @implementation ORKCountdownLabel { NSInteger _currentCountDownValue; } @@ -64,18 +56,20 @@ - (void)setCountDownValue:(NSInteger)value { _currentCountDownValue = value; - _minutesString = [NSString stringWithFormat:@"%02ld", (long)(value / 60)]; - _secondsString= [NSString stringWithFormat:@"%02ld", (long)(value % 60)]; - [self renderText]; } - (void)renderText { - if (_minutesString.length == 0 || _secondsString.length == 0) { - return; - } - [self setText:[NSString stringWithFormat:@"%@:%@", _minutesString, _secondsString]]; - + static dispatch_once_t onceToken; + static NSDateComponentsFormatter *durationFormatter = nil; + dispatch_once(&onceToken, ^{ + durationFormatter = [NSDateComponentsFormatter new]; + [durationFormatter setUnitsStyle:NSDateComponentsFormatterUnitsStylePositional]; + durationFormatter.allowedUnits = NSCalendarUnitMinute|NSCalendarUnitSecond; + durationFormatter.zeroFormattingBehavior = NSDateComponentsFormatterZeroFormattingBehaviorPad; + }); + + [self setText:[durationFormatter stringFromTimeInterval:_currentCountDownValue]]; [self invalidateIntrinsicContentSize]; } diff --git a/ResearchKit/Common/ORKDataCollectionManager.h b/ResearchKit/Common/ORKDataCollectionManager.h new file mode 100644 index 00000000..c00ca3a8 --- /dev/null +++ b/ResearchKit/Common/ORKDataCollectionManager.h @@ -0,0 +1,200 @@ +/* + Copyright (c) 2016, Apple Inc. All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + + 3. Neither the name of the copyright holder(s) nor the names of any contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. No license is granted to the trademarks of + the copyright holders even if such marks are included in this software. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + + +#import +#import +#import + + +NS_ASSUME_NONNULL_BEGIN + +@class ORKCollector; +@class ORKHealthCollector; +@class ORKHealthCorrelationCollector; +@class ORKMotionActivityCollector; +@class ORKDataCollectionManager; + + +/** + The data collection manager delegate is responsible for delivering collected data objects, + and reporting errors during the operation. + */ +@protocol ORKDataCollectionManagerDelegate + +@optional +/** + Method for delivering the collected health data samples. + + @param collector The data collector. + @param samples Collected health data samples. + + @return Boolean indicating whether the samples has be accepted. + If NO is returned or this method is not implemented, the manager will stop the collection for the collector and repeat this same collection next time, + until the data is accepted. + */ +- (BOOL)healthCollector:(ORKHealthCollector *)collector didCollectSamples:(NSArray *)samples; + +/** + Method for delivering the collected health correlations. + + @param collector The data collector. + @param correlations Collected health correlation samples. + + @return Boolean indicating whether the samples has be accepted. + If NO is returned or this method is not implemented, the manager will stop the collection for the collector and repeat this same collection next time, + until the data is accepted. + */ +- (BOOL)healthCorrelationCollector:(ORKHealthCorrelationCollector *)collector didCollectCorrelations:(NSArray *)correlations; + +/** + Method for delivering the collected motion activities. + + @param collector The data collector. + @param motionActivities Collected motion activities. + + @return Boolean indicating whether the samples has be accepted. + If NO is returned or this method is not implemented, the manager will stop the collection for the collector and repeat this same collection next time, + until the data is accepted. + */ +- (BOOL)motionActivityCollector:(ORKMotionActivityCollector *)collector didCollectMotionActivities:(NSArray *)motionActivities; + +/** + Indicating the collection is completed for all the collectors. + + @param manager The data collection manager. + */ +- (void)dataCollectionManagerDidCompleteCollection:(ORKDataCollectionManager *)manager; + +/** + Method for reporting the deteted error during collection. + + @param collector The data collector. + @param error The error object. + */ +- (void)collector:(ORKCollector *)collector didDetectError:(NSError *)error; + +@end + +/** + The data collection manager is used to collect HealthKit data and CoreMotion data. + + It uses collectors to track data types to be collected. + Anchors are used to track progress of each types of data to avoid duplications. + Collected data samples are returned in the delegation methods, return YES to confirm the samples has been accepted. + */ +ORK_CLASS_AVAILABLE +@interface ORKDataCollectionManager : NSObject + +- (instancetype)init NS_UNAVAILABLE; + +/** + Initiate the manager with a persistence directory. + The directory is used to store the configurations and progress of the collectors. + + @param directoryURL URL path for the directory. + + @return Initiated ORKDataCollectionManager instance. + */ +- (instancetype)initWithPersistenceDirectoryURL:(NSURL *)directoryURL NS_DESIGNATED_INITIALIZER; + +/** + An array of collectors. + */ +@property (copy, readonly) NSArray *collectors; + +/** + Implement the delegate to receive collected data objects. + */ +@property (nonatomic, weak, nullable) id delegate; + +/** + Add a collector for HealthKit quantity and category samples. + + @param sampleType HealthKit sample type. + @param unit HealthKit unit into which data should be collected. + @param startDate Samples should be collected starting at this date. + @param error Any error detected during this operation. + + @return Initiated health collector. + */ +- (ORKHealthCollector *)addHealthCollectorWithSampleType:(HKSampleType *)sampleType + unit:(HKUnit *)unit + startDate:(NSDate *)startDate + error:(NSError * _Nullable *)error; + +/** + Add a collector for HealthKit correlations. + + @param correlationType HealthKit correlation type. + @param sampleTypes Array of HKSampleType expected in the correlation. + @param units Array of HKUnit to use when serializing the samples collected (should be same size as sampleTypes). + @param startDate Samples should be collected starting at this date. + @param error Any error detected during this operation. + + @return Initiated health correlation collector. + */ +- (ORKHealthCorrelationCollector *)addHealthCorrelationCollectorWithCorrelationType:(HKCorrelationType *)correlationType + sampleTypes:(NSArray *)sampleTypes + units:(NSArray *)units + startDate:(NSDate *)startDate + error:(NSError * _Nullable *)error; + +/** + Add a collector for motion activity. + + @param startDate When data collection should start. + @param error Error during this operation. + + @return Initiated motion activity collector. + */ +- (ORKMotionActivityCollector *)addMotionActivityCollectorWithStartDate:(NSDate *)startDate + error:(NSError * _Nullable *)error; + +/** + Remove a collector. + + @param collector The collector to be removed. + @param error Error during this operation. + + @return If this operation is successful. + */ +- (BOOL)removeCollector:(ORKCollector *)collector error:(NSError* _Nullable *)error; + +/** + Start data collection. + This method triggers running all the RKCollector collections associated with the present manager. + When the collection is completed, delegate recieves a method call `dataCollectionManagerDidCompleteCollection:`. + */ +- (void)startCollection; + +@end + +NS_ASSUME_NONNULL_END diff --git a/ResearchKit/Common/ORKDataCollectionManager.m b/ResearchKit/Common/ORKDataCollectionManager.m new file mode 100644 index 00000000..f4650bee --- /dev/null +++ b/ResearchKit/Common/ORKDataCollectionManager.m @@ -0,0 +1,342 @@ +/* + Copyright (c) 2016, Apple Inc. All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + + 3. Neither the name of the copyright holder(s) nor the names of any contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. No license is granted to the trademarks of + the copyright holders even if such marks are included in this software. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + + +#import "ORKDataCollectionManager_Internal.h" +#import "ORKCollector_Internal.h" +#import "ORKOperation.h" +#import "ORKHelpers_Internal.h" +#import + + +static NSString *const ORKDataCollectionPersistenceFileName = @".dataCollection.ork.data"; + +@implementation ORKDataCollectionManager { + dispatch_queue_t _queue; + NSOperationQueue *_operationQueue; + NSString * _Nonnull _managedDirectory; + NSArray *_collectors; + HKHealthStore *_healthStore; + CMMotionActivityManager *_activityManager; + NSMutableArray *_completionHandlers; +} + +- (instancetype)initWithPersistenceDirectoryURL:(NSURL *)directoryURL { + + self = [super init]; + if (self) { + if (directoryURL == nil) { + @throw [NSException exceptionWithName:NSInvalidArgumentException reason:@"directory cannot be nil" userInfo:nil]; + } + + _managedDirectory = directoryURL.path; + + BOOL isDir; + NSFileManager *defaultManager = [NSFileManager defaultManager]; + BOOL directoryExist = [defaultManager fileExistsAtPath:_managedDirectory isDirectory:&isDir]; + + if ((directoryExist && isDir == NO)) { + @throw [NSException exceptionWithName:NSInvalidArgumentException reason:@"URL is not a directory" userInfo:nil]; + } + + // Create directory if needed + if (NO == directoryExist) { + NSError *error; + [defaultManager createDirectoryAtPath:_managedDirectory withIntermediateDirectories:YES attributes:nil error:&error]; + + if (error) { + @throw [NSException exceptionWithName:NSInvalidArgumentException reason:@"Failed to create directory at URL." userInfo:@{@"error" : error}]; + } + } + + // Create persistance file if needed + if (![defaultManager fileExistsAtPath:self.persistFilePath]) { + _collectors = [NSArray new]; + [self persistCollectors]; + } + + NSString *queueId = [@"ResearchKit.DataCollection." stringByAppendingString:_managedDirectory]; + _queue = dispatch_queue_create([queueId cStringUsingEncoding:NSUTF8StringEncoding], DISPATCH_QUEUE_SERIAL); + _operationQueue = [[NSOperationQueue alloc] init]; + } + return self; +} + +#pragma mark Data collection + +// dispatch_sync, but tries not to deadlock if we're already on the specified queue +static inline void dispatch_sync_if_not_on_queue(dispatch_queue_t queue, dispatch_block_t block) { + dispatch_queue_set_specific(queue, (__bridge const void *)(queue), (void*)1, NULL); + if (dispatch_get_specific((__bridge const void *)queue)) { + block(); + } else { + dispatch_sync(queue, block); + } +} + +- (void)onWorkQueueSync:(BOOL (^)(ORKDataCollectionManager *manager))block { + dispatch_sync_if_not_on_queue(_queue, ^{ + if (block(self)) { + [self persistCollectors]; + } + }); +} + +- (void)onWorkQueueAsync:(BOOL (^)(ORKDataCollectionManager *manager))block { + dispatch_async(_queue, ^{ + if (block(self)) { + [self persistCollectors]; + } + }); +} + +- (HKHealthStore *)healthStore { + if (!_healthStore && [HKHealthStore isHealthDataAvailable]){ + _healthStore = [[HKHealthStore alloc] init]; + } + return _healthStore; +} + +- (CMMotionActivityManager *)activityManager { + if (!_activityManager && [CMMotionActivityManager isActivityAvailable]) { + _activityManager = [[CMMotionActivityManager alloc] init]; + } + return _activityManager; +} + +- (NSArray *)collectors { + if (_collectors == nil) { + _collectors = [NSKeyedUnarchiver unarchiveObjectWithFile:[self persistFilePath]]; + if (_collectors == nil) { + @throw [NSException exceptionWithName:NSGenericException reason: [NSString stringWithFormat:@"Failed to read from path %@", [self persistFilePath]] userInfo:nil]; + } + } + return _collectors; +} + +- (NSString * _Nonnull)persistFilePath { + return [_managedDirectory stringByAppendingPathComponent:ORKDataCollectionPersistenceFileName]; +} + +- (void)persistCollectors { + NSArray *collectors = self.collectors; + + NSData *data = [NSKeyedArchiver archivedDataWithRootObject:collectors]; + NSError *error; + [data writeToFile:[self persistFilePath] options:NSDataWritingAtomic|NSDataWritingFileProtectionComplete error:&error]; + + if (error) { + @throw [NSException exceptionWithName:NSGenericException reason: [NSString stringWithFormat:@"Failed to write to path %@", [self persistFilePath]] userInfo:nil]; + } +} + +- (void)addCollector:(ORKCollector *)collector { + NSMutableArray *collectors = [self.collectors mutableCopy]; + [collectors addObject:collector]; + _collectors = [collectors copy]; +} + +- (ORKHealthCollector *)addHealthCollectorWithSampleType:(HKSampleType*)sampleType unit:(HKUnit *)unit startDate:(NSDate *)startDate error:(NSError**)error { + + if (!sampleType) { + @throw [NSException exceptionWithName:ORKInvalidArgumentException reason:@"sampleType cannot be nil" userInfo:nil]; + } + if (!unit) { + @throw [NSException exceptionWithName:ORKInvalidArgumentException reason:@"unit cannot be nil" userInfo:nil]; + } + + __block ORKHealthCollector *healthCollector = nil; + + [self onWorkQueueSync:^BOOL(ORKDataCollectionManager *manager){ + + ORKHealthCollector *collector = [[ORKHealthCollector alloc] initWithSampleType:sampleType unit:unit startDate:startDate]; + [self addCollector:collector]; + healthCollector = collector; + + return YES; + }]; + + return healthCollector; +} + +- (ORKHealthCorrelationCollector *)addHealthCorrelationCollectorWithCorrelationType:(HKCorrelationType *)correlationType + sampleTypes:(NSArray *)sampleTypes + units:(NSArray *)units + startDate:(NSDate *)startDate + error:(NSError * __autoreleasing *)error { + if (!correlationType) { + @throw [NSException exceptionWithName:ORKInvalidArgumentException reason:@"correlationType cannot be nil" userInfo:nil]; + } + if (![sampleTypes count]) { + @throw [NSException exceptionWithName:ORKInvalidArgumentException reason:@"sampleTypes cannot be empty" userInfo:nil]; + } + if ([units count] != [sampleTypes count]) { + @throw [NSException exceptionWithName:ORKInvalidArgumentException reason:@"units should be same length as sampleTypes" userInfo:nil]; + } + + __block ORKHealthCorrelationCollector *healthCorrelationCollector = nil; + [self onWorkQueueSync:^BOOL(ORKDataCollectionManager *manager) { + + ORKHealthCorrelationCollector *collector = [[ORKHealthCorrelationCollector alloc] initWithCorrelationType:correlationType + sampleTypes:sampleTypes + units:units + startDate:startDate]; + [self addCollector:collector]; + healthCorrelationCollector = collector; + return YES; + }]; + + return healthCorrelationCollector; +} + +- (ORKMotionActivityCollector *)addMotionActivityCollectorWithStartDate:(NSDate *)startDate + error:(NSError* __autoreleasing *)error { + + __block ORKMotionActivityCollector *motionActivityCollector = nil; + + [self onWorkQueueSync:^BOOL(ORKDataCollectionManager *manager) { + + ORKMotionActivityCollector *collector = [[ORKMotionActivityCollector alloc] initWithStartDate:startDate]; + [self addCollector:collector]; + motionActivityCollector = collector; + + return YES; + }]; + + return motionActivityCollector; +} + +- (BOOL)removeCollector:(ORKCollector *)collector error:(NSError* __autoreleasing *)error { + if (!collector) { + @throw [NSException exceptionWithName:ORKInvalidArgumentException reason:@"collector cannot be nil" userInfo:nil]; + } + + __block BOOL success = NO; + __block NSError *errorOut = nil; + [self onWorkQueueSync:^BOOL(ORKDataCollectionManager *manager) { + + if (_operationQueue.operationCount > 0) { + ORK_Log_Debug(@"[startWithObserving] returned due to operation queue is not empty (queue size = %@)", @(_operationQueue.operationCount)); + errorOut = [NSError errorWithDomain:ORKErrorDomain code:ORKErrorException userInfo:@{NSLocalizedFailureReasonErrorKey: @"Cannot remove collector during collection."}]; + return NO; + } + + NSMutableArray *collectors = [self.collectors mutableCopy]; + + if (![collectors containsObject:collector]) { + errorOut = [NSError errorWithDomain:ORKErrorDomain code:ORKErrorObjectNotFound userInfo:@{NSLocalizedFailureReasonErrorKey: @"Cannot find collector."}]; + return NO; + } + + + // Remove the collector from the collectors array + [collectors removeObject:collector]; + _collectors = [collectors copy]; + + success = YES; + return YES; + }]; + + if (error) { + *error = errorOut; + } + return success; +} + +- (void)startCollection { + + __weak typeof(self) weakSelf = self; + NSMutableArray *operations = [NSMutableArray array]; + [self onWorkQueueAsync:^BOOL(ORKDataCollectionManager *manager) { + + if (_operationQueue.operationCount > 0) { + ORK_Log_Debug(@"[startWithObserving] returned due to operation queue is not empty (queue size = %@)", @(_operationQueue.operationCount)); + return NO; + } + + self.lastCollectionDate = [NSDate date]; + + // Create an operation for each collector + for (ORKCollector *collector in self.collectors) { + + __block ORKOperation *operation = [collector collectionOperationWithManager:self]; + + // operation could be nil if this type of data collection is not possible + // on this device. + if (operation) { + __block ORKOperation *blockOp = operation; + + [operation setCompletionBlock:^{ + typeof(self) strongSelf = weakSelf; + if (blockOp.error) { + id delegate = strongSelf.delegate; + if (delegate && [delegate respondsToSelector:@selector(collector:didDetectError:)]) { + [delegate collector:collector didDetectError:blockOp.error]; + } + } + }]; + + [operations addObject:operation]; + } + } + + NSBlockOperation *completionOperation = [NSBlockOperation new]; + [completionOperation addExecutionBlock:^{ + + typeof(self) strongSelf = weakSelf; + [strongSelf onWorkQueueSync:^BOOL(ORKDataCollectionManager *manager) { + if (_delegate && [_delegate respondsToSelector:@selector(dataCollectionManagerDidCompleteCollection:)]) { + [_delegate dataCollectionManagerDidCompleteCollection:self]; + } + + for (HKObserverQueryCompletionHandler handler in _completionHandlers) { + handler(); + } + [_completionHandlers removeAllObjects]; + + return NO; + }]; + }]; + + for (NSOperation *operation in operations) { + [completionOperation addDependency:operation]; + } + + ORK_Log_Debug(@"Data Collection queue - new operations:\n%@", operations); + [_operationQueue addOperations:operations waitUntilFinished:NO]; + [_operationQueue addOperation:completionOperation]; + + // No need to persist collectors + return NO; + }]; + +} + +@end diff --git a/ResearchKit/Common/ORKDataCollectionManager_Internal.h b/ResearchKit/Common/ORKDataCollectionManager_Internal.h new file mode 100644 index 00000000..1465471e --- /dev/null +++ b/ResearchKit/Common/ORKDataCollectionManager_Internal.h @@ -0,0 +1,51 @@ +/* + Copyright (c) 2016, Apple Inc. All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + + 3. Neither the name of the copyright holder(s) nor the names of any contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. No license is granted to the trademarks of + the copyright holders even if such marks are included in this software. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + + +#import "ORKDataCollectionManager.h" +#import + + +@interface ORKDataCollectionManager () + +@property (nonatomic, strong, readonly) HKHealthStore *healthStore; + +@property (nonatomic, strong, readonly) CMMotionActivityManager *activityManager; + +- (void)onWorkQueueSync:(BOOL (^)(ORKDataCollectionManager *manager))block; + +- (void)onWorkQueueAsync:(BOOL (^)(ORKDataCollectionManager *manager))block; + +/** + Last collection date. + */ +@property (nonatomic, strong) NSDate *lastCollectionDate; + +@end diff --git a/ResearchKit/Common/ORKFormStepViewController.m b/ResearchKit/Common/ORKFormStepViewController.m index f7ea62a5..3e8122fc 100644 --- a/ResearchKit/Common/ORKFormStepViewController.m +++ b/ResearchKit/Common/ORKFormStepViewController.m @@ -365,7 +365,7 @@ - (void)viewDidAppear:(BOOL)animated { [super viewDidAppear:animated]; - UIAccessibilityPostNotification(UIAccessibilityScreenChangedNotification, self.navigationItem.leftBarButtonItem); + UIAccessibilityPostNotification(UIAccessibilityScreenChangedNotification, nil); } - (void)updateDefaults:(NSMutableDictionary *)defaults { diff --git a/ResearchKit/Common/ORKHealthSampleQueryOperation.h b/ResearchKit/Common/ORKHealthSampleQueryOperation.h new file mode 100644 index 00000000..b70c31c4 --- /dev/null +++ b/ResearchKit/Common/ORKHealthSampleQueryOperation.h @@ -0,0 +1,49 @@ +/* + Copyright (c) 2016, Apple Inc. All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + + 3. Neither the name of the copyright holder(s) nor the names of any contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. No license is granted to the trademarks of + the copyright holders even if such marks are included in this software. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + + +#import +#import "ORKOperation.h" + + +@class ORKDataCollectionManager; +@class ORKCollector; +@protocol ORKHealthCollectable; + +/** + Operation for extracting and preparing HK data for upload. This operation + runs on the specified study / data type combo until there is no more HK data available, + or until file protection kicks in, stopping further preparation. + */ +@interface ORKHealthSampleQueryOperation : ORKOperation + +- (instancetype)initWithCollector:(ORKCollector *)collector mananger:(ORKDataCollectionManager *)manager; + +@end diff --git a/ResearchKit/Common/ORKHealthSampleQueryOperation.m b/ResearchKit/Common/ORKHealthSampleQueryOperation.m new file mode 100644 index 00000000..634115d4 --- /dev/null +++ b/ResearchKit/Common/ORKHealthSampleQueryOperation.m @@ -0,0 +1,247 @@ +/* + Copyright (c) 2016, Apple Inc. All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + + 3. Neither the name of the copyright holder(s) nor the names of any contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. No license is granted to the trademarks of + the copyright holders even if such marks are included in this software. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + + +#import "ORKHealthSampleQueryOperation.h" +#import "ORKCollector.h" +#import "ORKHelpers_Internal.h" +#import "ORKCollector_Internal.h" +#import "ORKDataCollectionManager_Internal.h" + + +static NSUInteger const QueryLimitSize = 1000; + +@implementation ORKHealthSampleQueryOperation { + // All of these are strong references created at init time + ORKCollector *_collector; + __weak ORKDataCollectionManager *_manager; + HKQueryAnchor *_currentAnchor; + dispatch_semaphore_t _sem; +} + + +// Run this only on the manager work queue +- (BOOL)_shouldContinue { + BOOL shouldContinue = YES; + + if (!_manager || !_collector) { + shouldContinue = NO; + } + if (![_manager.collectors containsObject:_collector]) { + shouldContinue = NO; + } + + return shouldContinue; +} + +- (instancetype)initWithCollector:(ORKCollector *)collector mananger:(ORKDataCollectionManager *)manager { + NSParameterAssert(collector); + NSParameterAssert(manager); + + self = [super init]; + if (self) { + _collector = collector; + _manager = manager; + _currentAnchor = nil; + _sem = dispatch_semaphore_create(0); + + self.startBlock = ^void(ORKOperation* operation) { + [(ORKHealthSampleQueryOperation*)operation doNextQuery]; + }; + + } + return self; +} + +- (NSString *)description { + return [NSString stringWithFormat:@"<%@(%p):%@>",NSStringFromClass([self class]), self, _collector]; +} + +- (void)finishWithErrorCode:(ORKErrorCode)error { + self.error = [NSError errorWithDomain:ORKErrorDomain code:error userInfo:nil]; + [self safeFinish]; +} + +- (void)doNextQuery { + [self.lock lock]; + + __block HKSampleType *sampleType = nil; + __block NSDate *startDate = nil; + + __block HKQueryAnchor *lastAnchor = nil; + __block NSString *itemIdentifier = nil; + + // Check if everything's valid and we should continue with collection + __block BOOL shouldContinue = YES; + + [_manager onWorkQueueSync:^BOOL(ORKDataCollectionManager *manager) { + + shouldContinue = [self _shouldContinue]; + + BOOL changed = NO; + if (shouldContinue) { + // _currentAnchor will be NSNotFound on the first pass of the operation + if (_currentAnchor != nil) { + changed = YES; + // Update the anchor if we have one + _collector.lastAnchor = [_currentAnchor copy]; + } + + lastAnchor = _collector.lastAnchor; + sampleType = _collector.sampleType; + startDate = _collector.startDate; + itemIdentifier = _collector.identifier; + } + + return changed; + }]; + + if (_currentAnchor == nil) { + _currentAnchor = lastAnchor; + } + + if (!shouldContinue) { + [self finishWithErrorCode:ORKErrorInvalidObject]; + [self.lock unlock]; + return; + } + + __weak ORKHealthSampleQueryOperation * weakSelf = self; + + NSPredicate *predicate = nil; + if (startDate) { + predicate = [HKQuery predicateForSamplesWithStartDate:startDate endDate:nil options:HKQueryOptionStrictStartDate]; + } + + HKQueryAnchor *anchor = _currentAnchor; + HKAnchoredObjectQuery *syncQuery = [[HKAnchoredObjectQuery alloc] initWithType:sampleType + predicate:predicate + anchor:anchor + limit:QueryLimitSize + resultsHandler:^(HKAnchoredObjectQuery *query, + NSArray<__kindof HKSample *> *sampleObjects, + NSArray *deletedObjects, + HKQueryAnchor *newAnchor, + NSError *error) { + + ORKHealthSampleQueryOperation *op = weakSelf; + ORK_Log_Debug(@"\nHK Query returned: %@\n", @{@"sampleType": sampleType, @"items":@([sampleObjects count]), @"newAnchor":[newAnchor description]?:@"nil"}); + // Signal that query returned + dispatch_semaphore_signal(_sem); + [op handleResults:sampleObjects newAnchor:newAnchor error:error itemIdentifier:itemIdentifier]; + }]; + + + ORK_Log_Debug(@"\nHK Query: %@ \n", @{@"identifier": sampleType.identifier, @"anchor": anchor.description ? :@"", @"startDate": [NSDateFormatter localizedStringFromDate:startDate dateStyle:NSDateFormatterShortStyle timeStyle:NSDateFormatterShortStyle]}); + [_manager.healthStore executeQuery:syncQuery]; + + [self.lock unlock]; + + dispatch_time_t timeout = dispatch_time(DISPATCH_TIME_NOW, (int64_t)(10 * NSEC_PER_SEC)); + + dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^{ + if (dispatch_semaphore_wait(_sem, timeout)) { + [self timeoutForAnchor:anchor]; + } + }); + +} + +- (void)timeoutForAnchor:(HKQueryAnchor *)anchor { + ORK_Log_Debug(@"Query timeout: cancel operation %@", self); + [self.lock lock]; + + if ([self isExecuting] && ![self isCancelled] && [anchor isEqual:_currentAnchor]) { + self.error = [NSError errorWithDomain:ORKErrorDomain code:ORKErrorException userInfo:@{NSLocalizedDescriptionKey:@"Query timeout"}]; + [self safeFinish]; + } + + [self.lock unlock]; +} + +/* + Handles the result of an HKAnchoredObjectQuery, and starts a new query if needed + */ +- (void)handleResults:(NSArray *)results + newAnchor:(HKQueryAnchor *)newAnchor + error:(NSError *)error + itemIdentifier:(NSString *)itemIdentifier { + [self.lock lock]; + // Check our actual state under the lock + + if (![self isExecuting] || [self isCancelled]) { + // Give up immediately if we've been cancelled or are no longer executing + [self.lock unlock]; + return; + } + if (error) { + // Give up if there was an error performing the query + self.error = error; + [self safeFinish]; + [self.lock unlock]; + return; + } + + [self.lock unlock]; + + BOOL doContinue = (results && [results count] > 0); + if (doContinue) { + id delegate = _manager.delegate; + + BOOL handoutSuccess = NO; + + if (delegate) { + if ([_collector isKindOfClass:[ORKHealthCollector class]] + && [delegate respondsToSelector:@selector(healthCollector:didCollectSamples:)]) { + handoutSuccess = [delegate healthCollector:(ORKHealthCollector *)_collector didCollectSamples:results]; + } else if ([_collector isKindOfClass:[ORKHealthCorrelationCollector class]] + && [delegate respondsToSelector:@selector(healthCorrelationCollector:didCollectCorrelations:)]) { + handoutSuccess = [delegate healthCorrelationCollector:(ORKHealthCorrelationCollector *)_collector didCollectCorrelations:(NSArray *)results]; + } + } + + if (!handoutSuccess) { + doContinue = NO; + self.error = [NSError errorWithDomain:ORKErrorDomain code:ORKErrorException userInfo:@{NSLocalizedFailureReasonErrorKey: @"Results are not devlivered to delegate properly."}]; + } + } + + if (doContinue) { + // Do the next fetch + self->_currentAnchor = newAnchor; + [self doNextQuery]; + + } else { + // Stop for now (even if maybe we haven't fetched all the records) + [self safeFinish]; + } +} + +@end diff --git a/ResearchKit/Common/ORKMotionActivityQueryOperation.h b/ResearchKit/Common/ORKMotionActivityQueryOperation.h new file mode 100644 index 00000000..f254d832 --- /dev/null +++ b/ResearchKit/Common/ORKMotionActivityQueryOperation.h @@ -0,0 +1,48 @@ +/* + Copyright (c) 2016, Apple Inc. All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + + 3. Neither the name of the copyright holder(s) nor the names of any contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. No license is granted to the trademarks of + the copyright holders even if such marks are included in this software. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + + +#import "ORKOperation.h" +#import "ORKDataCollectionManager_Internal.h" + + +@class ORKMotionActivityCollector; + +/** + Operation for extracting and preparing CoreMotion data for upload. This operation + runs until there is no more CoreMotion data available, or until otherwise stopped. + */ +@interface ORKMotionActivityQueryOperation : ORKOperation + +- (instancetype)initWithCollector:(ORKMotionActivityCollector*)collector + queryQueue:(NSOperationQueue*)queue + manager:(ORKDataCollectionManager *)manager; + +@end diff --git a/ResearchKit/Common/ORKMotionActivityQueryOperation.m b/ResearchKit/Common/ORKMotionActivityQueryOperation.m new file mode 100644 index 00000000..e36a7ac4 --- /dev/null +++ b/ResearchKit/Common/ORKMotionActivityQueryOperation.m @@ -0,0 +1,206 @@ +/* + Copyright (c) 2016, Apple Inc. All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + + 3. Neither the name of the copyright holder(s) nor the names of any contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. No license is granted to the trademarks of + the copyright holders even if such marks are included in this software. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + + +#import "ORKMotionActivityQueryOperation.h" +#import +#import "ORKCollector.h" +#import "ORKHelpers_Internal.h" +#import "ORKCollector_Internal.h" +#import "ORKDataCollectionManager_Internal.h" + + +@implementation ORKMotionActivityQueryOperation { + + // All of these are strong references created at init time + ORKMotionActivityCollector *_collector; + NSOperationQueue *_queue; + NSDate *_currentDate; + __weak ORKDataCollectionManager *_manager; +} + +- (instancetype)initWithCollector:(ORKMotionActivityCollector*)collector + queryQueue:(NSOperationQueue*)queue + manager:(ORKDataCollectionManager *)manager { + self = [super init]; + if (self) { + _collector = collector; + _manager = manager; + _queue = queue ? : [NSOperationQueue mainQueue]; + _currentDate = nil; + + self.startBlock = ^void(ORKOperation* a) { + [(ORKMotionActivityQueryOperation*)a doQuery]; + }; + + } + return self; +} + +- (NSString*)description { + return [NSString stringWithFormat:@"<%@(%p):%@>",NSStringFromClass([self class]), self, _collector]; +} + +- (void)finishWithErrorCode:(ORKErrorCode)error { + self.error = [NSError errorWithDomain:ORKErrorDomain code:error userInfo:nil]; + [self safeFinish]; +} + +- (void)doQuery { + [self.lock lock]; + + __block NSDate *startDate = nil; + + __block NSDate *lastDate = nil; + __block NSString *itemIdentifier = nil; + + [_manager onWorkQueueSync:^BOOL(ORKDataCollectionManager *manager) { + BOOL changed = NO; + + // _currentAnchor will be NSNotFound on the first pass of the operation + if (_currentDate != nil) { + changed = YES; + + // Update the anchor if we have one + _collector.lastDate = _currentDate; + } + + lastDate = _collector.lastDate; + startDate = _collector.startDate; + itemIdentifier = _collector.identifier; + + return changed; + }]; + + if (_currentDate == nil) { + _currentDate = lastDate; + } + + __weak ORKMotionActivityQueryOperation * weakSelf = self; + + NSDate *queryBeginDate = _currentDate?:startDate; + NSDate *queryEndDate = [NSDate date]; + if (!queryBeginDate) { + queryBeginDate = [NSDate distantPast]; + } + + ORK_Log_Debug(@"\nMotion Query: %@\n", @{@"from": queryBeginDate, @"to":queryEndDate}); + + // Run a single query up to current date + [_manager.activityManager queryActivityStartingFromDate:queryBeginDate toDate:queryEndDate toQueue:_queue withHandler:^(NSArray *activities, NSError *error) { + ORKMotionActivityQueryOperation *op = weakSelf; + ORK_Log_Debug(@"\nMotion Query: %@\n", @{@"from": queryBeginDate, @"to":queryEndDate, @"returned count": @(activities.count)}); + [op handleResults:activities queryBegin:queryBeginDate queryEnd:queryEndDate error:error itemIdentifier:itemIdentifier]; + }]; + + [self.lock unlock]; + +} + +/* + Handles the results, and starts a new query if needed + */ +- (void)handleResults:(NSArray *)results + queryBegin:(NSDate *)queryBegin + queryEnd:(NSDate *)queryEnd + error:(NSError *)error + itemIdentifier:(NSString *)itemIdentifier { + [self.lock lock]; + // Check our actual state under the lock + + if ([self isCancelled]) { + // Give up immediately if we've been cancelled + [self.lock unlock]; + return; + } + if (error) { + // Give up if there was an error performing the query + self.error = error; + [self safeFinish]; + [self.lock unlock]; + return; + } + + [self.lock unlock]; + + if (results && [results count] > 0) { + CMMotionActivity *lastObject = (CMMotionActivity *)[results lastObject]; + NSDate *lastObservedDate = lastObject.startDate; + if (![lastObservedDate isEqual:queryBegin] && [lastObservedDate earlierDate:queryBegin] == lastObservedDate && [results count] == 1) { + // Ignore a one-off if it was before the beginning of the query + [self safeFinish]; + return; + } + + __block BOOL handoutSuccess = NO; + + dispatch_semaphore_t sem = dispatch_semaphore_create(0); + + // Dispatch the results back to the data handler, if any + [_manager onWorkQueueAsync:^BOOL(ORKDataCollectionManager *manager) { + id delegate = _manager.delegate; + + if (delegate && [delegate respondsToSelector:@selector(motionActivityCollector:didCollectMotionActivities:)]) { + handoutSuccess = [delegate motionActivityCollector:_collector didCollectMotionActivities:results]; + } + + dispatch_semaphore_signal(sem); + return YES; + }]; + dispatch_semaphore_wait(sem, DISPATCH_TIME_FOREVER); + + if (!handoutSuccess) { + self.error = [NSError errorWithDomain:ORKErrorDomain code:ORKErrorException userInfo:@{NSLocalizedFailureReasonErrorKey: @"Results are not devlivered properly."}]; + } + + // If successfully reported to delegate, and we observed at + // least one valid sample, update the "current" date + // (the start date of the next query) + if (lastObservedDate && handoutSuccess) { + + // Write the query end as the finish date. This is ok because in CoreMotion + // entries are local and unlikely to be written for dates prior to "now". + NSDate *nextStartDate = queryEnd ? : lastObservedDate; + self->_currentDate = nextStartDate; + + // Store it on the collector + [_manager onWorkQueueAsync:^BOOL(ORKDataCollectionManager *manager) { + _collector.lastDate = nextStartDate; + return YES; + }]; + + } + + } + + [self safeFinish]; +} + +@end diff --git a/ResearchKit/Common/ORKNavigationContainerView.m b/ResearchKit/Common/ORKNavigationContainerView.m index bf55b660..183911ab 100644 --- a/ResearchKit/Common/ORKNavigationContainerView.m +++ b/ResearchKit/Common/ORKNavigationContainerView.m @@ -85,9 +85,11 @@ // Disable button for 0.5s ((UIView *)sender).userInteractionEnabled = NO; + ((ORKTextButton *)sender).isInTransition = YES; dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.5 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{ // Re-enable skip button ((UIView *)sender).userInteractionEnabled = YES; + ((ORKTextButton *)sender).isInTransition = NO; }); } @@ -100,9 +102,11 @@ // Disable button for 0.5s ((UIView *)sender).userInteractionEnabled = NO; + ((ORKTextButton *)sender).isInTransition = YES; _continueButtonJustTapped = YES; dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.5 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{ _continueButtonJustTapped = NO; + ((ORKTextButton *)sender).isInTransition = NO; [self updateContinueAndSkipEnabled]; }); } diff --git a/ResearchKit/Common/ORKOperation.h b/ResearchKit/Common/ORKOperation.h new file mode 100644 index 00000000..10dfb654 --- /dev/null +++ b/ResearchKit/Common/ORKOperation.h @@ -0,0 +1,72 @@ +/* + Copyright (c) 2016, Apple Inc. All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + + 3. Neither the name of the copyright holder(s) nor the names of any contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. No license is granted to the trademarks of + the copyright holders even if such marks are included in this software. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + + +#import + + +typedef NS_ENUM(NSInteger, ORKOperationState) { + ORKOperationReady, + ORKOperationExecuting, + ORKOperationFinished +}; + + +@class ORKOperation; + +typedef void (^ORKOperationBlock)(ORKOperation *operation); + + +/** + A concurrent operation for collecting data for upload. + */ +@interface ORKOperation : NSOperation + +@property (nonatomic, strong) NSRecursiveLock *lock; +@property (readwrite, nonatomic, assign) ORKOperationState state; +@property (nonatomic, strong) NSError *error; + +/** + Block that will be called inside the lock during -start, + just after transitioning to RKOperationExecuting. + */ +@property (nonatomic, strong) ORKOperationBlock startBlock; + +/** + Finishes the operation cleanly. + */ +- (void)safeFinish; + +/** + Sets the error to indicate a timeout, and finishes. + */ +- (void)doTimeout; + +@end diff --git a/ResearchKit/Common/ORKOperation.m b/ResearchKit/Common/ORKOperation.m new file mode 100644 index 00000000..08818a87 --- /dev/null +++ b/ResearchKit/Common/ORKOperation.m @@ -0,0 +1,172 @@ +/* + Copyright (c) 2016, Apple Inc. All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + + 3. Neither the name of the copyright holder(s) nor the names of any contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. No license is granted to the trademarks of + the copyright holders even if such marks are included in this software. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + + +#import "ORKOperation.h" +#import "ORKErrors.h" +#import "ORKHelpers_Internal.h" + + +static NSString *keyPathFromOperationState(ORKOperationState state) { + switch (state) { + case ORKOperationReady: + return @"isReady"; + case ORKOperationExecuting: + return @"isExecuting"; + case ORKOperationFinished: + return @"isFinished"; + default: + return @"state"; + } +} + +static BOOL stateTransitionIsValid(ORKOperationState fromState, ORKOperationState toState, BOOL isCancelled) { + switch (fromState) { + case ORKOperationReady: + switch (toState) { + case ORKOperationExecuting: + return YES; + case ORKOperationFinished: + return isCancelled; + default: + return NO; + } + case ORKOperationExecuting: + switch (toState) { + case ORKOperationFinished: + return YES; + default: + return NO; + } + case ORKOperationFinished: + return NO; + default: + return YES; + } +} + + +@implementation ORKOperation + +- (instancetype)init { + self = [super init]; + if (self) { + self.lock = [[NSRecursiveLock alloc] init]; + self.lock.name = @"com.apple.ResearchKit.Operation"; + self.state = ORKOperationReady; + } + return self; +} + +- (void)setState:(ORKOperationState)state { + [self.lock lock]; + if (stateTransitionIsValid(self.state, state, [self isCancelled])) { + NSString *oldStateKey = keyPathFromOperationState(self.state); + NSString *newStateKey = keyPathFromOperationState(state); + + [self willChangeValueForKey:newStateKey]; + [self willChangeValueForKey:oldStateKey]; + _state = state; + [self didChangeValueForKey:oldStateKey]; + [self didChangeValueForKey:newStateKey]; + + } + [self.lock unlock]; +} + + +#pragma mark - NSOperation + +- (BOOL)isReady { + return self.state == ORKOperationReady && [super isReady]; +} + +- (BOOL)isExecuting { + return self.state == ORKOperationExecuting; +} + +- (BOOL)isFinished { + return self.state == ORKOperationFinished; +} + +- (BOOL)isConcurrent { + return YES; +} + +- (void)start { + [self.lock lock]; + + if ([self isCancelled]) { + [self finish]; + } else if ([self isReady]) { + self.state = ORKOperationExecuting; + + ORK_Log_Debug(@"%@ start", self.class); + _startBlock(self); + } + [self.lock unlock]; +} + +- (void)finish { + ORK_Log_Debug(@"%@ finish: %@", self, (self.error ? : @"OK")); + self.state = ORKOperationFinished; +} + +- (void)cancel { + [self.lock lock]; + if (![self isFinished] && ![self isCancelled]) { + if (! self.error) { + self.error = [NSError errorWithDomain:ORKErrorDomain code:ORKErrorException userInfo:nil]; + } + [self willChangeValueForKey:@"isCancelled"]; + [super cancel]; + [self didChangeValueForKey:@"isCancelled"]; + } + [self.lock unlock]; +} + +- (void)safeFinish { + [self.lock lock]; + if ([self isExecuting]) { + [self finish]; + } + [self.lock unlock]; +} + +- (void)doTimeout { + [self.lock lock]; + if (self.state == ORKOperationExecuting) { + self.error = [NSError errorWithDomain:ORKErrorDomain code:ORKErrorException userInfo:nil]; + [self finish]; + } + [self.lock unlock]; +} + +@end diff --git a/ResearchKit/Common/ORKPasscodeStepViewController_Internal.h b/ResearchKit/Common/ORKPasscodeStepViewController_Internal.h index 29f29d2b..ff37aadb 100644 --- a/ResearchKit/Common/ORKPasscodeStepViewController_Internal.h +++ b/ResearchKit/Common/ORKPasscodeStepViewController_Internal.h @@ -56,7 +56,7 @@ typedef NS_ENUM(NSUInteger, ORKPasscodeState) { ORKPasscodeStateConfirmNewEntry }; -@interface ORKPasscodeStepViewController() +@interface ORKPasscodeStepViewController() @property (nonatomic) ORKPasscodeFlow passcodeFlow; @property (nonatomic, weak) id passcodeDelegate; diff --git a/ResearchKit/Common/ORKQuestionStepViewController.m b/ResearchKit/Common/ORKQuestionStepViewController.m index c21d9f67..658ef2f5 100644 --- a/ResearchKit/Common/ORKQuestionStepViewController.m +++ b/ResearchKit/Common/ORKQuestionStepViewController.m @@ -342,7 +342,7 @@ typedef NS_ENUM(NSInteger, ORKQuestionSection) { _visible = YES; - UIAccessibilityPostNotification(UIAccessibilityScreenChangedNotification, self.navigationItem.leftBarButtonItem); + UIAccessibilityPostNotification(UIAccessibilityScreenChangedNotification, nil); } - (void)viewWillDisappear:(BOOL)animated { diff --git a/ResearchKit/Common/ORKReviewStep.h b/ResearchKit/Common/ORKReviewStep.h index a6ea4967..078a26c5 100644 --- a/ResearchKit/Common/ORKReviewStep.h +++ b/ResearchKit/Common/ORKReviewStep.h @@ -60,7 +60,8 @@ ORK_CLASS_AVAILABLE Returns a new standalone review step that includes the specified identifier, steps, and result source. @param identifier The identifier of the step (a step identifier should be unique within the task). - @param steps The steps that should be reviewed. + @param steps The steps that should be reviewed. Currently, only question, instruction and + form steps can be reviewed. Any other step type will be ignored. @param resultSource The source that should be consulted to obtain the corresponding step results. */ + (instancetype)standaloneReviewStepWithIdentifier:(NSString *)identifier diff --git a/ResearchKit/Common/ORKReviewStepViewController.m b/ResearchKit/Common/ORKReviewStepViewController.m index 4bd4e6cd..9535ed0a 100644 --- a/ResearchKit/Common/ORKReviewStepViewController.m +++ b/ResearchKit/Common/ORKReviewStepViewController.m @@ -92,7 +92,7 @@ - (void)viewDidAppear:(BOOL)animated { [super viewDidAppear:animated]; - UIAccessibilityPostNotification(UIAccessibilityScreenChangedNotification, self.navigationItem.leftBarButtonItem); + UIAccessibilityPostNotification(UIAccessibilityScreenChangedNotification, nil); } - (void)setContinueButtonItem:(UIBarButtonItem *)continueButtonItem { diff --git a/ResearchKit/Common/ORKStepNavigationRule.swift b/ResearchKit/Common/ORKStepNavigationRule.swift index cb9063e7..1a13a041 100644 --- a/ResearchKit/Common/ORKStepNavigationRule.swift +++ b/ResearchKit/Common/ORKStepNavigationRule.swift @@ -31,21 +31,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. import Foundation public extension ORKPredicateStepNavigationRule { - - #if swift(>=3.0) - - convenience init(resultPredicatesAndDestinationStepIdentifiers tuples: [ (resultPredicate: Predicate, destinationStepIdentifier: String) ], defaultStepIdentifierOrNil: String? = nil ) { - var resultPredicates: [Predicate] = [] - var destinationStepIdentifiers: [String] = [] - for tuple in tuples { - resultPredicates.append(tuple.resultPredicate) - destinationStepIdentifiers.append(tuple.destinationStepIdentifier) - } - self.init(resultPredicates: resultPredicates, destinationStepIdentifiers: destinationStepIdentifiers, defaultStepIdentifier: defaultStepIdentifierOrNil, validateArrays: true); - } - - #else - + convenience init(resultPredicatesAndDestinationStepIdentifiers tuples: [ (resultPredicate: NSPredicate, destinationStepIdentifier: String) ], defaultStepIdentifierOrNil: String? = nil ) { var resultPredicates: [NSPredicate] = [] var destinationStepIdentifiers: [String] = [] @@ -55,6 +41,4 @@ public extension ORKPredicateStepNavigationRule { } self.init(resultPredicates: resultPredicates, destinationStepIdentifiers: destinationStepIdentifiers, defaultStepIdentifier: defaultStepIdentifierOrNil, validateArrays: true); } - - #endif } diff --git a/ResearchKit/Common/ORKStepViewController.m b/ResearchKit/Common/ORKStepViewController.m index 066252b2..5ffa31a7 100644 --- a/ResearchKit/Common/ORKStepViewController.m +++ b/ResearchKit/Common/ORKStepViewController.m @@ -443,4 +443,11 @@ static NSString *const _ORKParentReviewStepKey = @"parentReviewStep"; return viewController; } +#pragma mark - Accessibility + +- (BOOL)accessibilityPerformEscape { + [self goBackward]; + return YES; +} + @end diff --git a/ResearchKit/Common/ORKSurveyAnswerCell.h b/ResearchKit/Common/ORKSurveyAnswerCell.h index 7a3bad05..adae97aa 100644 --- a/ResearchKit/Common/ORKSurveyAnswerCell.h +++ b/ResearchKit/Common/ORKSurveyAnswerCell.h @@ -90,6 +90,9 @@ NS_ASSUME_NONNULL_BEGIN - (void)showValidityAlertWithTitle:(NSString *)title message:(NSString *)message; +// Get full width layout for some subclass cells ++ (NSLayoutConstraint *)fullWidthLayoutConstraint:(UIView *)view; + @end NS_ASSUME_NONNULL_END diff --git a/ResearchKit/Common/ORKSurveyAnswerCell.m b/ResearchKit/Common/ORKSurveyAnswerCell.m index f85d1847..791d54d6 100644 --- a/ResearchKit/Common/ORKSurveyAnswerCell.m +++ b/ResearchKit/Common/ORKSurveyAnswerCell.m @@ -74,10 +74,6 @@ } } -- (void)layoutSubviews { - [super layoutSubviews]; -} - - (UITextField *)textField { return nil; } @@ -202,17 +198,32 @@ } - (NSArray *)suggestedCellHeightConstraintsForView:(UIView *)view { - return @[[NSLayoutConstraint constraintWithItem:self - attribute:NSLayoutAttributeHeight - relatedBy:NSLayoutRelationEqual - toItem:nil - attribute:NSLayoutAttributeHeight - multiplier:1.0 - constant:[[self class] suggestedCellHeightForView:view]]]; + NSLayoutConstraint *constaint = [NSLayoutConstraint constraintWithItem:self + attribute:NSLayoutAttributeHeight + relatedBy:NSLayoutRelationEqual + toItem:nil + attribute:NSLayoutAttributeHeight + multiplier:1.0 + constant:[[self class] suggestedCellHeightForView:view]]; + constaint.priority = UILayoutPriorityDefaultHigh; + return @[constaint]; } + (CGFloat)suggestedCellHeightForView:(UIView *)view { return ORKGetMetricForWindow(ORKScreenMetricTableCellDefaultHeight, view.window); } ++ (NSLayoutConstraint *)fullWidthLayoutConstraint:(UIView *)view { + NSLayoutConstraint *widthConstraint = [NSLayoutConstraint constraintWithItem:view + attribute:NSLayoutAttributeWidth + relatedBy:NSLayoutRelationEqual + toItem:nil + attribute:NSLayoutAttributeNotAnAttribute + multiplier:1.0 + constant:10000]; + + widthConstraint.priority = UILayoutPriorityDefaultLow + 1; + return widthConstraint; +} + @end diff --git a/ResearchKit/Common/ORKSurveyAnswerCellForNumber.m b/ResearchKit/Common/ORKSurveyAnswerCellForNumber.m index fac1fa83..786fb870 100644 --- a/ResearchKit/Common/ORKSurveyAnswerCellForNumber.m +++ b/ResearchKit/Common/ORKSurveyAnswerCellForNumber.m @@ -104,6 +104,9 @@ NSMutableArray *constraints = [NSMutableArray new]; NSDictionary *views = NSDictionaryOfVariableBindings(_containerView, _textFieldView); + // Get a full width layout + [constraints addObject:[self.class fullWidthLayoutConstraint:_containerView]]; + [constraints addObjectsFromArray:[NSLayoutConstraint constraintsWithVisualFormat:@"V:|-[_containerView]-|" options:(NSLayoutFormatOptions)0 metrics:nil diff --git a/ResearchKit/Common/ORKSurveyAnswerCellForScale.m b/ResearchKit/Common/ORKSurveyAnswerCellForScale.m index f45110c3..b48ef27c 100644 --- a/ResearchKit/Common/ORKSurveyAnswerCellForScale.m +++ b/ResearchKit/Common/ORKSurveyAnswerCellForScale.m @@ -77,6 +77,10 @@ options:NSLayoutFormatDirectionLeadingToTrailing metrics:nil views:views]]; + + // Get a full width layout + NSLayoutConstraint *widthConstraint = [self.class fullWidthLayoutConstraint:_sliderView]; + [self addConstraints:@[widthConstraint]]; } [self answerDidChange]; diff --git a/ResearchKit/Common/ORKSurveyAnswerCellForText.m b/ResearchKit/Common/ORKSurveyAnswerCellForText.m index 90f1a48a..f50578fe 100644 --- a/ResearchKit/Common/ORKSurveyAnswerCellForText.m +++ b/ResearchKit/Common/ORKSurveyAnswerCellForText.m @@ -124,6 +124,9 @@ options:(NSLayoutFormatOptions)0 metrics:nil views:views]]; + // Get full width layout + [constraints addObject:[self.class fullWidthLayoutConstraint:_textView]]; + [NSLayoutConstraint activateConstraints:constraints]; } @@ -204,7 +207,7 @@ [_textField addTarget:self action:@selector(textFieldDidChange:) forControlEvents:UIControlEventEditingChanged]; - [self.contentView addSubview:_textField]; + [self addSubview:_textField]; ORKEnableAutoLayoutForViews(@[_textField]); [self setUpConstraints]; @@ -218,14 +221,16 @@ NSMutableArray *constraints = [NSMutableArray new]; NSDictionary *views = NSDictionaryOfVariableBindings(_textField); [constraints addObjectsFromArray:[NSLayoutConstraint constraintsWithVisualFormat:@"V:|-[_textField]-|" - options:(NSLayoutFormatOptions)0 + options:NSLayoutFormatDirectionLeadingToTrailing metrics:nil views:views]]; [constraints addObjectsFromArray:[NSLayoutConstraint constraintsWithVisualFormat:@"H:|-[_textField]-|" - options:(NSLayoutFormatOptions)0 + options:NSLayoutFormatDirectionLeadingToTrailing metrics:nil views:views]]; + // Get a full width layout + [constraints addObject:[self.class fullWidthLayoutConstraint:_textField]]; [NSLayoutConstraint activateConstraints:constraints]; } diff --git a/ResearchKit/Common/ORKTableStepViewController.m b/ResearchKit/Common/ORKTableStepViewController.m index fa9a0921..f290fa00 100644 --- a/ResearchKit/Common/ORKTableStepViewController.m +++ b/ResearchKit/Common/ORKTableStepViewController.m @@ -64,7 +64,7 @@ - (void)viewDidAppear:(BOOL)animated { [super viewDidAppear:animated]; - UIAccessibilityPostNotification(UIAccessibilityScreenChangedNotification, self.navigationItem.leftBarButtonItem); + UIAccessibilityPostNotification(UIAccessibilityScreenChangedNotification, nil); } // Override to monitor button title change diff --git a/ResearchKit/Common/ORKTaskViewController.m b/ResearchKit/Common/ORKTaskViewController.m index 431e95cc..d53d3fd0 100644 --- a/ResearchKit/Common/ORKTaskViewController.m +++ b/ResearchKit/Common/ORKTaskViewController.m @@ -201,13 +201,13 @@ static void *_ORKViewControllerToolbarObserverContext = &_ORKViewControllerToolb + (void)initialize { if (self == [ORKTaskViewController class]) { - [[UINavigationBar appearanceWhenContainedIn:[ORKTaskViewController class], nil] setTranslucent:NO]; - if ([[UINavigationBar appearanceWhenContainedIn:[ORKTaskViewController class], nil] barTintColor] == nil) { - [[UINavigationBar appearanceWhenContainedIn:[ORKTaskViewController class], nil] setBarTintColor:ORKColor(ORKToolBarTintColorKey)]; + [[UINavigationBar appearanceWhenContainedInInstancesOfClasses:@[[ORKTaskViewController class]]] setTranslucent:NO]; + if ([[UINavigationBar appearanceWhenContainedInInstancesOfClasses:@[[ORKTaskViewController class]]] barTintColor] == nil) { + [[UINavigationBar appearanceWhenContainedInInstancesOfClasses:@[[ORKTaskViewController class]]] setBarTintColor:ORKColor(ORKToolBarTintColorKey)]; } - if ([[UIToolbar appearanceWhenContainedIn:[ORKTaskViewController class], nil] barTintColor] == nil) { - [[UIToolbar appearanceWhenContainedIn:[ORKTaskViewController class], nil] setBarTintColor:ORKColor(ORKToolBarTintColorKey)]; + if ([[UIToolbar appearanceWhenContainedInInstancesOfClasses:@[[ORKTaskViewController class]]] barTintColor] == nil) { + [[UIToolbar appearanceWhenContainedInInstancesOfClasses:@[[ORKTaskViewController class]]] setBarTintColor:ORKColor(ORKToolBarTintColorKey)]; } } } diff --git a/ResearchKit/Common/ORKTextButton.h b/ResearchKit/Common/ORKTextButton.h index 15aaf909..4011f2b9 100644 --- a/ResearchKit/Common/ORKTextButton.h +++ b/ResearchKit/Common/ORKTextButton.h @@ -39,7 +39,7 @@ NS_ASSUME_NONNULL_BEGIN */ ORK_CLASS_AVAILABLE @interface ORKTextButton : UIButton - +@property (nonatomic) BOOL isInTransition; @end diff --git a/ResearchKit/Common/ORKTextButton.m b/ResearchKit/Common/ORKTextButton.m index b0480212..afab1018 100644 --- a/ResearchKit/Common/ORKTextButton.m +++ b/ResearchKit/Common/ORKTextButton.m @@ -119,4 +119,12 @@ return [super intrinsicContentSize]; } +- (UIAccessibilityTraits)accessibilityTraits { + // prevent VoiceOver from speaking "dimmed" when transitioning between pages + if (self.isInTransition) { + return [super accessibilityTraits] & ~UIAccessibilityTraitNotEnabled; + } + return [super accessibilityTraits]; +} + @end diff --git a/ResearchKit/Common/ORKVideoCaptureCameraPreviewView.h b/ResearchKit/Common/ORKVideoCaptureCameraPreviewView.h new file mode 100644 index 00000000..f5c881fe --- /dev/null +++ b/ResearchKit/Common/ORKVideoCaptureCameraPreviewView.h @@ -0,0 +1,50 @@ +/* + Copyright (c) 2016, Apple Inc. All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + + 3. Neither the name of the copyright holder(s) nor the names of any contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. No license is granted to the trademarks of + the copyright holders even if such marks are included in this software. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + + +#import +#import +#import + + +NS_ASSUME_NONNULL_BEGIN + +@interface ORKVideoCaptureCameraPreviewView : UIView + +@property (nonatomic, weak, nullable) AVCaptureSession *session; +@property (nonatomic) AVCaptureVideoOrientation videoOrientation; +@property (nonatomic, weak, nullable) UIImage *templateImage; +@property (nonatomic) UIEdgeInsets templateImageInsets; +@property (nonatomic, getter=isTemplateImageHidden) BOOL templateImageHidden; +@property (nonatomic, weak, nullable) NSURL *videoFileURL; + +@end + +NS_ASSUME_NONNULL_END diff --git a/ResearchKit/Common/ORKVideoCaptureCameraPreviewView.m b/ResearchKit/Common/ORKVideoCaptureCameraPreviewView.m new file mode 100644 index 00000000..379bed36 --- /dev/null +++ b/ResearchKit/Common/ORKVideoCaptureCameraPreviewView.m @@ -0,0 +1,231 @@ +/* + Copyright (c) 2016, Apple Inc. All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + + 3. Neither the name of the copyright holder(s) nor the names of any contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. No license is granted to the trademarks of + the copyright holders even if such marks are included in this software. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + + +#import "ORKVideoCaptureCameraPreviewView.h" +#import "ORKTintedImageView.h" +#import "ORKHelpers_Internal.h" +#import + + +@implementation ORKVideoCaptureCameraPreviewView { + AVCaptureVideoPreviewLayer *_previewLayer; + ORKTintedImageView *_templateImageView; + NSLayoutConstraint *_templateImageViewTopInsetConstraint; + NSLayoutConstraint *_templateImageViewLeftInsetConstraint; + NSLayoutConstraint *_templateImageViewBottomInsetConstraint; + NSLayoutConstraint *_templateImageViewRightInseConstraint; +} + +- (instancetype)init { + self = [super init]; + if (self) { + _previewLayer = [AVCaptureVideoPreviewLayer new]; + _previewLayer.videoGravity = AVLayerVideoGravityResizeAspectFill; + _previewLayer.needsDisplayOnBoundsChange = YES; + [self.layer addSublayer:_previewLayer]; + + _templateImageView = [ORKTintedImageView new]; + _templateImageView.contentMode = UIViewContentModeScaleAspectFit; + _templateImageView.shouldApplyTint = YES; + _templateImageView.hidden = YES; + _templateImageView.alpha = 0; + [self addSubview:_templateImageView]; + + [self setUpConstraints]; + } + return self; +} + +- (void)setUpConstraints { + NSMutableArray *constraints = [NSMutableArray new]; + + self.translatesAutoresizingMaskIntoConstraints = NO; + _templateImageView.translatesAutoresizingMaskIntoConstraints = NO; + + // Make the insets for the template image view changeable later + _templateImageViewTopInsetConstraint = [NSLayoutConstraint constraintWithItem:_templateImageView + attribute:NSLayoutAttributeTop + relatedBy:NSLayoutRelationEqual + toItem:self + attribute:NSLayoutAttributeTop + multiplier:1.0 + constant:0.0]; + [constraints addObject:_templateImageViewTopInsetConstraint]; + + _templateImageViewLeftInsetConstraint = [NSLayoutConstraint constraintWithItem:_templateImageView + attribute:NSLayoutAttributeLeft + relatedBy:NSLayoutRelationEqual + toItem:self + attribute:NSLayoutAttributeLeft + multiplier:1.0 + constant:0.0]; + [constraints addObject:_templateImageViewLeftInsetConstraint]; + + _templateImageViewBottomInsetConstraint = [NSLayoutConstraint constraintWithItem:_templateImageView + attribute:NSLayoutAttributeBottom + relatedBy:NSLayoutRelationEqual + toItem:self + attribute:NSLayoutAttributeBottom + multiplier:1.0 + constant:0.0]; + [constraints addObject:_templateImageViewBottomInsetConstraint]; + + _templateImageViewRightInseConstraint = [NSLayoutConstraint constraintWithItem:_templateImageView + attribute:NSLayoutAttributeRight + relatedBy:NSLayoutRelationEqual + toItem:self + attribute:NSLayoutAttributeRight + multiplier:1.0 + constant:0.0]; + [constraints addObject:_templateImageViewRightInseConstraint]; + + [NSLayoutConstraint activateConstraints:constraints]; +} + +- (AVCaptureSession *)session { + return _previewLayer.session; +} + +- (void)setSession:(AVCaptureSession *)session { + _previewLayer.session = session; +} + +- (UIImage *)templateImage { + return _templateImageView.image; +} + +- (void)setTemplateImage:(UIImage *)templateImage { + _templateImageView.image = templateImage; +} + +- (void)setTemplateImageHidden:(BOOL)templateImageHidden { + if (!templateImageHidden) { + _templateImageView.hidden = NO; + } + + [UIView animateWithDuration:0.15 + animations:^{ + _templateImageView.alpha = templateImageHidden ? 0 : 1; + } completion:^(BOOL finished) { + _templateImageView.hidden = templateImageHidden; + }]; + +} + +- (BOOL)isTemplateImageHidden { + return _templateImageView.hidden; +} + +- (void)setVideoFileURL:(NSURL *)videoFileURL { + _videoFileURL = videoFileURL; + _previewLayer.hidden = videoFileURL!=nil; +} + +- (void)layoutSubviews { + [super layoutSubviews]; + + // Ensure that the preview layer takes up all the space + _previewLayer.frame = self.frame; + + // Update the insets for the template image view. + [self updateInsets]; +} + +- (void)updateInsets { + // Update the layoutMargins to match those being used by the preview layer content, if needed + UIEdgeInsets previewLayerContentFrameInsets = [self getPreviewLayerContentFrameInsets]; + if (!UIEdgeInsetsEqualToEdgeInsets(previewLayerContentFrameInsets, self.layoutMargins)) { + self.layoutMargins = previewLayerContentFrameInsets; + } + + // Update the insets on the template image view, if needed + CGRect previewLayerContentFrame = UIEdgeInsetsInsetRect(_previewLayer.frame, previewLayerContentFrameInsets); + UIEdgeInsets insets = UIEdgeInsetsMake(round(self.templateImageInsets.top * previewLayerContentFrame.size.height), + round(self.templateImageInsets.left * previewLayerContentFrame.size.width), + round(self.templateImageInsets.bottom * previewLayerContentFrame.size.height), + round(self.templateImageInsets.right * previewLayerContentFrame.size.width)); + + if (_templateImageViewTopInsetConstraint.constant != insets.top) { + _templateImageViewTopInsetConstraint.constant = insets.top; + } + if (_templateImageViewLeftInsetConstraint.constant != insets.left) { + _templateImageViewLeftInsetConstraint.constant = insets.left; + } + if (_templateImageViewBottomInsetConstraint.constant != -insets.bottom) { + _templateImageViewBottomInsetConstraint.constant = -insets.bottom; + } + if (_templateImageViewRightInseConstraint.constant != -insets.right) { + _templateImageViewRightInseConstraint.constant = -insets.right; + } +} + +- (UIEdgeInsets)getPreviewLayerContentFrameInsets { + // Determine the insets on the preview layer frame that correspond to the actual video content + // when using a videoGravity of AVLayerVideoGravityResizeAspect; + NSArray *inputs = _previewLayer.session.inputs; + if (!inputs || inputs.count == 0) + return UIEdgeInsetsZero; + AVCaptureDeviceInput* input = (AVCaptureDeviceInput*)inputs[0]; + CMVideoDimensions cmd = CMVideoFormatDescriptionGetDimensions(input.device.activeFormat.formatDescription); + AVCaptureVideoOrientation avcvo = _previewLayer.connection.videoOrientation; + BOOL landscape = avcvo == AVCaptureVideoOrientationLandscapeLeft || avcvo == AVCaptureVideoOrientationLandscapeRight; + + CGRect contentFrame = AVMakeRectWithAspectRatioInsideRect(CGSizeMake(landscape ? cmd.width : cmd.height, landscape ? cmd.height : cmd.width), _previewLayer.frame); + CGRect overallFrame = _previewLayer.frame; + return UIEdgeInsetsMake(contentFrame.origin.y - overallFrame.origin.y, + contentFrame.origin.x - overallFrame.origin.x, + (overallFrame.origin.y + overallFrame.size.height) - (contentFrame.origin.y + contentFrame.size.height), + (overallFrame.origin.x + overallFrame.size.width) - (contentFrame.origin.x + contentFrame.size.width)); +} + +- (AVCaptureVideoOrientation)videoOrientation { + return _previewLayer.connection.videoOrientation; +} + +- (void)setVideoOrientation:(AVCaptureVideoOrientation)videoOrientation { + _previewLayer.connection.videoOrientation = videoOrientation; +} + +#pragma mark - Accessibility + +- (BOOL)isAccessibilityElement { + return self.videoFileURL == nil; +} + +- (NSString *)accessibilityLabel { + return ORKLocalizedString(@"AX_VIDEO_CAPTURE_LABEL", nil); +} + +- (UIAccessibilityTraits)accessibilityTraits { + return [super accessibilityTraits] | UIAccessibilityTraitStartsMediaSession; +} + +@end diff --git a/ResearchKit/Common/ORKVideoCaptureStep.h b/ResearchKit/Common/ORKVideoCaptureStep.h new file mode 100644 index 00000000..11fad518 --- /dev/null +++ b/ResearchKit/Common/ORKVideoCaptureStep.h @@ -0,0 +1,127 @@ +/* + Copyright (c) 2016, Apple Inc. All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + + 3. Neither the name of the copyright holder(s) nor the names of any contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. No license is granted to the trademarks of + the copyright holders even if such marks are included in this software. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + + +#import +#import + + +NS_ASSUME_NONNULL_BEGIN + +/** + The `ORKVideoCaptureStep` class represents a step that captures a video through the device + camera. A template image can optionally be laid over the camera preview to assist in properly + capturing the video. + + To use the video capture step, optionally set the `templateImage` and `templateImageInsets` + properties, incorporate the step into a task, and present the task with a task view controller. + + If implementing a video capture task like this one, remember that people will + take your instructions literally. So be cautious. Make sure your template image + is high contrast and very visible against a variety of backgrounds. + + The recording length can be a max of 20 minutes. It defaults to 2 minutes. + */ +ORK_CLASS_AVAILABLE +@interface ORKVideoCaptureStep : ORKStep + +/** + An image to be displayed over the camera preview. + + The image is stretched to fit the available space while retaining its aspect ratio. + When choosing a size for this asset, be sure to take into account the variations in device + form factors. + */ +@property (nonatomic, strong) UIImage *templateImage; + +/** + Insets to be used in positioning and sizing the `templateImage`. + + The insets are interpreted as percentages relative to the preview frame size. The left + and right insets are relative to the width of the preview frame. The top and bottom + insets are relative to the height of the preview frame. + */ +@property (nonatomic) UIEdgeInsets templateImageInsets; + +/** + The duration, in seconds, for the recording. + + The maximum that this can be set to is 20.0 minutes (60*20 seconds). + The minimum that this can be set to is 0.01 minutes (1 second). + + The default value is 2.0 minutes (60*2 seconds). + */ +@property (nonatomic) NSNumber *duration; + +/** + A Boolean indicating whether the audio is recorded or not. + + The default value is NO. + */ +@property (nonatomic, getter=isAudioMute) BOOL audioMute; + +/** + Constants indicating the mode of the flash on the receiver's device, if it has one. + + The default value is `AVCaptureFlashModeOff` (see `AVCaptureFlashMode`). + */ +@property (nonatomic) AVCaptureFlashMode flashMode; + +/** + Constants indicating the physical position of an AVCaptureDevice's hardware on the system. + + The default value is `AVCaptureDevicePositionBack` (see `AVCaptureDevicePosition`). + If `AVCaptureDevicePositionUnspecified` is set, then it defaults to `AVCaptureDevicePositionBack`. + */ +@property (nonatomic) AVCaptureDevicePosition devicePosition; + +/** + An accessibility hint of the capture preview. + + This property can be used to specify accessible instructions for capturing the video. The + use of this property can assist when the `templateImage` may not be visible + to the user. + + For example, if you want to capture a video of the user's right hand, you may use a template + image that displays the outline of the right hand. You may also want to set this property + to a string such as @"Extend your right hand, palm side down, one foot from your device. + Tap the Capture Video button, or two finger tap on the preview, to capture a video of your + extended right hand." + */ +@property (nonatomic, copy) NSString *accessibilityInstructions; + +/** + An accessibility hint of the capture button. + */ +@property (nonatomic, copy) NSString *accessibilityHint; + +@end + +NS_ASSUME_NONNULL_END diff --git a/ResearchKit/Common/ORKVideoCaptureStep.m b/ResearchKit/Common/ORKVideoCaptureStep.m new file mode 100644 index 00000000..6705dc8b --- /dev/null +++ b/ResearchKit/Common/ORKVideoCaptureStep.m @@ -0,0 +1,119 @@ +/* + Copyright (c) 2016, Apple Inc. All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + + 3. Neither the name of the copyright holder(s) nor the names of any contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. No license is granted to the trademarks of + the copyright holders even if such marks are included in this software. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + + +#import "ORKVideoCaptureStep.h" +#import "ORKHelpers_Internal.h" +#import "ORKStep_Private.h" +#import "ORKVideoCaptureStepViewController.h" + + +@implementation ORKVideoCaptureStep + ++ (Class)stepViewControllerClass { + return [ORKVideoCaptureStepViewController class]; +} + +- (instancetype)initWithIdentifier:(NSString *)identifier { + self = [super initWithIdentifier:identifier]; + if (self) { + self.optional = YES; + self.duration = @120; + self.audioMute = NO; + self.flashMode = AVCaptureFlashModeOff; + self.devicePosition = AVCaptureDevicePositionBack; + } + return self; +} + +- (void)setDuration:(NSNumber *)duration { + _duration = MIN(MAX(duration, @1), @120); +} + +- (instancetype)initWithCoder:(NSCoder *)aDecoder { + self = [super initWithCoder:aDecoder]; + if (self) { + ORK_DECODE_IMAGE(aDecoder, templateImage); + ORK_DECODE_UIEDGEINSETS(aDecoder, templateImageInsets); + ORK_DECODE_OBJ(aDecoder, duration); + ORK_DECODE_BOOL(aDecoder, audioMute); + ORK_DECODE_ENUM(aDecoder, flashMode); + ORK_DECODE_ENUM(aDecoder, devicePosition); + ORK_DECODE_OBJ(aDecoder, accessibilityHint); + ORK_DECODE_OBJ(aDecoder, accessibilityInstructions); + } + return self; +} + +- (void)encodeWithCoder:(NSCoder *)aCoder { + [super encodeWithCoder:aCoder]; + ORK_ENCODE_IMAGE(aCoder, templateImage); + ORK_ENCODE_UIEDGEINSETS(aCoder, templateImageInsets); + ORK_ENCODE_OBJ(aCoder, duration); + ORK_ENCODE_BOOL(aCoder, audioMute); + ORK_ENCODE_ENUM(aCoder, flashMode); + ORK_ENCODE_ENUM(aCoder, devicePosition); + ORK_ENCODE_OBJ(aCoder, accessibilityHint); + ORK_ENCODE_OBJ(aCoder, accessibilityInstructions); +} + ++ (BOOL)supportsSecureCoding { + return YES; +} + +- (instancetype)copyWithZone:(NSZone *)zone { + ORKVideoCaptureStep *step = [super copyWithZone:zone]; + step.templateImage = self.templateImage; + step.templateImageInsets = self.templateImageInsets; + step.duration = self.duration; + step.audioMute = self.audioMute; + step.flashMode = self.flashMode; + step.devicePosition = self.devicePosition; + step.accessibilityHint = self.accessibilityHint; + step.accessibilityInstructions = self.accessibilityInstructions; + return step; +} + +- (BOOL)isEqual:(id)object { + BOOL isParentSame = [super isEqual:object]; + + __typeof(self) castObject = object; + return isParentSame && + ORKEqualObjects(self.templateImage, castObject.templateImage) && + UIEdgeInsetsEqualToEdgeInsets(self.templateImageInsets, castObject.templateImageInsets) && + ORKEqualObjects(self.duration, castObject.duration) && + (self.audioMute == castObject.audioMute) && + (self.flashMode == castObject.flashMode) && + (self.devicePosition == castObject.devicePosition) && + ORKEqualObjects(self.accessibilityHint, castObject.accessibilityHint) && + ORKEqualObjects(self.accessibilityInstructions, castObject.accessibilityInstructions); +} + +@end diff --git a/ResearchKit/Common/ORKVideoCaptureStepViewController.h b/ResearchKit/Common/ORKVideoCaptureStepViewController.h new file mode 100644 index 00000000..e9afe0e2 --- /dev/null +++ b/ResearchKit/Common/ORKVideoCaptureStepViewController.h @@ -0,0 +1,46 @@ +/* + Copyright (c) 2016, Apple Inc. All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + + 3. Neither the name of the copyright holder(s) nor the names of any contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. No license is granted to the trademarks of + the copyright holders even if such marks are included in this software. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + + +#import + + +/** + The `ORKVideoCaptureStepViewController` class represents the step view controller that + corresponds to an `ORKVideoCaptureStep` class. + + It is not usually necessary to instantiate this view controller directly. + Instead, add a video capture step to a task, and present the task in a task + view controller. + */ +ORK_CLASS_AVAILABLE +@interface ORKVideoCaptureStepViewController : ORKStepViewController + +@end diff --git a/ResearchKit/Common/ORKVideoCaptureStepViewController.m b/ResearchKit/Common/ORKVideoCaptureStepViewController.m new file mode 100644 index 00000000..1cd1e75f --- /dev/null +++ b/ResearchKit/Common/ORKVideoCaptureStepViewController.m @@ -0,0 +1,341 @@ +/* + Copyright (c) 2016, Apple Inc. All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + + 3. Neither the name of the copyright holder(s) nor the names of any contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. No license is granted to the trademarks of + the copyright holders even if such marks are included in this software. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + + +#import "ORKStepViewController_Internal.h" +#import "ORKVideoCaptureStepViewController.h" +#import "ORKVideoCaptureView.h" +#import "ORKVideoCaptureStep.h" +#import "ORKHelpers_Internal.h" + +#import + + +@interface ORKVideoCaptureStepViewController () + +@end + + +@implementation ORKVideoCaptureStepViewController { + ORKVideoCaptureView *_videoCaptureView; + ORKVideoCaptureStep *_videoCaptureStep; + dispatch_queue_t _sessionQueue; + AVCaptureSession *_captureSession; + AVCaptureMovieFileOutput *_movieFileOutput; + NSURL *_fileURL; + BOOL _recording; +} + +- (instancetype)initWithStep:(ORKStep *)step result:(ORKResult *)result { + self = [self initWithStep:step]; + if (self) { + ORKStepResult *stepResult = (ORKStepResult *)result; + if (stepResult && [stepResult results].count > 0) { + + ORKFileResult *fileResult = ORKDynamicCast([stepResult results].firstObject, ORKFileResult); + + if (fileResult.fileURL) { + self.fileURL = fileResult.fileURL; + } + } + } + return self; +} + +- (instancetype)initWithStep:(ORKStep *)step { + self = [super initWithStep:step]; + if (self) { + _videoCaptureView = [[ORKVideoCaptureView alloc] initWithFrame:CGRectZero]; + _videoCaptureView.videoCaptureStep = (ORKVideoCaptureStep *)step; + _videoCaptureView.delegate = self; + [self.view addSubview:_videoCaptureView]; + + _videoCaptureStep = (ORKVideoCaptureStep *)self.step; + _movieFileOutput = [AVCaptureMovieFileOutput new]; + + self.fileURL = nil; + + [self setUpConstraints]; + } + return self; +} + +- (void)setUpConstraints { + NSMutableArray *constraints = [NSMutableArray new]; + + NSDictionary *views = @{ @"videoCaptureView": _videoCaptureView }; + _videoCaptureView.translatesAutoresizingMaskIntoConstraints = NO; + + [constraints addObjectsFromArray:[NSLayoutConstraint constraintsWithVisualFormat:@"V:|[videoCaptureView]|" + options:NSLayoutFormatDirectionLeadingToTrailing + metrics:nil + views:views]]; + [constraints addObjectsFromArray:[NSLayoutConstraint constraintsWithVisualFormat:@"H:|[videoCaptureView]|" + options:NSLayoutFormatDirectionLeadingToTrailing + metrics:nil + views:views]]; + [NSLayoutConstraint activateConstraints:constraints]; +} + +- (void)setContinueButtonItem:(UIBarButtonItem *)continueButtonItem { + [super setContinueButtonItem:continueButtonItem]; + _videoCaptureView.continueButtonItem = continueButtonItem; +} + +- (void)setSkipButtonItem:(UIBarButtonItem *)skipButtonItem { + [super setSkipButtonItem:skipButtonItem]; + _videoCaptureView.skipButtonItem = skipButtonItem; +} + +- (void)viewDidLoad { + [super viewDidLoad]; + + // Capture actions should be performed off the main queue to keep the UI responsive + _sessionQueue = dispatch_queue_create("session queue", DISPATCH_QUEUE_SERIAL); + + // Setup the capture session + dispatch_async(_sessionQueue, ^{ + [self queue_SetupCaptureSession]; + }); +} + +- (void)viewWillAppear:(BOOL)animated { + [super viewWillAppear:animated]; + + // If we don't already have a captured image, then start running the capture session. + if (!_fileURL) { + dispatch_async(_sessionQueue, ^{ + [_captureSession startRunning]; + }); + } +} + +- (void)viewWillDisappear:(BOOL)animated { + // If the capture session is running, stop it + if (_captureSession.isRunning) { + dispatch_async(_sessionQueue, ^{ + [_captureSession stopRunning]; + }); + } + + [_videoCaptureView.playerViewController.player pause]; + + [super viewWillDisappear:animated]; +} + +- (void)queue_SetupCaptureSession { + // Create the session + _captureSession = [AVCaptureSession new]; + [_captureSession beginConfiguration]; + + // Get the camera + AVCaptureDevice *device; + + NSArray *devices = [AVCaptureDevice devicesWithMediaType:AVMediaTypeVideo]; + for (AVCaptureDevice *d in devices) { + if (d.position == _videoCaptureStep.devicePosition) { + device = d; + break; + } + } + + if (device) { + // Check if the device has flash. + if ([device isFlashModeSupported:_videoCaptureStep.flashMode]) { + [device lockForConfiguration:nil]; + device.flashMode = _videoCaptureStep.flashMode; + [device unlockForConfiguration]; + } + + // Configure the input and output + AVCaptureDeviceInput *input = [AVCaptureDeviceInput deviceInputWithDevice:device error:nil]; + + AVCaptureMovieFileOutput *movieFileOutput = [AVCaptureMovieFileOutput new]; + movieFileOutput.maxRecordedDuration = CMTimeMakeWithSeconds(_videoCaptureStep.duration.floatValue, 30.0); + + if ([_captureSession canAddInput:input] && [_captureSession canAddOutput:movieFileOutput]) { + [_captureSession addInput:input]; + [_captureSession addOutput:movieFileOutput]; + + if (!_videoCaptureStep.audioMute) { + AVCaptureDevice *audioDevice = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeAudio]; + AVCaptureDeviceInput * audioInput = [AVCaptureDeviceInput deviceInputWithDevice:audioDevice error:nil]; + if ([_captureSession canAddInput:audioInput]) { + [_captureSession addInput:audioInput]; + } + } + _movieFileOutput = movieFileOutput; + } else { + dispatch_async(dispatch_get_main_queue(), ^{ + [self handleError:[NSError errorWithDomain:NSCocoaErrorDomain code:NSFeatureUnsupportedError userInfo:@{NSLocalizedDescriptionKey:ORKLocalizedString(@"CAPTURE_ERROR_NO_PERMISSIONS", nil)}]]; + }); + _captureSession = nil; + } + } else { + dispatch_async(dispatch_get_main_queue(), ^{ + [self handleError:[NSError errorWithDomain:NSCocoaErrorDomain code:NSFeatureUnsupportedError userInfo:@{NSLocalizedDescriptionKey:ORKLocalizedString(@"CAPTURE_ERROR_CAMERA_NOT_FOUND", nil)}]]; + }); + _captureSession = nil; + } + + + [_captureSession commitConfiguration]; + + _videoCaptureView.session = _captureSession; +} + +- (void)handleError:(NSError *)error { + // Shut down the session, if running + if (_captureSession.isRunning) { + ORKStrongTypeOf(_captureSession) strongCaptureSession = _captureSession; + dispatch_async(_sessionQueue, ^{ + [strongCaptureSession stopRunning]; + }); + } + + // Reset the state to before the capture session was setup. Order here is important + _captureSession = nil; + _movieFileOutput = nil; + _videoCaptureView.session = nil; + _videoCaptureView.videoFileURL = nil; + _fileURL = nil; + + // Show the error in the image capture view + _videoCaptureView.error = error; +} + +- (void)setFileURL:(NSURL *)fileURL { + _fileURL = fileURL; + _videoCaptureView.videoFileURL = fileURL; + + [self notifyDelegateOnResultChange]; +} + +- (void)setRecording:(BOOL)recording { + _recording = recording; + _videoCaptureView.recording = recording; +} + +- (ORKStepResult *)result { + ORKStepResult *stepResult = [super result]; + NSDate *now = stepResult.endDate; + + NSMutableArray *results = [NSMutableArray arrayWithArray:stepResult.results]; + ORKFileResult *fileResult = [[ORKFileResult alloc] initWithIdentifier:self.step.identifier]; + fileResult.startDate = stepResult.startDate; + fileResult.endDate = now; + fileResult.contentType = @"video/mp4"; + fileResult.fileURL = _fileURL; + [results addObject:fileResult]; + stepResult.results = [results copy]; + return stepResult; +} + + +#pragma mark - ORKVideoCaptureViewDelegate + +- (void)retakePressed:(void (^)())handler { + dispatch_async(_sessionQueue, ^{ + [_captureSession startRunning]; + dispatch_async(dispatch_get_main_queue(), ^{ + self.fileURL = nil; + if (handler) { + handler(); + } + }); + }); +} + +- (void)capturePressed:(void (^)())handler { + // Capture the video via the output + dispatch_async(_sessionQueue, ^{ + _fileURL = [self.outputDirectory URLByAppendingPathComponent:[NSString stringWithFormat:@"%@.mp4",self.step.identifier]]; + + NSFileManager *fileManager = [NSFileManager defaultManager]; + if ([fileManager fileExistsAtPath:_fileURL.path]) { + [fileManager removeItemAtURL:_fileURL error:nil]; + } + + + [_movieFileOutput startRecordingToOutputFileURL:_fileURL + recordingDelegate:self]; + + // Use the main queue, as UI components may need to be updated + dispatch_async(dispatch_get_main_queue(), ^{ + if (handler) { + handler(); + } + }); + }); +} + +- (void)stopCapturePressed:(void (^)())handler { + dispatch_async(_sessionQueue, ^{ + [_movieFileOutput stopRecording]; + + // Use the main queue, as UI components may need to be updated + dispatch_async(dispatch_get_main_queue(), ^{ + if (handler) { + handler(); + } + }); + }); +} + +- (void)videoOrientationDidChange:(AVCaptureVideoOrientation)videoOrientation { + // Keep the output orientation in sync with the input orientation + NSArray *connections = _movieFileOutput.connections; + if (connections.count > 0) { + connections[0].videoOrientation = videoOrientation; + } +} + + +#pragma mark - AVCaptureFileOutputRecordingDelegate + +- (void)captureOutput:(AVCaptureFileOutput *)captureOutput didStartRecordingToOutputFileAtURL:(NSURL *)fileURL fromConnections:(NSArray *)connections { + self.recording = YES; +} + +- (void)captureOutput:(AVCaptureFileOutput *)captureOutput didFinishRecordingToOutputFileAtURL:(NSURL *)outputFileURL fromConnections:(NSArray *)connections error:(NSError *)error { + if (error && !error.userInfo[AVErrorRecordingSuccessfullyFinishedKey]) { + _videoCaptureView.error = error; + return; + } + + self.recording = NO; + self.fileURL = outputFileURL; + + if (UIAccessibilityIsVoiceOverRunning()) { + UIAccessibilityPostNotification(UIAccessibilityAnnouncementNotification, ORKLocalizedString(@"AX_VIDEO_CAPTURE_COMPLETE", nil)); + } +} + +@end diff --git a/ResearchKit/Common/ORKVideoCaptureView.h b/ResearchKit/Common/ORKVideoCaptureView.h new file mode 100644 index 00000000..7bb616cd --- /dev/null +++ b/ResearchKit/Common/ORKVideoCaptureView.h @@ -0,0 +1,65 @@ +/* + Copyright (c) 2016, Apple Inc. All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + + 3. Neither the name of the copyright holder(s) nor the names of any contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. No license is granted to the trademarks of + the copyright holders even if such marks are included in this software. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + + +#import +#import +#import "ORKVideoCaptureStep.h" +#import "ORKVideoCaptureCameraPreviewView.h" + + +NS_ASSUME_NONNULL_BEGIN + +@protocol ORKVideoCaptureViewDelegate + +- (void)capturePressed:(void (^ _Nullable)())handler; +- (void)stopCapturePressed:(void (^ _Nullable)())handler; +- (void)retakePressed:(void (^ _Nullable)())handler; +- (void)videoOrientationDidChange:(AVCaptureVideoOrientation)videoOrientation; + +@end + + +@interface ORKVideoCaptureView : UIView + +@property (nonatomic, strong, nullable) ORKVideoCaptureStep *videoCaptureStep; +@property (nonatomic, weak, nullable) id delegate; +@property (nonatomic, weak, nullable) AVCaptureSession *session; +@property (nonatomic, strong, nullable) UIBarButtonItem *continueButtonItem; +@property (nonatomic, strong, nullable) UIBarButtonItem *skipButtonItem; +@property (nonatomic, strong, nullable) NSURL *videoFileURL; +@property (nonatomic, strong, nullable) NSError *error; +@property (nonatomic) BOOL recording; +@property (nonatomic, strong, nullable) ORKVideoCaptureCameraPreviewView *previewView; +@property (nonatomic, strong, readonly) AVPlayerViewController *playerViewController; + +@end + +NS_ASSUME_NONNULL_END diff --git a/ResearchKit/Common/ORKVideoCaptureView.m b/ResearchKit/Common/ORKVideoCaptureView.m new file mode 100644 index 00000000..018d785c --- /dev/null +++ b/ResearchKit/Common/ORKVideoCaptureView.m @@ -0,0 +1,436 @@ +/* + Copyright (c) 2016, Apple Inc. All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + + 3. Neither the name of the copyright holder(s) nor the names of any contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. No license is granted to the trademarks of + the copyright holders even if such marks are included in this software. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + + +#import "ORKVideoCaptureView.h" +#import "ORKVideoCaptureCameraPreviewView.h" +#import "ORKNavigationContainerView_Internal.h" +#import "ORKHelpers_Private.h" +#import "ORKHelpers_Internal.h" +#import "ORKSkin.h" +#import "ORKStepHeaderView_Internal.h" + + +@implementation ORKVideoCaptureView { + ORKStepHeaderView *_headerView; + ORKNavigationContainerView *_continueSkipContainer; + UIBarButtonItem *_captureButtonItem; + UIBarButtonItem *_stopButtonItem; + UIBarButtonItem *_recordingButtonItem; + UIBarButtonItem *_recaptureButtonItem; + NSMutableArray *_variableConstraints; + NSTimer *_timer; + CGFloat _recordTime; + NSDateComponentsFormatter *_dateComponentsFormatter; + + BOOL _capturePressesIgnored; + BOOL _stopCapturePressesIgnored; + BOOL _retakePressesIgnored; + BOOL _showSkipButtonItem; +} + +- (instancetype)initWithFrame:(CGRect)frame { + self = [super initWithFrame:frame]; + if (self) { + _previewView = [ORKVideoCaptureCameraPreviewView new]; + [self addSubview:_previewView]; + + _playerViewController = [AVPlayerViewController new]; + _playerViewController.videoGravity = AVLayerVideoGravityResizeAspectFill; + _playerViewController.allowsPictureInPicturePlayback = NO; + [self addSubview:_playerViewController.view]; + + _headerView = [ORKStepHeaderView new]; + _headerView.instructionLabel.text = @" "; + [self addSubview:_headerView]; + + _captureButtonItem = [[UIBarButtonItem alloc] initWithTitle:ORKLocalizedString(@"CAPTURE_BUTTON_CAPTURE_VIDEO", nil) + style:UIBarButtonItemStylePlain + target:self + action:@selector(capturePressed)]; + + _stopButtonItem = [[UIBarButtonItem alloc] initWithTitle:ORKLocalizedString(@"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO", nil) + style:UIBarButtonItemStylePlain + target:self + action:@selector(stopCapturePressed)]; + + _recordingButtonItem = [[UIBarButtonItem alloc] initWithTitle:nil + style:UIBarButtonItemStylePlain + target:self + action:nil]; + + _recaptureButtonItem = [[UIBarButtonItem alloc] initWithTitle:ORKLocalizedString(@"CAPTURE_BUTTON_RECAPTURE_VIDEO", nil) + style:UIBarButtonItemStylePlain + target:self + action:@selector(retakePressed)]; + + _continueSkipContainer = [ORKNavigationContainerView new]; + _continueSkipContainer.continueEnabled = YES; + _continueSkipContainer.topMargin = 5; + _continueSkipContainer.bottomMargin = 15; + _continueSkipContainer.optional = YES; + _continueSkipContainer.backgroundColor = ORKColor(ORKBackgroundColorKey); + [self addSubview:_continueSkipContainer]; + + [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(orientationDidChange) name:UIApplicationDidChangeStatusBarOrientationNotification object:nil]; + [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(queue_sessionRunning) name:AVCaptureSessionDidStartRunningNotification object:nil]; + [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(sessionWasInterrupted:) name:AVCaptureSessionWasInterruptedNotification object:self.session]; + [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(sessionInterruptionEnded:) name:AVCaptureSessionInterruptionEndedNotification object:self.session]; + + [self updateAppearance]; + } + return self; +} + +- (void)dealloc { + [[NSNotificationCenter defaultCenter] removeObserver:self]; +} + +- (void)queue_sessionRunning { + dispatch_async(dispatch_get_main_queue(), ^{ + _previewView.templateImageHidden = NO; + }); +} + +- (void)orientationDidChange { + AVCaptureVideoOrientation orientation; + switch ([[UIApplication sharedApplication] statusBarOrientation]) { + case UIInterfaceOrientationLandscapeRight: + orientation = AVCaptureVideoOrientationLandscapeRight; + break; + case UIInterfaceOrientationLandscapeLeft: + orientation = AVCaptureVideoOrientationLandscapeLeft; + break; + case UIInterfaceOrientationPortraitUpsideDown: + orientation = AVCaptureVideoOrientationPortraitUpsideDown; + break; + case UIInterfaceOrientationPortrait: + orientation = AVCaptureVideoOrientationPortrait; + break; + case UIInterfaceOrientationUnknown: + // Do nothing in these cases, since we don't need to change display orientation. + return; + } + + [_previewView setVideoOrientation:orientation]; + [self.delegate videoOrientationDidChange:orientation]; + [self setNeedsUpdateConstraints]; +} + +- (void)setVideoCaptureStep:(ORKVideoCaptureStep *)videoCaptureStep { + _videoCaptureStep = videoCaptureStep; + + _previewView.templateImage = _videoCaptureStep.templateImage; + _previewView.templateImageInsets = _videoCaptureStep.templateImageInsets; + + _captureButtonItem.accessibilityHint = _videoCaptureStep.accessibilityHint; + + _showSkipButtonItem = _videoCaptureStep.optional; + + [self updateAppearance]; +} + +- (void)updateAppearance { + + _headerView.alpha = (self.error) ? 1 : 0; + _previewView.alpha = (self.error) ? 0 : 1; + + if (self.error) { + // Display the error instruction. + _headerView.instructionLabel.text = [self.error.userInfo valueForKey:NSLocalizedDescriptionKey]; + + // Hide the template image if there is an error + _previewView.templateImageHidden = YES; + _previewView.accessibilityHint = nil; + _playerViewController.view.hidden = YES; + + // Show skip, if available, and hide the template and continue/capture button + _continueSkipContainer.continueButtonItem = nil; + _continueSkipContainer.skipButtonItem = _skipButtonItem; + _continueSkipContainer.skipEnabled = YES; + } else if (self.videoFileURL) { + // Hide the template image after capturing + _previewView.templateImageHidden = YES; + _previewView.accessibilityHint = nil; + _playerViewController.view.hidden = NO; + + // Set the continue button to the one we've saved and configure the skip button as a recapture button + _continueSkipContainer.continueButtonItem = _continueButtonItem; + _continueSkipContainer.skipButtonItem = _recaptureButtonItem; + _continueSkipContainer.skipEnabled = YES; + } else if (self.recording) { + // Show the template image during capturing + _previewView.templateImageHidden = NO; + _previewView.accessibilityHint = _videoCaptureStep.accessibilityInstructions; + _playerViewController.view.hidden = YES; + + // Change the continue button back to capture. + _continueSkipContainer.continueButtonItem = _stopButtonItem; + + // Start a timer to show recording progress. + _recordingButtonItem.title = [self formattedTimeFromSeconds:_videoCaptureStep.duration.floatValue]; + _continueSkipContainer.skipButtonItem = _recordingButtonItem; + _continueSkipContainer.skipEnabled = NO; + _recordTime = 0.0; + _timer = [NSTimer scheduledTimerWithTimeInterval:0.1 + target:self + selector:@selector(updateRecordTime:) + userInfo:nil + repeats:YES]; + } else { + // Show the template image during capturing + _previewView.templateImageHidden = NO; + _previewView.accessibilityHint = _videoCaptureStep.accessibilityInstructions; + _playerViewController.view.hidden = YES; + + // Change the continue button back to capture, and change the recapture button back to skip (if available) + _continueSkipContainer.continueButtonItem = _captureButtonItem; + _continueSkipContainer.skipButtonItem = _skipButtonItem; + _continueSkipContainer.skipEnabled = YES; + } +} + +- (void)setVideoFileURL:(NSURL *)videoFileURL { + _videoFileURL = videoFileURL; + _previewView.videoFileURL = videoFileURL; + + if (_videoFileURL != nil) { + AVPlayerItem *item = [[AVPlayerItem alloc] initWithURL:_videoFileURL]; + _playerViewController.player = [[AVPlayer alloc] initWithPlayerItem:item]; + } + + [self updateAppearance]; +} + +- (void)setRecording:(BOOL)recording { + _recording = recording; + [self updateAppearance]; +} + +- (void)setError:(NSError *)error { + _error = error; + [self updateAppearance]; +} + +- (void)updateConstraints { + const CGFloat ContinueSkipContainerTranslucentAlpha = 0.5; + const CGFloat ContinueSkipContainerOpaqueAlpha = 0.0; + + if (_variableConstraints) { + [NSLayoutConstraint deactivateConstraints:_variableConstraints]; + [_variableConstraints removeAllObjects]; + } + + if (!_variableConstraints) { + _variableConstraints = [NSMutableArray new]; + } + + UIView *playerView = _playerViewController.view; + + NSDictionary *views = NSDictionaryOfVariableBindings(self, _previewView, _continueSkipContainer, _headerView, playerView); + ORKEnableAutoLayoutForViews(views.allValues); + + [_variableConstraints addObjectsFromArray: + [NSLayoutConstraint constraintsWithVisualFormat:@"H:|[_headerView]|" + options:NSLayoutFormatDirectionLeadingToTrailing + metrics:nil + views:views]]; + + [_variableConstraints addObjectsFromArray:[NSLayoutConstraint constraintsWithVisualFormat:@"H:|[_previewView]|" + options:NSLayoutFormatDirectionLeadingToTrailing + metrics:nil + views:views]]; + + [_variableConstraints addObjectsFromArray: + [NSLayoutConstraint constraintsWithVisualFormat:@"V:|[_headerView]-[_continueSkipContainer]|" + options:NSLayoutFormatDirectionLeadingToTrailing + metrics:nil + views:views]]; + [_variableConstraints addObjectsFromArray: + [NSLayoutConstraint constraintsWithVisualFormat:@"H:|[_continueSkipContainer]|" + options:NSLayoutFormatDirectionLeadingToTrailing + metrics:nil + views:views]]; + [_variableConstraints addObjectsFromArray:[NSLayoutConstraint constraintsWithVisualFormat:@"H:|[playerView]|" + options:NSLayoutFormatDirectionLeadingToTrailing + metrics:nil + views:views]]; + + [_variableConstraints addObjectsFromArray:[NSLayoutConstraint constraintsWithVisualFormat:@"V:|[playerView]-[_continueSkipContainer]|" + options:NSLayoutFormatDirectionLeadingToTrailing + metrics:nil + views:views]]; + + + // Float the continue view over the previewView if in landscape to give more room for the preview + if (UIInterfaceOrientationIsLandscape([UIApplication sharedApplication].statusBarOrientation)) { + [_variableConstraints addObjectsFromArray: + [NSLayoutConstraint constraintsWithVisualFormat:@"V:|[_previewView]|" + options:NSLayoutFormatDirectionLeadingToTrailing metrics:nil + views:views]]; + [_variableConstraints addObject:[NSLayoutConstraint constraintWithItem:_continueSkipContainer + attribute:NSLayoutAttributeBottom + relatedBy:NSLayoutRelationEqual + toItem:self + attribute:NSLayoutAttributeBottom + multiplier:1.0 + constant:0.0]]; + _continueSkipContainer.backgroundColor = [_continueSkipContainer.backgroundColor colorWithAlphaComponent:ContinueSkipContainerTranslucentAlpha]; + } else { + [_variableConstraints addObjectsFromArray: + [NSLayoutConstraint constraintsWithVisualFormat:@"V:|[_previewView]-[_continueSkipContainer]|" + options:NSLayoutFormatDirectionLeadingToTrailing + metrics:nil + views:views]]; + _continueSkipContainer.backgroundColor = [_continueSkipContainer.backgroundColor colorWithAlphaComponent:ContinueSkipContainerOpaqueAlpha]; + } + + [NSLayoutConstraint activateConstraints:_variableConstraints]; + [super updateConstraints]; +} + +- (AVCaptureSession *)session { + return _previewView.session; +} + +- (void)setSession:(AVCaptureSession *)session { + _previewView.session = session; + // Set up the proper videoOrientation from the start + [self orientationDidChange]; +} + +- (void)setSkipButtonItem:(UIBarButtonItem *)skipButtonItem { + if (_showSkipButtonItem) { + _skipButtonItem = skipButtonItem; + [self updateAppearance]; + } +} + +- (void)setContinueButtonItem:(UIBarButtonItem *)continueButtonItem { + _continueButtonItem = continueButtonItem; + [self updateAppearance]; +} + +- (void)capturePressed { + // If we are still waiting for the delegate to complete, ignore futher presses + if (_capturePressesIgnored) + return; + + // Ignore futher presses until the delegate completes + _capturePressesIgnored = YES; + + // Capture the video via the delegate + [self.delegate capturePressed:^ { + // Stop ignoring presses + _capturePressesIgnored = NO; + }]; +} + +- (void)stopCapturePressed { + // If we are still waiting for the delegate to complete, ignore futher presses + if (_stopCapturePressesIgnored) + return; + + // Ignore futher presses until the delegate completes + _stopCapturePressesIgnored = YES; + + // Invalidate timer. + [_timer invalidate]; + + // Stop the video capture via the delegate + [self.delegate stopCapturePressed:^ { + // Stop ignoring presses + _stopCapturePressesIgnored = NO; + }]; + +} + +- (void)retakePressed { + // If we are still waiting for the delegate to complete, ignore futher presses + if (_retakePressesIgnored) + return; + + // Ignore futher presses until the delegate completes + _retakePressesIgnored = YES; + + // Tell the delegate to start capturing again + [self.delegate retakePressed:^{ + // Stop ignoring presses + _retakePressesIgnored = NO; + }]; +} + +- (void)updateRecordTime:(NSTimer *)timer { + _recordTime += timer.timeInterval; + + if (_recordTime >= _videoCaptureStep.duration.floatValue || !self.recording) { + [_timer invalidate]; + [self updateAppearance]; + } else { + CGFloat remainingTime = _videoCaptureStep.duration.floatValue - _recordTime; + _recordingButtonItem.title = [self formattedTimeFromSeconds:remainingTime]; + _continueSkipContainer.skipButtonItem = _recordingButtonItem; + } +} + +-(NSString *)formattedTimeFromSeconds:(CGFloat)seconds { + if (!_dateComponentsFormatter) { + _dateComponentsFormatter = [NSDateComponentsFormatter new]; + _dateComponentsFormatter.zeroFormattingBehavior = NSDateComponentsFormatterZeroFormattingBehaviorPad; + _dateComponentsFormatter.allowedUnits = NSCalendarUnitMinute | NSCalendarUnitSecond | NSCalendarUnitNanosecond; + } + return [_dateComponentsFormatter stringFromTimeInterval:seconds]; +} + +- (void)sessionWasInterrupted:(NSNotification *)notification { + AVCaptureSessionInterruptionReason reason = [notification.userInfo[AVCaptureSessionInterruptionReasonKey] integerValue]; + if (reason == AVCaptureSessionInterruptionReasonVideoDeviceNotAvailableWithMultipleForegroundApps) { + [self setError:[[NSError alloc] initWithDomain:@"" code:0 userInfo:@{NSLocalizedDescriptionKey : ORKLocalizedString(@"CAMERA_UNAVAILABLE_MESSAGE", nil)}]]; + } + [_previewView.session stopRunning]; +} + +- (void)sessionInterruptionEnded:(NSNotification *)notification { + [self setError:nil]; +} + +- (BOOL)accessibilityPerformMagicTap { + if (self.error) { + return NO; + } + if (self.videoFileURL) { + [self retakePressed]; + } else { + [self capturePressed]; + } + return YES; +} + +@end diff --git a/ResearchKit/Consent/ORKConsentReviewStepViewController.m b/ResearchKit/Consent/ORKConsentReviewStepViewController.m index 1eb01032..1424541f 100644 --- a/ResearchKit/Consent/ORKConsentReviewStepViewController.m +++ b/ResearchKit/Consent/ORKConsentReviewStepViewController.m @@ -382,7 +382,7 @@ static NSString *const _SignatureStepIdentifier = @"signatureStep"; [strongSelf.taskViewController setRegisteredScrollView:reviewViewController.webView.scrollView]; } - UIAccessibilityPostNotification(UIAccessibilityScreenChangedNotification, strongSelf.navigationItem.leftBarButtonItem); + UIAccessibilityPostNotification(UIAccessibilityScreenChangedNotification, nil); } }]; } diff --git a/ResearchKit/Localized/ar.lproj/ResearchKit.strings b/ResearchKit/Localized/ar.lproj/ResearchKit.strings index be8f1fde..76d93d76 100644 --- a/ResearchKit/Localized/ar.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/ar.lproj/ResearchKit.strings @@ -119,7 +119,7 @@ /* Verification step */ "VERIFICATION_NAV_TITLE" = "التحقق"; "VERIFICATION_STEP_TITLE" = "التحقق من البريد الإلكتروني"; -"RESEND_EMAIL_LABEL_MESSAGE" = "اضغط على الرابط أدناه إذا كنت لم تتلق بريد التحقق، وترغب بإرساله لك مرة أخرى."; +"RESEND_EMAIL_LABEL_MESSAGE" = "اضغط على الرابط أدناه إذا كنت لم تستلم بريد التحقق، وترغب بإرساله لك مرة أخرى."; "RESEND_EMAIL_BUTTON_TITLE" = "إعادة إرسال بريد التحقق"; /* Login step */ @@ -141,6 +141,7 @@ "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "فقط الأرقام مسموح بها."; "PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "مؤشر تقدم إدخال رمز الدخول"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "تم إدخال %1$@ من %2$@ من الأرقام"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "هل نسيت رمز الدخول؟"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "تعذر إضافة عنصر سلسلة المفاتيح."; @@ -167,6 +168,11 @@ "BOOL_NO" = "لا"; "BOOL_YES" = "نعم"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "سم"; +"MEASURING_UNIT_FT" = "قدم"; +"MEASURING_UNIT_IN" = "بوصة"; + /* Default placeholders to request answers in a questionnaire. */ "PLACEHOLDER_TEXT_OR_NUMBER" = "اضغط للإجابة"; "NULL_ANSWER" = "قم بتحديد إجابة"; @@ -189,11 +195,15 @@ "BUTTON_OPTION_SAVE" = "حفظ لما بعد"; "BUTTON_OPTION_DISCARD" = "تجاهل النتائج"; "BUTTON_OPTION_STOP_TASK" = "إنهاء المهمة"; +"BUTTON_SAVE" = "حفظ"; +"BUTTON_CLEAR_ANSWER" = "مسح الإجابة"; +"BUTTON_READ_ONLY_MODE" = "لا يمكن تعديل هذه الإجابة."; /* General active tasks. */ "COUNTDOWN_LABEL" = "بدء النشاط خلال"; "TASK_COMPLETE_TITLE" = "اكتمل النشاط"; "TASK_COMPLETE_TEXT" = "سيتم تحليل بياناتك وسيتم إعلامك عندما تصبح النتائج جاهزة."; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "متبقٍ %@ من الثواني."; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "التقاط صورة"; @@ -203,6 +213,11 @@ "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "لم يتم تحديد دليل إخراج للصور الملتقطة."; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "لا يمكن حفظ الصورة الملتقطة."; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "بدء التسجيل"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "إيقاف التسجيل"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "إعادة التقاط الفيديو"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "اللياقة"; "FITNESS_DISTANCE_TITLE_FORMAT" = "المسافة ‏(%@)"; @@ -213,7 +228,7 @@ "FITNESS_INTRO_2_TEXT_FORMAT" = "قم بالمشي في الخارج بأقصى سرعة ممكنة لديك لمدة %1$@. عندما تنتهي، اجلس وخذ استراحة لمدة %2$@. للبدء، اضغط على البدء."; /* Short walk active task. */ -"WALK_TASK_TITLE" = "سرعة المشية والتوازن"; +"WALK_TASK_TITLE" = "سرعة المشي والتوازن"; "WALK_INTRO_TEXT" = "يقيس هذا النشاط سرعة مشيتك وتوازنك أثناء المشي والوقوف ثابتًا. لا تقم بالمتابعة إذا لم تكن قادرًا على المشي دون مساعدة."; "WALK_INTRO_2_TEXT_%ld" = "اعثر على مكان يمكنك المشي فيه بصورة آمنة دون مساعدة لمسافة %ld من الخطوات تقريبًا في خط مستقيم."; "WALK_INTRO_2_DETAIL" = "ضع هاتفك في جيبك أو في حقيبة واتبع التعليمات الصوتية."; @@ -222,16 +237,33 @@ "WALK_RETURN_INSTRUCTION_FORMAT" = "قم بالدوران والمشي رجوعًا إلى نقطة بدايتك."; "WALK_OUTBOUND_INSTRUCTION_FORMAT" = "قم بمشي حوالي %ld خطوة في خط مستقيم."; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "ابحث عن مكان يمكنك المشي فيه ذهابًا وإيابًا في خط مستقيم بشكل آمن. حاول أن تسير بشكل مستمر عن طريق الدوران في نهايات مسارك، كما لو كنت تسير حول مخروط.\n\nبعد ذلك، سيتم إرشادك لتقوم بالدوران في دائرة كاملة، ثم الوقوف ثابتًا مع وضع ذراعيك إلى جانبيك وقدميك متباعدتين بمقدار عرض الكتف تقريبًا."; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "اضغط على البدء عندما تكون مستعدًا للبدء.\nثم ضع هاتفك في جيبك أو في حقيبة واتبع التعليمات الصوتية."; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "قم بالمشي ذهابًا وإيابًا في خط مستقيم %@. قم بالمشي كما تفعل عادة."; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "استدر بمقدار دائرة كاملة ثم قف ثابتًا لمدة %@."; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "لقد أكملت النشاط."; /* Tapping active task. */ "TAPPING_TASK_TITLE" = "سرعة الضغط"; +"TAPPING_TASK_TITLE_RIGHT" = "اليد اليمنى"; +"TAPPING_TASK_TITLE_LEFT" = "اليد اليسرى"; "TAPPING_INTRO_TEXT" = "يقيس هذا النشاط سرعتك في الضغط."; -"TAPPING_INTRO_TEXT_2_FORMAT" = "ضع هاتفك على سطح مستوٍ. سيظهر زران على الشاشة لمدة %@. باستخدام إصبعين من نفس اليد، اضغط على الزرين بالتناوب بأقصى سرعة ممكنة لديك."; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "ضع هاتفك على سطح مستوٍ."; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "استخدم إصبعين من نفس اليد للضغط بالتبادل على الزرين على الشاشة."; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "استخدم إصبعين من يدك اليمنى للضغط بالتبادل على الزرين على الشاشة."; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "استخدم إصبعين من يدك اليسرى للضغط بالتبادل على الزرين على الشاشة."; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "الآن، كرر نفس الاختبار باستخدام يدك اليمنى."; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "الآن، كرر نفس الاختبار باستخدام يدك اليسرى."; +"TAPPING_INTRO_TEXT_2_FORMAT" = "اضغط بإصبع، ثم بالإصبع الآخر. حاول ضبط وقت ضغطاتك ليكون متساويًا قدر الإمكان. واستمر في الضغط لمدة %@."; "TAPPING_CALL_TO_ACTION" = "اضغط على البدء لكي تبدأ."; +"TAPPING_CALL_TO_ACTION_NEXT" = "اضغط على التالي للبدء."; "TAP_BUTTON_TITLE" = "الضغط"; "TOTAL_TAPS_LABEL" = "إجمالي الضغطات"; -"TAPPING_INSTRUCTION" = "اضغط على الزرين بأقصى سرعة ممكنة لديك باستخدام إصبعين."; - +"TAPPING_INSTRUCTION" = "اضغط على الزرين بتوافق قدر الإمكان باستخدام إصبعين."; +"TAPPING_INSTRUCTION_RIGHT" = "اضغط على الزرين باستخدام يدك اليمنى."; +"TAPPING_INSTRUCTION_LEFT" = "اضغط على الزرين باستخدام يدك اليسرى."; +"TAPPING_SKIP_TITLE" = "تخطي هذه اليد"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "الصوت"; @@ -241,6 +273,9 @@ "AUDIO_INTENDED_USE" = "يعمل هذا النشاط على تقييم صوتك من خلال تسجيله بالميكروفون الموجود في أسفل هاتفك."; "AUDIO_TOO_LOUD_LABEL" = "عالٍ جدًا"; "AUDIO_GENERIC_ERROR_LABEL" = "غير قادر على تسجيل الصوت"; +"AUDIO_LEVEL_CHECK_LABEL" = "الرجاء الانتظار حتى يتم التحقق من مستوى الضوضاء في الخلفية."; +"AUDIO_TOO_LOUD_MESSAGE" = "مستوى الضوضاء المحيطة عالٍ جدًا بحيث لا يمكن تسجيل صوتك. الرجاء الانتقال إلى مكان أكثر هدوءًا والمحاولة مرة أخرى."; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "اضغط على التالي عندما تكون مستعدًا."; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "قياس سمع النغمة"; @@ -339,6 +374,48 @@ "HOLE_PEG_TEST_TEXT" = "رفع العقدة باستخدام اصبعين."; "HOLE_PEG_TEST_TEXT_2" = "ارفع الأصابع لإسقاط العقدة."; +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "نشاط الرُعاش"; +"TREMOR_TEST_INTRO_1_DETAIL" = "يقيس هذا النشاط مقدار رُعاش يديك بمختلف الأوضاع. ابحث عن مكان يمكنك الجلوس فيه بشكل مريح أثناء مدة هذا النشاط."; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "أمسك الهاتف في يدك الأكثر تأثرًا كما يظهر في الصورة أدناه."; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "أمسك الهاتف في يدك اليمنى كما يظهر في الصورة أدناه."; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "أمسك الهاتف في يدك اليسرى كما يظهر في الصورة أدناه."; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "سيُطلب منك تنفيذ %@ أثناء الجلوس مع الإمساك بالهاتف في يديك."; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "مهمة واحدة"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "مهمتان"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "ثلاث مهام"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "أربع مهام"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "خمس مهام"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "اضغط على التالي للمتابعة."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "استعد لإمساك هاتفك في حِجرك."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "استعد لإمساك هاتفك في حِجرك بيدك اليسرى."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "استعد لإمساك هاتفك في حِجرك بيدك اليمنى."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "استمر في إمساك هاتفك في حِجرك لمدة %ld من الثواني."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "الآن، أمسك هاتفك ويدك ممدودة في مستوى الكتف."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "الآن، أمسك هاتفك ويدك اليسرى ممدودة في مستوى الكتف."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "الآن، أمسك هاتفك ويدك اليمنى ممدودة في مستوى الكتف."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "استمر في إمساك هاتفك ويدك ممدودة لمدة %ld من الثواني."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "الآن، أمسك هاتفك في مستوى الكتف مع ثني مرفقك."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "الآن، أمسك هاتفك ويدك اليسرى في مستوى الكتف مع ثني مرفقك."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "الآن، أمسك هاتفك ويدك اليمنى في مستوى الكتف مع ثني مرفقك."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "استمر في إمساك هاتفك مع ثني مرفقك لمدة %ld من الثواني"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "الآن، مع الاستمرار في ثني مرفقك، المس الهاتف بأنفك بشكل متكرر."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "الآن، مع الاستمرار في ثني مرفقك والإمساك بالهاتف في يدك اليسرى، المس الهاتف بأنفك بشكل متكرر."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "الآن، مع الاستمرار في ثني مرفقك والإمساك بالهاتف في يدك اليمنى، المس الهاتف بأنفك بشكل متكرر."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "استمر في لمس الهاتف بأنفك لمدة %ld من الثواني"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "استعد للتلويح كالملوك (التلويح عن طريق تدوير معصمك)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "استعد للتلويح كالملوك مع إمساك هاتفك في يدك اليسرى (التلويح عن طريق تدوير معصمك)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "استعد للتلويح كالملوك مع إمساك هاتفك في يدك اليمنى (التلويح عن طريق تدوير معصمك)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "استمر في التلويح كالملوك لمدة %ld من الثواني."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "الآن، انقل الهاتف إلى يدك اليسرى وتابع إلى المهمة التالية."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "الآن، انقل الهاتف إلى يدك اليمنى وتابع إلى المهمة التالية."; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "تابع إلى المهمة التالية."; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "اكتمل النشاط."; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "سيُطلب منك تنفيذ %@ أثناء الجلوس مع الإمساك بالهاتف في إحدى يديك، ثم تكرار ذلك باليد الأخرى."; +"TREMOR_SKIP_LEFT_HAND" = "لا يمكنني القيام بهذا النشاط بيدي اليسرى."; +"TREMOR_SKIP_RIGHT_HAND" = "لا يمكنني القيام بهذا النشاط بيدي اليمنى."; +"TREMOR_SKIP_NEITHER" = "يمكنني القيام بهذا النشاط بكلتا يدي."; + /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "تعذر إنشاء الملف"; "ERROR_DATALOGGER_COULD_NOT_FREE_SPACE" = "تعذر إزالة ملفات السجل الكافية للوصول إلى الحد"; @@ -378,6 +455,9 @@ "AX_IMAGE_CAPTURE_LABEL" = "معاينة الالتقاط"; "AX_IMAGE_CAPTURED_LABEL" = "تم التقاط الصورة"; +"AX_VIDEO_CAPTURE_LABEL" = "معاينة التقاط الفيديو"; +"AX_VIDEO_CAPTURED_LABEL" = "الفيديو الملتقط"; + "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "غير قادر على وضع القرص بحجم %@ على القرص بحجم %@"; "AX_TOWER_OF_HANOI_TARGET_DISK" = "الهدف"; "AX_TOWER_OF_HANOI_TOWER" = "برج"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "يحتوي على أقراص بأحجام %@"; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "فارغ"; -"AX_GRAPH_RANGE_FORMAT" = "يتراوح من %@ إلى %@"; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "يتراوح من %@ إلى %@"; +"AX_GRAPH_STACK_PREFIX" = "مجموعة تتكون من"; "AX_GRAPH_AND_SEPARATOR" = " و "; "AX_GRAPH_POINT_%@" = "النقطة: %@"; diff --git a/ResearchKit/Localized/ar.lproj/locversion.plist b/ResearchKit/Localized/ar.lproj/locversion.plist index 436a5184..944bc08a 100644 --- a/ResearchKit/Localized/ar.lproj/locversion.plist +++ b/ResearchKit/Localized/ar.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale ar LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/ca.lproj/ResearchKit.strings b/ResearchKit/Localized/ca.lproj/ResearchKit.strings index 2e80da1a..4ef69b52 100644 --- a/ResearchKit/Localized/ca.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/ca.lproj/ResearchKit.strings @@ -141,6 +141,7 @@ "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "Només es permeten caràcters numèrics."; "PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "Indicador de progrés d’ingrés del codi"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "%@ de %@ dígits introduïts"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "Has oblidat el codi?"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "No s’ha pogut afegir l’ítem del clauer."; @@ -167,6 +168,11 @@ "BOOL_NO" = "No"; "BOOL_YES" = "Sí"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "cm"; +"MEASURING_UNIT_FT" = "ft"; +"MEASURING_UNIT_IN" = "in"; + /* Default placeholders to request answers in a questionnaire. */ "PLACEHOLDER_TEXT_OR_NUMBER" = "Prémer per contestar"; "NULL_ANSWER" = "Seleccionar una resposta"; @@ -189,11 +195,15 @@ "BUTTON_OPTION_SAVE" = "Desar per després"; "BUTTON_OPTION_DISCARD" = "Descartar resultats"; "BUTTON_OPTION_STOP_TASK" = "Finalitzar tasca"; +"BUTTON_SAVE" = "Desar"; +"BUTTON_CLEAR_ANSWER" = "Esborrar la resposta"; +"BUTTON_READ_ONLY_MODE" = "Aquesta resposta no es pot modificar."; /* General active tasks. */ "COUNTDOWN_LABEL" = "Iniciant l’activitat en"; -"TASK_COMPLETE_TITLE" = "Activitat completa"; +"TASK_COMPLETE_TITLE" = "Activitat completada"; "TASK_COMPLETE_TEXT" = "S’analitzaran les dades i rebràs una notificació quan tinguis els resultats a punt."; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "Queden %@ segons."; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "Capturar la imatge"; @@ -203,6 +213,11 @@ "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "No s’ha especificat cap directori de sortida per a les imatges capturades."; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "No s’ha pogut desar la imatge capturada."; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "Iniciar la gravació"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "Aturar la gravació"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "Tornar a capturar el vídeo"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "Activitat física"; "FITNESS_DISTANCE_TITLE_FORMAT" = "Distància (%@)"; @@ -222,16 +237,33 @@ "WALK_RETURN_INSTRUCTION_FORMAT" = "Fes mitja volta i torna allà on has començat."; "WALK_OUTBOUND_INSTRUCTION_FORMAT" = "Camina fins a %ld passos en línia recta."; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "Busca un lloc on puguis anar i tornar caminant en línia recta de forma segura. Camina sense parar i gira al final del camí com si estiguessis vorejant un con.\n\nA continuació, se’t demanarà que giris fent un cercle complet i que et quedis quiet amb els braços als costats i els peus separats més o menys per la mateixa distància que hi ha entre espatlla i espatlla."; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "Quan estiguis a punt per començar, prem Començar.\nLlavors, posa’t el mòbil a la butxaca o a la bossa i segueix les instruccions d’àudio."; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "Vés i torna caminant en línia recta durant %@. Camina naturalment."; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "Gira fent un cercle complet i llavors queda’t quiet durant %@."; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "Has completat l’activitat."; /* Tapping active task. */ "TAPPING_TASK_TITLE" = "Velocitat de premuda"; +"TAPPING_TASK_TITLE_RIGHT" = "Mà dreta"; +"TAPPING_TASK_TITLE_LEFT" = "Mà esquerra"; "TAPPING_INTRO_TEXT" = "Aquesta activitat mesura la velocitat de premuda."; -"TAPPING_INTRO_TEXT_2_FORMAT" = "Deixa el telèfon sobre una superfície plana. Apareixeran dos botons a la pantalla durant %@. Amb dos dits de la mateixa mà, prem els botons alternadament tan ràpid com puguis."; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "Deixa el mòbil sobre una superfície plana."; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "Prem els botons de la pantalla alternant dos dits de la mateixa mà."; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "Prem els botons de la pantalla alternant dos dits de la mà dreta."; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "Prem els botons de la pantalla alternant dos dits de la mà esquerra."; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "Ara repeteix la mateixa operació amb la mà dreta."; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "Ara repeteix la mateixa operació amb la mà esquerra."; +"TAPPING_INTRO_TEXT_2_FORMAT" = "Prem amb un dit, i després amb l’altre. Intenta que el ritme de premuda sigui constant. Prem durant %@."; "TAPPING_CALL_TO_ACTION" = "Per iniciar, prem Començar."; +"TAPPING_CALL_TO_ACTION_NEXT" = "Prem Següent per continuar."; "TAP_BUTTON_TITLE" = "Prem"; "TOTAL_TAPS_LABEL" = "Tocs totals"; -"TAPPING_INSTRUCTION" = "Prem els botons tan ràpid com puguis amb dos dits."; - +"TAPPING_INSTRUCTION" = "Prem els botons amb dos dits al ritme més constant que puguis."; +"TAPPING_INSTRUCTION_RIGHT" = "Prem els botons amb la mà DRETA."; +"TAPPING_INSTRUCTION_LEFT" = "Prem els botons amb la mà ESQUERRA."; +"TAPPING_SKIP_TITLE" = "Ometre aquesta mà"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "Veu"; @@ -241,6 +273,9 @@ "AUDIO_INTENDED_USE" = "Aquesta activitat avalua la teva veu tot gravant-la amb el micròfon de la part inferior del telèfon."; "AUDIO_TOO_LOUD_LABEL" = "Massa alt"; "AUDIO_GENERIC_ERROR_LABEL" = "No s’ha pogut gravar l’àudio"; +"AUDIO_LEVEL_CHECK_LABEL" = "Espera mentre es calcula el nivell de soroll de fons."; +"AUDIO_TOO_LOUD_MESSAGE" = "El soroll ambiental és massa fort per gravar la teva veu. Vés a un lloc més silenciós i torna‑ho a provar."; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "Prem Següent quan estiguis a punt."; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "Audiometria tonal"; @@ -339,6 +374,48 @@ "HOLE_PEG_TEST_TEXT" = "Agafa la clavilla fent servir dos dits."; "HOLE_PEG_TEST_TEXT_2" = "Aixeca els dits per deixar caure la clavilla."; +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "Activitat de tremolor"; +"TREMOR_TEST_INTRO_1_DETAIL" = "Aquesta activitat mesura la tremolor de les mans en diferents posicions. Busca un lloc on puguis seure còmodament per fer aquesta activitat."; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "Agafa el mòbil amb la mà més afectada, tal com es mostra a la imatge de sota."; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "Agafa el mòbil amb la mà DRETA, tal com es mostra a la imatge de sota."; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "Agafa el mòbil amb la mà ESQUERRA, tal com es mostra a la imatge de sota."; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "Quan estiguis assegut i amb el mòbil a la mà, se’t demanarà que completis %@."; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "una tasca"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "dues tasques"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "tres tasques"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "quatre tasques"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "cinc tasques"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "Prem Següent per començar."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "Prepara’t per agafar el mòbil i recolzar la mà sobre la falda."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "Prepara’t per agafar el mòbil amb la mà ESQUERRA i recolzar aquesta mà sobre la falda."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "Prepara’t per agafar el mòbil amb la mà DRETA i recolzar aquesta mà sobre la falda."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "Agafa el mòbil i recolza la mà sobre la falda durant %ld segons."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "Ara agafa el mòbil i mantén el braç estirat cap enfora a l’altura de l’espatlla."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "Ara agafa el mòbil amb la mà ESQUERRA i mantén el braç esquerre estirat cap enfora a l’altura de l’espatlla."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "Ara agafa el mòbil amb la mà DRETA i mantén el braç dret estirat cap enfora a l’altura de l’espatlla."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "Agafa el mòbil i mantén el braç estirat cap enfora durant %ld segons."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "Ara agafa el mòbil i mantén la mà a l’altura de l’espatlla amb el colze doblegat."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "Ara agafa el mòbil i mantén la mà ESQUERRA a l’altura de l’espatlla amb el colze doblegat."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "Ara agafa el mòbil i mantén la mà DRETA a l’altura de l’espatlla amb el colze doblegat."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "Agafa el mòbil i mantén el colze doblegat durant %ld segons."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "Ara, amb el colze doblegat, toca el mòbil amb el nas repetidament."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "Ara, amb el colze doblegat i el mòbil a la mà ESQUERRA, toca el mòbil amb el nas repetidament."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "Ara, amb el colze doblegat i el mòbil a la mà DRETA, toca el mòbil amb el nas repetidament."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "Toca el mòbil amb el nas durant %ld segons."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "Prepara’t per fer una salutació reial fent girar el canell amb el mòbil a la mà."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "Prepara’t per fer una salutació reial fent girar el canell amb el mòbil a la mà ESQUERRA."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "Prepara’t per fer una salutació reial fent girar el canell amb el mòbil a la mà DRETA."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "Fes una salutació reial durant %ld segons."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "Ara agafa el mòbil amb la mà ESQUERRA i avança a la tasca següent."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "Ara agafa el mòbil amb la mà DRETA i avança a la tasca següent."; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "Avança a la tasca següent."; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "Activitat completada."; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "Quan estiguis assegut i amb el mòbil a la mà, se’t demanarà que completis %@, primer amb una mà i després amb l’altra."; +"TREMOR_SKIP_LEFT_HAND" = "No puc completar l’activitat amb la mà ESQUERRA."; +"TREMOR_SKIP_RIGHT_HAND" = "No puc completar l’activitat amb la mà DRETA."; +"TREMOR_SKIP_NEITHER" = "Puc completar l’activitat amb les dues mans."; + /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "No s’ha pogut crear l’arxiu"; "ERROR_DATALOGGER_COULD_NOT_FREE_SPACE" = "No s’han pogut eliminar prou arxius de registre per assolir el llindar"; @@ -378,6 +455,9 @@ "AX_IMAGE_CAPTURE_LABEL" = "Previsualització de la captura"; "AX_IMAGE_CAPTURED_LABEL" = "Imatge capturada"; +"AX_VIDEO_CAPTURE_LABEL" = "Previsualització de la captura de vídeo"; +"AX_VIDEO_CAPTURED_LABEL" = "Vídeo capturat"; + "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "No s’ha pogut situar el disc de mida %@ sobre el disc de mida %@"; "AX_TOWER_OF_HANOI_TARGET_DISK" = "Objectiu"; "AX_TOWER_OF_HANOI_TOWER" = "Torre"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "Té disc amb mides %@"; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "Buidar"; -"AX_GRAPH_RANGE_FORMAT" = "Interval de %@ a %@"; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "Interval de %@ a %@"; +"AX_GRAPH_STACK_PREFIX" = "Pila composta per"; "AX_GRAPH_AND_SEPARATOR" = " i "; "AX_GRAPH_POINT_%@" = "Punt: %@"; diff --git a/ResearchKit/Localized/ca.lproj/locversion.plist b/ResearchKit/Localized/ca.lproj/locversion.plist index 7e155287..77a9c29d 100644 --- a/ResearchKit/Localized/ca.lproj/locversion.plist +++ b/ResearchKit/Localized/ca.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale ca LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/cs.lproj/ResearchKit.strings b/ResearchKit/Localized/cs.lproj/ResearchKit.strings index 6da779e5..b371cb5b 100644 --- a/ResearchKit/Localized/cs.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/cs.lproj/ResearchKit.strings @@ -119,7 +119,7 @@ /* Verification step */ "VERIFICATION_NAV_TITLE" = "Ověření"; "VERIFICATION_STEP_TITLE" = "Ověřte svůj e-mail"; -"RESEND_EMAIL_LABEL_MESSAGE" = "Pokud jste neobdrželi ověřovací e-mail a chcete, abychom vám ho zaslali znovu, klepněte na odkaz níže."; +"RESEND_EMAIL_LABEL_MESSAGE" = "Pokud jste neobdrželi ověřovací e‑mail a chcete, abychom vám ho zaslali znovu, klepněte na odkaz níže."; "RESEND_EMAIL_BUTTON_TITLE" = "Znovu odeslat ověřovací e‑mail"; /* Login step */ @@ -141,6 +141,7 @@ "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "Jsou povoleny jen číselné znaky."; "PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "Indikátor průběhu zadávání kódu"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "Zadané číslice: %@ z %@"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "Zapomněli jste kód?"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "Nepodařilo se přidat položku do svazku klíčů."; @@ -167,6 +168,11 @@ "BOOL_NO" = "Ne"; "BOOL_YES" = "Ano"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "cm"; +"MEASURING_UNIT_FT" = "ft"; +"MEASURING_UNIT_IN" = "in"; + /* Default placeholders to request answers in a questionnaire. */ "PLACEHOLDER_TEXT_OR_NUMBER" = "Odpověď"; "NULL_ANSWER" = "Vyberte odpověď"; @@ -189,11 +195,15 @@ "BUTTON_OPTION_SAVE" = "Nechat na později"; "BUTTON_OPTION_DISCARD" = "Zahodit výsledky"; "BUTTON_OPTION_STOP_TASK" = "Konec úlohy"; +"BUTTON_SAVE" = "Uložit"; +"BUTTON_CLEAR_ANSWER" = "Smazat odpověď"; +"BUTTON_READ_ONLY_MODE" = "Tuto odpověď nelze změnit."; /* General active tasks. */ "COUNTDOWN_LABEL" = "Aktivita se spustí za"; "TASK_COMPLETE_TITLE" = "Aktivita byla dokončena"; "TASK_COMPLETE_TEXT" = "Data budou analyzována a jakmile budou k dispozici výsledky, obdržíte oznámení."; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "Zbývá %@ s."; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "Pořídit obrázek"; @@ -203,6 +213,11 @@ "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "Nebyl určen žádný výstupní adresář pro pořízené obrázky."; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "Pořízený obrázek se nepodařilo uložit."; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "Začít nahrávat"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "Zastavit nahrávání"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "Znovu nahrát video"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "Kondice"; "FITNESS_DISTANCE_TITLE_FORMAT" = "Vzdálenost (%@)"; @@ -222,25 +237,45 @@ "WALK_RETURN_INSTRUCTION_FORMAT" = "Obraťte se a jděte zpátky na začátek."; "WALK_OUTBOUND_INSTRUCTION_FORMAT" = "Ujděte až %ld kroků v přímém směru."; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "Najděte si místo, na kterém můžete bezpečně přecházet sem a tam po přímé linii. Zkuste chodit bez přestávek a na konci se vždy otočte, jako byste obcházeli kužel.\n\nNásledně dostanete pokyn abyste se otočili kolem své osy a zůstali stát s rukama podél těla a nohama rozkročenýma na šířku ramen."; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "Až budete připraveni, klepněte na Začít.\nPak uložte telefon do kapsy nebo tašky a postupujte podle zvukových pokynů."; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "Po %@ se procházejte sem a tam po přímé linii. Jděte normálním krokem."; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "Otočte se kolem své osy a pak po %@ klidně stůjte."; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "Dokončili jste aktivitu."; /* Tapping active task. */ "TAPPING_TASK_TITLE" = "Rychlost klepání"; +"TAPPING_TASK_TITLE_RIGHT" = "Pravá ruka"; +"TAPPING_TASK_TITLE_LEFT" = "Levá ruka"; "TAPPING_INTRO_TEXT" = "Tato aktivita změří vaši rychlost klepání."; -"TAPPING_INTRO_TEXT_2_FORMAT" = "Položte telefon na rovný povrch. Na %@ se na obrazovce objeví dvě tlačítka. Dvěma prsty jedné ruky střídavě co nejrychleji na tlačítka klepejte."; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "Položte telefon na rovný povrch."; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "Dvěma prsty jedné ruky střídavě klepejte na tlačítka na obrazovce."; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "Dvěma prsty pravé ruky střídavě klepejte na tlačítka na obrazovce."; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "Dvěma prsty levé ruky střídavě klepejte na tlačítka na obrazovce."; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "Nyní test zopakujte pravou rukou."; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "Nyní test zopakujte levou rukou."; +"TAPPING_INTRO_TEXT_2_FORMAT" = "Klepněte jedním prstem a potom druhým. Zkuste klepat co nejvíc rovnoměrně. Pokračujte v klepání po %@."; "TAPPING_CALL_TO_ACTION" = "Začněte klepnutím na Začít."; +"TAPPING_CALL_TO_ACTION_NEXT" = "Začněte klepnutím na Další."; "TAP_BUTTON_TITLE" = "Klepněte"; "TOTAL_TAPS_LABEL" = "Počet klepnutí"; -"TAPPING_INSTRUCTION" = "Dvěma prsty co nejrychleji klepejte na tlačítka."; - +"TAPPING_INSTRUCTION" = "Dvěma prsty co nejrovnoměrněji klepejte na tlačítka."; +"TAPPING_INSTRUCTION_RIGHT" = "Klepejte na tlačítka PRAVOU rukou."; +"TAPPING_INSTRUCTION_LEFT" = "Klepejte na tlačítka LEVOU rukou."; +"TAPPING_SKIP_TITLE" = "Tuto ruku vynechat"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "Hlas"; "AUDIO_CALL_TO_ACTION" = "Začněte klepnutím na Začít."; -"AUDIO_INSTRUCTION" = "Řekněte \"Ááááá\" do mikrofonu a vydržte při tom co nejdéle."; +"AUDIO_INSTRUCTION" = "Řekněte \"Ááááá\" do mikrofonu a vydržte co nejdéle."; "AUDIO_INTRO_TEXT" = "Hluboce se nadechněte a při výdechu hlasitě a co nejdéle do mikrofonu vyslovujte \"Ááááá\". Udržujte konstantní úroveň hlasitosti, při které budou proužky zbarvené modře."; "AUDIO_INTENDED_USE" = "Tato aktivita vyhodnotí váš hlas, který bude zaznamenán pomocí mikrofonu u dolního okraje telefonu."; "AUDIO_TOO_LOUD_LABEL" = "Příliš nahlas"; "AUDIO_GENERIC_ERROR_LABEL" = "Nelze zaznamenávat zvuk"; +"AUDIO_LEVEL_CHECK_LABEL" = "Počkejte, než otestujeme úroveň okolního hluku."; +"AUDIO_TOO_LOUD_MESSAGE" = "Úroveň okolního hluku je pro nahrání vašeho hlasu příliš vysoká. Přesuňte se na klidnější místo a zkuste to znovu."; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "Až budete připraveni, klepněte na Další."; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "Tónová audiometrie"; @@ -339,6 +374,48 @@ "HOLE_PEG_TEST_TEXT" = "Uchopte kolík dvěma prsty."; "HOLE_PEG_TEST_TEXT_2" = "Zvednutím prstů kolík pusťte."; +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "Třes rukou"; +"TREMOR_TEST_INTRO_1_DETAIL" = "Tato aktivita měří třas rukou v různých polohách. Najděte si místo, na kterém budete moct po celou dobu aktivity pohodlně sedět."; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "Podržte telefon ve více postižené ruce tak, jak vidíte na obrázku."; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "Podržte telefon v PRAVÉ ruce tak, jak vidíte na obrázku."; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "Podržte telefon v LEVÉ ruce tak, jak vidíte na obrázku."; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "Budete požádáni o %@ při sezení s telefonem v ruce."; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "úkol"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "dva úkoly"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "tři úkoly"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "čtyři úkoly"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "pět úkolů"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "Pokračujte klepnutím na Další."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "Připravte se držet telefon na klíně."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "Připravte se držet telefon LEVOU rukou na klíně."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "Připravte se držet telefon PRAVOU rukou na klíně."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "Držte telefon na klíně po %ld s."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "Nyní držte telefon rukou nataženou ve výši ramen."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "Nyní držte telefon LEVOU rukou nataženou ve výši ramen."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "Nyní držte telefon PRAVOU rukou nataženou ve výši ramen."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "S nataženou rukou držte telefon po %ld s."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "Nyní ohněte ruku v lokti a držte telefon ve výši ramen."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "Nyní držte telefon ve výši ramen LEVOU rukou ohnutou v lokti."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "Nyní držte telefon ve výši ramen PRAVOU rukou ohnutou v lokti."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "S rukou ohnutou v lokti držte telefon po %ld s."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "Nyní se s rukou ohnutou v lokti opakovaně dotýkejte telefonem nosu."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "Nyní držte telefon ve výši ramen LEVOU rukou ohnutou v lokti a dotýkejte se jím opakovaně nosu."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "Nyní držte telefon ve výši ramen PRAVOU rukou ohnutou v lokti a dotýkejte se jím opakovaně nosu."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "Dotýkejte se telefonem nosu po %ld s."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "Připravte se zamávat otáčením zápěstí."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "Připravte se zamávat otáčením zápěstí s telefonem v LEVÉ ruce."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "Připravte se zamávat otáčením zápěstí s telefonem v PRAVÉ ruce."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "Mávejte otáčením zápěstí po %ld s."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "Nyní vezměte telefon do LEVÉ ruky a pokračujte dalším úkolem."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "Nyní vezměte telefon do PRAVÉ ruky a pokračujte dalším úkolem."; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "Pokračujte další úlohou."; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "Aktivita byla dokončena."; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "Budete požádáni o %@ při sezení s telefonem nejprve v jedné a pak v druhé ruce."; +"TREMOR_SKIP_LEFT_HAND" = "Tuto aktivitu nemůžu provádět LEVOU rukou."; +"TREMOR_SKIP_RIGHT_HAND" = "Tuto aktivitu nemůžu provádět PRAVOU rukou."; +"TREMOR_SKIP_NEITHER" = "Tuto aktivitu můžu provádět oběma rukama."; + /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "Soubor nelze vytvořit"; "ERROR_DATALOGGER_COULD_NOT_FREE_SPACE" = "Nepodařilo se odstranit dostatečné množství protokolů pro dosažení prahové hodnoty"; @@ -378,6 +455,9 @@ "AX_IMAGE_CAPTURE_LABEL" = "Náhled"; "AX_IMAGE_CAPTURED_LABEL" = "Pořízený obrázek"; +"AX_VIDEO_CAPTURE_LABEL" = "Náhled nahraného videa"; +"AX_VIDEO_CAPTURED_LABEL" = "Nahrané video"; + "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "Disk o velikosti %@ nelze umístit na disk o velikosti %@"; "AX_TOWER_OF_HANOI_TARGET_DISK" = "Cíl"; "AX_TOWER_OF_HANOI_TOWER" = "Věž"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "Obsahuje disky o velikosti %@"; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "Prázdné"; -"AX_GRAPH_RANGE_FORMAT" = "Rozmezí od %@ do %@"; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "Rozmezí od %@ do %@"; +"AX_GRAPH_STACK_PREFIX" = "Sada se skládá z"; "AX_GRAPH_AND_SEPARATOR" = " a "; "AX_GRAPH_POINT_%@" = "Bod: %@"; diff --git a/ResearchKit/Localized/cs.lproj/locversion.plist b/ResearchKit/Localized/cs.lproj/locversion.plist index 12c7ee67..f945aa1a 100644 --- a/ResearchKit/Localized/cs.lproj/locversion.plist +++ b/ResearchKit/Localized/cs.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale cs LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/da.lproj/ResearchKit.strings b/ResearchKit/Localized/da.lproj/ResearchKit.strings index 17684b0e..47bf307e 100644 --- a/ResearchKit/Localized/da.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/da.lproj/ResearchKit.strings @@ -56,7 +56,7 @@ "LEARN_MORE_DATA_GATHERING" = "Læs mere om, hvordan data indsamles"; "LEARN_MORE_DATA_USE" = "Læs mere om, hvordan data bruges"; "LEARN_MORE_PRIVACY" = "Læs mere om, hvordan din anonymitet og identitet er beskyttet"; -"LEARN_MORE_WELCOME" = "Læs mere om opgaverne først"; +"LEARN_MORE_WELCOME" = "Læs mere om undersøgelsen først"; "LEARN_MORE_STUDY_SURVEY" = "Læs mere om undersøgelsen"; "LEARN_MORE_TIME_COMMITMENT" = "Læs mere om undersøgelsens indflydelse på din tid"; "LEARN_MORE_TASKS" = "Læs mere om de involverede opgaver"; @@ -141,6 +141,7 @@ "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "Kun numeriske tegn er tilladt."; "PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "Statusindikator for indtastning af adgangskode"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "%@ af %@ cifre indtastet"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "Glemt adgangskoden?"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "Nøgleringsemne kunne ikke tilføjes."; @@ -167,6 +168,11 @@ "BOOL_NO" = "Ingen"; "BOOL_YES" = "Ja"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "cm"; +"MEASURING_UNIT_FT" = "fod"; +"MEASURING_UNIT_IN" = "\""; + /* Default placeholders to request answers in a questionnaire. */ "PLACEHOLDER_TEXT_OR_NUMBER" = "Tryk for at svare"; "NULL_ANSWER" = "Vælg et svar"; @@ -189,11 +195,15 @@ "BUTTON_OPTION_SAVE" = "Arkiver til senere"; "BUTTON_OPTION_DISCARD" = "Slet resultater"; "BUTTON_OPTION_STOP_TASK" = "Slut opgave"; +"BUTTON_SAVE" = "Arkiver"; +"BUTTON_CLEAR_ANSWER" = "Ryd svar"; +"BUTTON_READ_ONLY_MODE" = "Dette svar kan ikke ændres."; /* General active tasks. */ "COUNTDOWN_LABEL" = "Starter aktivitet om"; "TASK_COMPLETE_TITLE" = "Aktivitet færdig"; "TASK_COMPLETE_TEXT" = "Dine data vil blive analyseret, og du får besked, når resultaterne er klar."; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "%@ sekunder tilbage."; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "Tag billede"; @@ -203,6 +213,11 @@ "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "Der blev ikke anført noget resultatbibliotek til billederne."; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "Billedet kunne ikke arkiveres."; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "Start optagelse"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "Stop optagelse"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "Optag video igen"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "Fitness"; "FITNESS_DISTANCE_TITLE_FORMAT" = "Distance (%@)"; @@ -222,16 +237,33 @@ "WALK_RETURN_INSTRUCTION_FORMAT" = "Vend om, og gå tilbage til det sted, hvor du startede."; "WALK_OUTBOUND_INSTRUCTION_FORMAT" = "Gå op til %ld trin i en lige linje."; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "Find et sted, hvor du kan gå sikkert frem og tilbage i en lige linje. Forsøg at gå uden stop ved at vende i slutningen af din rute, som om du går omkring en kegle.\n\nDu vil derefter blive bedt om at dreje 360 grader omkring og derefter stå stille med dine arme ned langs siderne og med en skulderbreddes afstand mellem fødderne."; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "Tryk på Gå i gang, når du er klar til at begynde.\nAnbring derefter telefonen i en lomme eller taske, og følg lydinstruktionerne."; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "Gå frem og tilbage i en lige linje i %@. Gå, som du plejer."; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "Drej 360 grader rundt, og stå derefter stille i %@."; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "Du har færdiggjort aktiviteten."; /* Tapping active task. */ "TAPPING_TASK_TITLE" = "Hastighed på tryk"; +"TAPPING_TASK_TITLE_RIGHT" = "Højre hånd"; +"TAPPING_TASK_TITLE_LEFT" = "Venstre hånd"; "TAPPING_INTRO_TEXT" = "Denne aktivitet måler din trykhastighed."; -"TAPPING_INTRO_TEXT_2_FORMAT" = "Anbring telefonen på en plan overflade. Der vil vises to knapper på skærmen i %@. Brug derefter to fingre på samme hånd til skiftevis at trykke på knapperne så hurtigt, du kan."; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "Anbring din telefon på en plan overflade."; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "Tryk skiftevis på knapperne på skærmen med to fingre på den samme hånd."; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "Tryk skiftevis på knapperne på skærmen med to fingre på den højre hånd."; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "Tryk skiftevis på knapperne på skærmen med to fingre på den venstre hånd."; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "Gentag nu den samme test med din højre hånd."; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "Gentag nu den samme test med din venstre hånd."; +"TAPPING_INTRO_TEXT_2_FORMAT" = "Tryk med en finger og derefter med den anden. Forsøg at holde tiden mellem tryk så ensartet som muligt. Fortsæt med at trykke i %@."; "TAPPING_CALL_TO_ACTION" = "Tryk på Gå i gang for at starte."; +"TAPPING_CALL_TO_ACTION_NEXT" = "Tryk på Næste for at starte."; "TAP_BUTTON_TITLE" = "Tryk"; "TOTAL_TAPS_LABEL" = "Tryk i alt"; -"TAPPING_INSTRUCTION" = "Tryk på knapperne så hurtigt, som du kan med to fingre."; - +"TAPPING_INSTRUCTION" = "Tryk på knapperne så ensartet, som du kan vha. to fingre."; +"TAPPING_INSTRUCTION_RIGHT" = "Tryk på knapperne med din HØJRE hånd."; +"TAPPING_INSTRUCTION_LEFT" = "Tryk på knapperne med din VENSTRE hånd."; +"TAPPING_SKIP_TITLE" = "Spring denne hånd over"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "Stemme"; @@ -241,6 +273,9 @@ "AUDIO_INTENDED_USE" = "Denne aktivitet vurderer din stemme ved at optage den med mikrofonen nederst i telefonen."; "AUDIO_TOO_LOUD_LABEL" = "For højt"; "AUDIO_GENERIC_ERROR_LABEL" = "Kan ikke optage lyd"; +"AUDIO_LEVEL_CHECK_LABEL" = "Vent, mens støjniveauet i baggrunden kontrolles."; +"AUDIO_TOO_LOUD_MESSAGE" = "Det omgivende støjniveau er for højt til at optage din stemme. Gå et sted hen, hvor der er mere stille, og prøv igen."; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "Tryk på Næste, når du er klar."; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "Toneaudiometri"; @@ -295,18 +330,18 @@ /* Timed walk active task. */ "TIMED_WALK_TITLE" = "Gå på tid"; "TIMED_WALK_INTRO_DETAIL" = "Denne aktivitet måler funktionen i dine nedre ekstremiteter."; -"TIMED_WALK_INTRO_2_TEXT_%@" = "Find et sted, helst udenfor, hvor du trygt kan gå omkring i %@ på en lige linje så hurtigt som muligt. Sænk ikke farten, før du har passeret mållinjen."; +"TIMED_WALK_INTRO_2_TEXT_%@" = "Find et sted, helst udenfor, hvor du trygt kan gå omkring i %@ i en lige linje så hurtigt som muligt. Sænk ikke farten, før du har passeret mållinjen."; "TIMED_WALK_INTRO_2_DETAIL" = "Tryk på Næste for at starte."; "TIMED_WALK_FORM_TITLE" = "Hjælpemiddelenhed"; -"TIMED_WALK_FORM_TEXT" = "Brug det samme hjælpemiddelenhed til hver test."; +"TIMED_WALK_FORM_TEXT" = "Brug den samme hjælpemiddelenhed til hver test."; "TIMED_WALK_QUESTION_TEXT" = "Bruger du en ankel-fodortose?"; "TIMED_WALK_QUESTION_2_TITLE" = "Bruger du hjælpemiddelenheder?"; "TIMED_WALK_QUESTION_2_TEXT" = "Tryk her for at vælge et svar."; "TIMED_WALK_QUESTION_2_CHOICE" = "Ingen"; -"TIMED_WALK_QUESTION_2_CHOICE_2" = "En stok"; -"TIMED_WALK_QUESTION_2_CHOICE_3" = "En krykke"; -"TIMED_WALK_QUESTION_2_CHOICE_4" = "To stokke"; -"TIMED_WALK_QUESTION_2_CHOICE_5" = "To krykker"; +"TIMED_WALK_QUESTION_2_CHOICE_2" = "Enkeltsidig stok"; +"TIMED_WALK_QUESTION_2_CHOICE_3" = "Enkeltsidig krykke"; +"TIMED_WALK_QUESTION_2_CHOICE_4" = "Tosidig stok"; +"TIMED_WALK_QUESTION_2_CHOICE_5" = "Tosidig krykke"; "TIMED_WALK_QUESTION_2_CHOICE_6" = "Gangstativ/rollator"; "TIMED_WALK_INSTRUCTION_%@" = "Gå op til %@ i en lige linje."; "TIMED_WALK_INSTRUCTION_2" = "Vend om, og gå tilbage til det sted, hvor du startede."; @@ -327,7 +362,7 @@ /* Hole peg test active task. */ "HOLE_PEG_TEST_TITLE_%@" = "%@-huls Pegtest"; -"HOLE_PEG_TEST_INTRO_TEXT_%@" = "Denne aktivitet måler dine fingerfærdigheder ved at bede dig om at anbringe en cirkel i et hul. Du bliver bedt om at gøre dette %@ gange."; +"HOLE_PEG_TEST_INTRO_TEXT_%@" = "Denne aktivitet måler funktionen i dine øvre ekstremiteter ved at bede dig om at anbringe en pind i et hul. Du bliver bedt om at gøre dette %@ gange."; "HOLE_PEG_TEST_INTRO_TEXT_2_LEFT_HAND_FIRST_%@" = "Både din venstre og højre hånd testes.\nDu skal samle cirklen op så hurtigt som muligt, anbringe den i hullet, og når det er gjort %@ gange, skal du fjerne den igen %@ gange."; "HOLE_PEG_TEST_INTRO_TEXT_2_RIGHT_HAND_FIRST_%@" = "Både din højre og venstre hånd testes.\nDu skal samle cirklen op så hurtigt som muligt, anbringe den i hullet, og når det er gjort %@ gange, skal du fjerne den igen %@ gange."; @@ -339,6 +374,48 @@ "HOLE_PEG_TEST_TEXT" = "Saml cirklen op vha. to fingre."; "HOLE_PEG_TEST_TEXT_2" = "Løft fingrene for at slippe cirklen."; +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "Aktivitet med rysten"; +"TREMOR_TEST_INTRO_1_DETAIL" = "Denne aktivitet måler dine hænders rysten i forskellige positioner. Find et sted, hvor du kan sidde behageligt under hele aktiviteten."; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "Hold telefonen i den hånd, der er mest påvirket, som vist på billedet nedenfor."; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "Hold telefonen i din HØJRE hånd som vist på billedet nedenfor."; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "Hold telefonen i din VENSTRE hånd som vist på billedet nedenfor."; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "Du vil blive bedt om at udføre %@, mens du sidder med telefonen i hånden."; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "en opgave"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "to opgaver"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "tre opgaver"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "fire opgaver"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "fem opgaver"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "Tryk på næste for at fortsætte."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "Gør dig klar til at holde telefonen i skødet."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "Gør dig klar til at holde telefonen i skødet med din VENSTRE hånd."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "Gør dig klar til at holde telefonen i skødet med din HØJRE hånd."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "Bliv ved med at holde din telefon i skødet i %ld sekunder."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "Hold nu din telefon i skulderhøjde med udstrakt arm."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "Hold nu din telefon i skulderhøjde med VENSTRE arm udstrakt."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "Hold nu din telefon i skulderhøjde med HØJRE arm udstrakt."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "Bliv ved med at holde din telefon med udstrakt hånd i %ld sekunder."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "Hold nu din telefon i skulderhøjde med bøjet albue."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "Hold nu din telefon med din VENSTRE hånd i skulderhøjde med bøjet albue."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "Hold nu din telefon med din HØJRE hånd i skulderhøjde med bøjet albue."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "Bliv ved med at holde din telefon med bøjet albue i %ld sekunder"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "Hold nu din telefon med bøjet albue, mens du bliver ved med at røre din næse med telefonen."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "Hold nu din telefon med bøjet albue i VENSTRE hånd, mens du bliver ved med at røre din næse med telefonen."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "Hold nu din telefon med bøjet albue i HØJRE hånd, mens du bliver ved med at røre din næse med telefonen."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "Bliv ved med at røre din næse med telefonen i %ld sekunder."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "Gør dig klar til at udføre et dronningevink (vink ved at dreje dit håndled)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "Gør dig klar til at udføre et dronningevink (vink ved at dreje dit håndled) med telefonen i VENSTRE hånd."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "Gør dig klar til at udføre et dronningevink (vink ved at dreje dit håndled) med telefonen i HØJRE hånd."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "Bliv ved med at udføre et dronningevink i %ld sekunder."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "Flyt nu telefonen til din VENSTRE hånd, og fortsæt til næste opgave."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "Flyt nu telefonen til din HØJRE hånd, og fortsæt til næste opgave."; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "Fortsæt til den næste opgave."; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "Aktivitet færdig."; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "Du vil blive bedt om at udføre %@, mens du sidder med telefonen først i den ene hånd og derefter igen med telefonen i den anden hånd."; +"TREMOR_SKIP_LEFT_HAND" = "Jeg kan ikke udføre denne aktivitet med min VENSTRE hånd."; +"TREMOR_SKIP_RIGHT_HAND" = "Jeg kan ikke udføre denne aktivitet med min HØJRE hånd."; +"TREMOR_SKIP_NEITHER" = "Jeg kan udføre denne aktivitet med begge hænder."; + /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "Kunne ikke oprette arkiv"; "ERROR_DATALOGGER_COULD_NOT_FREE_SPACE" = "Kunne ikke fjerne tilstrækkeligt med logarkiver til at nå grænsen"; @@ -378,6 +455,9 @@ "AX_IMAGE_CAPTURE_LABEL" = "Tag billede af eksempel"; "AX_IMAGE_CAPTURED_LABEL" = "Taget billede"; +"AX_VIDEO_CAPTURE_LABEL" = "Eksempel på videooptagelse"; +"AX_VIDEO_CAPTURED_LABEL" = "Optaget video"; + "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "Kan ikke anbringe ring i størrelse %@ på ring i størrelse %@"; "AX_TOWER_OF_HANOI_TARGET_DISK" = "Mål"; "AX_TOWER_OF_HANOI_TOWER" = "Tårn"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "Har ringe med størrelserne %@"; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "Tom"; -"AX_GRAPH_RANGE_FORMAT" = "Udsnit fra %@ til %@"; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "Udsnit fra %@ til %@"; +"AX_GRAPH_STACK_PREFIX" = "Stak består af"; "AX_GRAPH_AND_SEPARATOR" = " og "; "AX_GRAPH_POINT_%@" = "Punkt: %@"; diff --git a/ResearchKit/Localized/da.lproj/locversion.plist b/ResearchKit/Localized/da.lproj/locversion.plist index 1208026c..e36092d6 100644 --- a/ResearchKit/Localized/da.lproj/locversion.plist +++ b/ResearchKit/Localized/da.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale da LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/de.lproj/ResearchKit.strings b/ResearchKit/Localized/de.lproj/ResearchKit.strings index f09c4f14..32e861f3 100644 --- a/ResearchKit/Localized/de.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/de.lproj/ResearchKit.strings @@ -34,10 +34,10 @@ "CONSENT_NAME_FAMILY" = "Nachname"; "CONSENT_NAME_PLACEHOLDER" = "Erforderlich"; "CONSENT_REVIEW_TITLE" = "Überprüfen"; -"CONSENT_REVIEW_INSTRUCTION" = "Überprüfen Sie das nachstehende Formular und tippen Sie auf „Zustimmen“, wenn Sie bereit sind fortzufahren."; +"CONSENT_REVIEW_INSTRUCTION" = "Überprüfe das nachstehende Formular und tippe auf „Zustimmen“, wenn du bereit bist fortzufahren."; "CONSENT_REVIEW_ALERT_TITLE" = "Überprüfen"; "CONSENT_SIGNATURE_TITLE" = "Unterschrift"; -"CONSENT_SIGNATURE_INSTRUCTION" = "Unterschreiben Sie unten auf der Linie mit Ihrem Finger."; +"CONSENT_SIGNATURE_INSTRUCTION" = "Unterschreibe unten auf der Linie mit deinem Finger."; "CONSENT_SIGNATURE_PLACEHOLDER" = "Hier unterschreiben"; "CONSENT_PAGE_NUMBER_FORMAT" = "Seite %1$ld von %2$ld"; @@ -55,7 +55,7 @@ /* Consent section learn more */ "LEARN_MORE_DATA_GATHERING" = "Weitere Infos über die Erfassung der Daten"; "LEARN_MORE_DATA_USE" = "Weitere Infos über die Verwendung der Daten"; -"LEARN_MORE_PRIVACY" = "Weitere Infos über den Schutz Ihrer Daten und Identität"; +"LEARN_MORE_PRIVACY" = "Weitere Infos über den Schutz deiner Daten und Identität"; "LEARN_MORE_WELCOME" = "Zunächst weitere Infos über diese Studie"; "LEARN_MORE_STUDY_SURVEY" = "Weitere Infos über die Studienumfrage"; "LEARN_MORE_TIME_COMMITMENT" = "Weitere Infos über den für diese Studie benötigten Zeitaufwand"; @@ -66,7 +66,7 @@ "CONSENT_SHARING_TITLE" = "Freigabe-Optionen"; "CONSENT_SHARE_WIDELY_%@" = "Meine Daten für %@ und qualifizierte Forscher auf der ganzen Welt freigeben"; "CONSENT_SHARE_ONLY_%@" = "Meine Daten nur freigeben für „%@“"; -"CONSENT_SHARING_DESCRIPTION_%@" = "Die Studiendaten von Ihrer Teilnahme an dieser Studie werden an %@ weitergegeben.\n\nDie Freigabe Ihrer verschlüsselten Studiendaten (ohne Infos wie z. B. Ihr Name) können für diese und künftige Studienzwecke von Nutzen sein."; +"CONSENT_SHARING_DESCRIPTION_%@" = "Die Studiendaten von deiner Teilnahme an dieser Studie werden an %@ weitergegeben.\n\nDie Freigabe deiner verschlüsselten Studiendaten (ohne Infos wie z. B. dein Name) können für diese und künftige Studienzwecke von Nutzen sein."; "LEARN_MORE_CONSENT_SHARING" = "Weitere Infos zur Datenfreigabe"; /* Lines beneath typewritten signatures on documents. Argument is the title of the signatory, e.g. "Participant's Signature" */ @@ -89,10 +89,10 @@ /* Alerts for invalid location coordinates */ "LOCATION_QUESTION_PLACEHOLDER" = "Eine Adresse eingeben"; "LOCATION_ERROR_TITLE" = "Angegebene Adresse konnte nicht gefunden werden"; -"LOCATION_ERROR_MESSAGE_LOCATION_UNKNOWN" = "Der aktuelle Standort konnte nicht ermittelt werden. Geben Sie eine Adresse ein oder begeben Sie sich ggf. an einen Ort mit einem besseren GPS-Signal."; -"LOCATION_ERROR_MESSAGE_DENIED" = "Diese App hat keinen Zugriff auf die Ortungsdienste. Erlauben Sie ihr in den Einstellungen das Verwenden der Ortungsdienste."; -"LOCATION_ERROR_GEOCODE" = "Die eingegebene Adresse konnte nicht gefunden werden. Überprüfen Sie, dass es sich um eine gültige Adresse handelt."; -"LOCATION_ERROR_GEOCODE_NETWORK" = "Es besteht entweder keine Internetverbindung oder Sie haben die höchstmögliche Anzahl an Adresssuchen erreicht. Wenn Sie nicht mit dem Internet verbunden sind, aktivieren Sie WLAN, um diese Frage zu beantworten, oder überspringen Sie sie, wenn die Taste „Überspringen“ angezeigt wird. Sie können auch zur Umfrage zurückkehren, wenn eine Internetverbindung hergestellt wurde. Versuchen Sie es andernfalls zu einem späteren Zeitpunkt erneut."; +"LOCATION_ERROR_MESSAGE_LOCATION_UNKNOWN" = "Der aktuelle Standort konnte nicht ermittelt werden. Gib eine Adresse ein oder begib dich ggf. an einen Ort mit einem besseren GPS-Signal."; +"LOCATION_ERROR_MESSAGE_DENIED" = "Diese App hat keinen Zugriff auf die Ortungsdienste. Erlaube ihr in den Einstellungen das Verwenden der Ortungsdienste."; +"LOCATION_ERROR_GEOCODE" = "Die eingegebene Adresse konnte nicht gefunden werden. Überprüfe, dass es sich um eine gültige Adresse handelt."; +"LOCATION_ERROR_GEOCODE_NETWORK" = "Es besteht entweder keine Internetverbindung oder du hast die höchstmögliche Anzahl an Adresssuchen erreicht. Wenn du nicht mit dem Internet verbunden bist, aktiviere WLAN, um diese Frage zu beantworten, oder überspringe sie, wenn die Taste „Überspringen“ angezeigt wird. Du kannst auch zur Umfrage zurückkehren, wenn eine Internetverbindung hergestellt wurde. Versuche es andernfalls zu einem späteren Zeitpunkt erneut."; /* Alert for exceeding length limit in text answer */ "TEXT_ANSWER_EXCEEDING_MAX_LENGTH_ALERT_MESSAGE" = "Textinhalt überschreitet die Maximallänge: %@"; @@ -119,7 +119,7 @@ /* Verification step */ "VERIFICATION_NAV_TITLE" = "Überprüfung"; "VERIFICATION_STEP_TITLE" = "E‑Mail überprüfen"; -"RESEND_EMAIL_LABEL_MESSAGE" = "Wenn Sie keine E-Mail zur Überprüfung erhalten haben, klicken Sie auf den Link unten, um sie sich erneut senden zu lassen."; +"RESEND_EMAIL_LABEL_MESSAGE" = "Wenn du keine E-Mail zur Überprüfung erhalten hast, klicke auf den Link unten, um sie dir erneut senden zu lassen."; "RESEND_EMAIL_BUTTON_TITLE" = "Bestätigungs-E‑Mail erneut senden"; /* Login step */ @@ -135,12 +135,13 @@ "PASSCODE_NEW_ENTRY_MESSAGE" = "Neuen Code eingeben"; "PASSCODE_CONFIRM_NEW_ENTRY_MESSAGE" = "Neuen Code bestätigen"; "PASSCODE_INVALID_ALERT_TITLE" = "Code nicht korrekt"; -"PASSCODE_INVALID_ALERT_MESSAGE" = "Code stimmte nicht überein. Versuchen Sie es erneut."; +"PASSCODE_INVALID_ALERT_MESSAGE" = "Code stimmte nicht überein. Versuche es erneut."; "PASSCODE_TOUCH_ID_MESSAGE" = "Mit Touch ID authentifizieren"; "PASSCODE_TOUCH_ID_ERROR_ALERT_TITLE" = "Touch ID-Fehler"; "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "Es sind nur numerische Zeichen zulässig."; "PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "Statusanzeige für Codeeingabe"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "%@ von %@ Stellen eingegeben"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "Code vergessen?"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "Schlüsselbundobjekt konnte nicht hinzugefügt werden"; @@ -167,6 +168,11 @@ "BOOL_NO" = "Nein"; "BOOL_YES" = "Ja"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "cm"; +"MEASURING_UNIT_FT" = "ft"; +"MEASURING_UNIT_IN" = "in"; + /* Default placeholders to request answers in a questionnaire. */ "PLACEHOLDER_TEXT_OR_NUMBER" = "Zum Antworten tippen"; "NULL_ANSWER" = "Antwort wählen"; @@ -189,118 +195,147 @@ "BUTTON_OPTION_SAVE" = "Für später sichern"; "BUTTON_OPTION_DISCARD" = "Ergebnisse löschen"; "BUTTON_OPTION_STOP_TASK" = "Aufgabe beenden"; +"BUTTON_SAVE" = "Sichern"; +"BUTTON_CLEAR_ANSWER" = "Antwort löschen"; +"BUTTON_READ_ONLY_MODE" = "Diese Antwort kann nicht geändert werden."; /* General active tasks. */ "COUNTDOWN_LABEL" = "Aktivität beginnt in"; "TASK_COMPLETE_TITLE" = "Aktivität abgeschlossen"; -"TASK_COMPLETE_TEXT" = "Ihre Daten werden analysiert und Sie werden benachrichtigt, wenn Ihre Ergebnisse bereitstehen."; +"TASK_COMPLETE_TEXT" = "Deine Daten werden analysiert und du wirst benachrichtigt, wenn deine Ergebnisse bereitstehen."; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "Noch %@ Sekunden."; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "Bild aufnehmen"; "CAPTURE_BUTTON_RECAPTURE_IMAGE" = "Bild erneut aufnehmen"; "CAPTURE_ERROR_CAMERA_NOT_FOUND" = "Keine Kamera gefunden. Dieser Schritt kann nicht abgeschlossen werden."; -"CAPTURE_ERROR_NO_PERMISSIONS" = "Erlauben Sie der App in den Einstellungen Zugriff auf die Kamera, um diesen Schritt abzuschließen."; +"CAPTURE_ERROR_NO_PERMISSIONS" = "Erlaube der App in den Einstellungen Zugriff auf die Kamera, um diesen Schritt abzuschließen."; "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "Es wurde keine Ausgabeverzeichnis für aufgenommene Bilder festgelegt."; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "Das aufgenommene Bild konnte nicht gesichert werden."; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "Aufnahme starten"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "Aufnahme stoppen"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "Video erneut aufnehmen"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "Fitness"; "FITNESS_DISTANCE_TITLE_FORMAT" = "Strecke (%@)"; "FITNESS_HEARTRATE_TITLE" = "Herzfrequenz (bpm)"; -"FITNESS_SIT_INSTRUCTION_FORMAT" = "Setzen Sie sich %@ bequem hin."; -"FITNESS_WALK_INSTRUCTION_FORMAT" = "Gehen Sie %@ lang so schnell wie möglich."; -"FITNESS_INTRO_TEXT_FORMAT" = "Mit dieser Aktivität wird Ihre Herzfrequenz kontrolliert und gemessen, wie weit Sie in %1$@ laufen können."; -"FITNESS_INTRO_2_TEXT_FORMAT" = "Gehen Sie draußen %1$@ lang so schnell wie möglich. Setzen Sie sich anschließend %2$@ bequem hin und ruhen Sie sich aus. Tippen Sie zum Starten auf „Los geht’s“."; +"FITNESS_SIT_INSTRUCTION_FORMAT" = "Setze dich %@ bequem hin."; +"FITNESS_WALK_INSTRUCTION_FORMAT" = "Gehe %@ lang so schnell wie möglich."; +"FITNESS_INTRO_TEXT_FORMAT" = "Mit dieser Aktivität wird deine Herzfrequenz kontrolliert und gemessen, wie weit du in %1$@ laufen kannst."; +"FITNESS_INTRO_2_TEXT_FORMAT" = "Gehe draußen %1$@ lang so schnell wie möglich. Setze dich anschließend %2$@ bequem hin und ruhe dich aus. Tippe zum Starten auf „Los geht’s“."; /* Short walk active task. */ "WALK_TASK_TITLE" = "Gang und Gleichgewicht"; -"WALK_INTRO_TEXT" = "Mit dieser Aktivität wird Ihr Gang und Gleichgewichtsinn beim Gehen und Stillstehen getestet. Fahren Sie nur fort, wenn Sie ohne Hilfe sicher gehen können."; -"WALK_INTRO_2_TEXT_%ld" = "Finden Sie eine Stelle, an der Sie sicher und ohne Hilfe etwa %ld Schritte in einer geraden Linie gehen können."; -"WALK_INTRO_2_DETAIL" = "Stecken Sie Ihr iPhone in eine Tasche und folgen Sie den Audioanweisungen."; -"WALK_STAND_VOICE_INSTRUCTION_FORMAT" = "Stehen Sie jetzt %@ still."; -"WALK_STAND_INSTRUCTION_FORMAT" = "Stehen Sie %@ still."; -"WALK_RETURN_INSTRUCTION_FORMAT" = "Drehen Sie sich um und gehen Sie zum Ausgangspunkt zurück."; -"WALK_OUTBOUND_INSTRUCTION_FORMAT" = "Gehen Sie bis zu %ld Schritte in einer geraden Linie."; +"WALK_INTRO_TEXT" = "Mit dieser Aktivität wird dein Gang und Gleichgewichtsinn beim Gehen und Stillstehen getestet. Fahre nur fort, wenn du ohne Hilfe sicher gehen kannst."; +"WALK_INTRO_2_TEXT_%ld" = "Finde eine Stelle, an der du sicher und ohne Hilfe etwa %ld Schritte in einer geraden Linie gehen kannst."; +"WALK_INTRO_2_DETAIL" = "Stecke dein iPhone in eine Tasche und folge den Audioanweisungen."; +"WALK_STAND_VOICE_INSTRUCTION_FORMAT" = "Stehe jetzt %@ still."; +"WALK_STAND_INSTRUCTION_FORMAT" = "Stehe %@ still."; +"WALK_RETURN_INSTRUCTION_FORMAT" = "Drehe dich um und gehe zum Ausgangspunkt zurück."; +"WALK_OUTBOUND_INSTRUCTION_FORMAT" = "Gehe bis zu %ld Schritte in einer geraden Linie."; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "Suche einen Ort an dem du sicher in einer geraden Linie vor und zurück gehen kannst. Versuche, ununterbrochen zu gehen, indem du am Ende des Wegs so wendest, als würdest du um ein Hütchen gehen.\n\nAnschließend wirst du aufgefordert, dich einmal im Kreis zu drehen und anschließend mit angelegten Armen etwa schulterbreit still zu stehen."; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "Tippe, wenn du bereit bist, anzufangen.\nStecke dann dein iPhone in eine Tasche und folge den Audioanweisungen."; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "Gehe in einer geraden Linie %@ weit vor und zurück. Gehe so, wie du normal gehst."; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "Drehe dich einmal im Kreis und bewege dich dann %@ lang nicht."; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "Du hast diese Aktivität abgeschlossen."; /* Tapping active task. */ "TAPPING_TASK_TITLE" = "Tipptempo"; -"TAPPING_INTRO_TEXT" = "Diese Aktivität misst Ihr Tipptempo."; -"TAPPING_INTRO_TEXT_2_FORMAT" = "Legen Sie Ihr Telefon auf eine ebene Fläche. Auf dem Bildschirm werden zwei Tasten %@ lang angezeigt. Tippen Sie mit zwei Fingern derselben Hand abwechselnd auf die Tasten."; -"TAPPING_CALL_TO_ACTION" = "Tippen Sie zum Starten auf „Los geht’s“."; +"TAPPING_TASK_TITLE_RIGHT" = "Rechte Hand"; +"TAPPING_TASK_TITLE_LEFT" = "Linke Hand"; +"TAPPING_INTRO_TEXT" = "Diese Aktivität misst dein Tipptempo."; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "Lege dein Telefon auf eine ebene Fläche."; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "Verwende zwei Finger derselben Hand, um abwechselnd auf die Tasten auf dem Bildschirm zu tippen."; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "Verwende zwei Finger deiner rechten Hand, um abwechselnd auf die Tasten auf dem Bildschirm zu tippen."; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "Verwende zwei Finger deiner linken Hand, um abwechselnd auf die Tasten auf dem Bildschirm zu tippen."; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "Wiederhole den Test nun mit deiner rechten Hand."; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "Wiederhole den Test nun mit deiner linken Hand."; +"TAPPING_INTRO_TEXT_2_FORMAT" = "Tippe erst mit einem Finger und dann mit dem anderen. Versuche in möglichst gleichmäßigen Abständen zu tippen. Tippe %@ lang."; +"TAPPING_CALL_TO_ACTION" = "Tippe zum Starten auf „Los geht’s“."; +"TAPPING_CALL_TO_ACTION_NEXT" = "Tippe auf „Weiter“, um anzufangen."; "TAP_BUTTON_TITLE" = "Tippen"; "TOTAL_TAPS_LABEL" = "Tippanzahl"; -"TAPPING_INSTRUCTION" = "Tippen Sie mit zwei Fingern so schnell wie möglich auf die Tasten."; - +"TAPPING_INSTRUCTION" = "Tippe mit zwei Fingern so gleichmäßig wie möglich auf die Tasten."; +"TAPPING_INSTRUCTION_RIGHT" = "Tippe mit deiner RECHTEN Hand auf die Tasten."; +"TAPPING_INSTRUCTION_LEFT" = "Tippe mit deiner LINKEN Hand auf die Tasten."; +"TAPPING_SKIP_TITLE" = "Diese Hand überspringen"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "Stimme"; -"AUDIO_CALL_TO_ACTION" = "Tippen Sie zum Starten auf „Los geht’s“."; -"AUDIO_INSTRUCTION" = "Sagen Sie solange wie möglich „Aaaaah“ in das Mikrofon."; -"AUDIO_INTRO_TEXT" = "Holen Sie tief Luft und sagen Sie solange wie möglich und mit gleichbleibender Lautstärke „Aaaaah“ in das Mikrofon, sodass die Audiobalken blau bleiben."; -"AUDIO_INTENDED_USE" = "Mit dieser Aktivität wird Ihre Stimme mit dem Mikrofon im unteren Bereich des iPhone aufgenommen und dann bewertet."; +"AUDIO_CALL_TO_ACTION" = "Tippe zum Starten auf „Los geht’s“."; +"AUDIO_INSTRUCTION" = "Sage solange wie möglich „Aaaaah“ in das Mikrofon."; +"AUDIO_INTRO_TEXT" = "Hole tief Luft und sage solange wie möglich und mit gleichbleibender Lautstärke „Aaaaah“ in das Mikrofon, sodass die Audiobalken blau bleiben."; +"AUDIO_INTENDED_USE" = "Mit dieser Aktivität wird deine Stimme mit dem Mikrofon im unteren Bereich des iPhone aufgenommen und dann bewertet."; "AUDIO_TOO_LOUD_LABEL" = "Zu laut"; "AUDIO_GENERIC_ERROR_LABEL" = "Aufnahme von Audiomaterial nicht möglich"; +"AUDIO_LEVEL_CHECK_LABEL" = "Bitte warte, während der Hintergrundgeräuschpegel überprüft wird."; +"AUDIO_TOO_LOUD_MESSAGE" = "Der Hintergrundgeräuschpegel ist zu hoch, um deine Stimme aufzunehmen. Bitte gehe an einen leiseren Ort und versuche es erneut."; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "Tippe auf „Weiter“, wenn du bereit bist."; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "Tonaudiometrie"; -"TONE_AUDIOMETRY_INTENDED_USE" = "Diese Aktivität misst Ihre Fähigkeit, unterschiedliche Töne zu hören."; -"TONE_AUDIOMETRY_INTRO_TEXT" = "Bevor Sie beginnen, sollten Sie Ihre Kopfhörer anschließen und aufsetzen."; -"TONE_AUDIOMETRY_CALL_TO_ACTION" = "Tippen Sie zum Starten auf „Los geht’s“."; -"TONE_AUDIOMETRY_PREP_TEXT" = "Sie sollten jetzt einen Ton hören. Passen Sie die Lautstärke mithilfe der Steuerungen an der Seite des Geräts an.\n\nTippen Sie auf die Taste, wenn Sie bereit sind."; -"TONE_AUDIOMETRY_INSTRUCTION" = "Tippen Sie jedes Mal, wenn Sie einen Ton hören, auf die Taste."; +"TONE_AUDIOMETRY_INTENDED_USE" = "Diese Aktivität misst deine Fähigkeit, unterschiedliche Töne zu hören."; +"TONE_AUDIOMETRY_INTRO_TEXT" = "Bevor du beginnst, solltest du deine Kopfhörer anschließen und aufsetzen."; +"TONE_AUDIOMETRY_CALL_TO_ACTION" = "Tippe zum Starten auf „Los geht’s“."; +"TONE_AUDIOMETRY_PREP_TEXT" = "Du solltest jetzt einen Ton hören. Passe die Lautstärke mithilfe der Steuerungen an der Seite des Geräts an.\n\nTippe auf die Taste, wenn du bereit bist."; +"TONE_AUDIOMETRY_INSTRUCTION" = "Tippe jedes Mal, wenn du einen Ton hörst, auf die Taste."; "TONE_LABEL_%@_LEFT" = "%@ Hz, Links"; "TONE_LABEL_%@_RIGHT" = "%@ Hz, Rechts"; /* Spatial span memory active task. */ "SPATIAL_SPAN_MEMORY_TITLE" = "Räumliches Gedächtnis"; -"SPATIAL_SPAN_MEMORY_INTRO_TEXT_%@" = "Mit dieser Aktivität wird Ihr räumliches Kurzzeitgedächtnis gemessen, indem Sie aufgefordert werden, die Reihenfolge, in der die %@ aufleuchten, zu wiederholen."; +"SPATIAL_SPAN_MEMORY_INTRO_TEXT_%@" = "Mit dieser Aktivität wird dein räumliches Kurzzeitgedächtnis gemessen, indem du aufgefordert wirst, die Reihenfolge, in der die %@ aufleuchten, zu wiederholen."; "SPATIAL_SPAN_MEMORY_TARGET_PLURAL" = "Blumen"; "SPATIAL_SPAN_MEMORY_TARGET_STANDALONE" = "Blumen"; -"SPATIAL_SPAN_MEMORY_INTRO_2_TEXT_%@" = "Einige der %@ werden der Reihe nach aufleuchten. Tippen Sie in derselben Reihenfolge auf diese %@."; -"SPATIAL_SPAN_MEMORY_INTRO_2_TEXT_REVERSE_%@" = "Einige der %@ werden der Reihe nach aufleuchten. Tippen Sie in umgekehrter Reihenfolge auf diese %@."; -"SPATIAL_SPAN_MEMORY_CALL_TO_ACTION" = "Tippen Sie zum Starten auf „Los geht’s“ und schauen Sie dann genau hin."; +"SPATIAL_SPAN_MEMORY_INTRO_2_TEXT_%@" = "Einige der %@ werden der Reihe nach aufleuchten. Tippe in derselben Reihenfolge auf diese %@."; +"SPATIAL_SPAN_MEMORY_INTRO_2_TEXT_REVERSE_%@" = "Einige der %@ werden der Reihe nach aufleuchten. Tippe in umgekehrter Reihenfolge auf diese %@."; +"SPATIAL_SPAN_MEMORY_CALL_TO_ACTION" = "Tippe zum Starten auf „Los geht’s“ und schaue dann genau hin."; "MEMORY_GAME_ITEM_COUNT_TITLE_%@" = "%@"; "MEMORY_GAME_SCORE_TITLE" = "Ergebnis"; "MEMORY_GAME_PLAYBACK_TITLE_%@" = "Auf das Aufleuchten der %@ achten"; -"MEMORY_GAME_GAMEPLAY_TITLE_%@" = "Tippen Sie auf die %@ in der Reihenfolge, in der sie aufleuchten"; -"MEMORY_GAME_GAMEPLAY_REVERSE_TITLE_%@" = "Tippen Sie in umgekehrter Reihenfolge auf die %@"; +"MEMORY_GAME_GAMEPLAY_TITLE_%@" = "Tippe auf die %@ in der Reihenfolge, in der sie aufleuchten"; +"MEMORY_GAME_GAMEPLAY_REVERSE_TITLE_%@" = "Tippe in umgekehrter Reihenfolge auf die %@"; "MEMORY_GAME_COMPLETE_TITLE" = "Sequenz abgeschlossen"; -"MEMORY_GAME_COMPLETE_MESSAGE" = "Zum Fortfahren tippen Sie auf „Weiter“."; +"MEMORY_GAME_COMPLETE_MESSAGE" = "Zum Fortfahren tippst du auf „Weiter“"; "MEMORY_GAME_FAILED_TITLE" = "Erneut versuchen"; -"MEMORY_GAME_FAILED_MESSAGE" = "Sie haben es diesmal nicht ganz geschafft. Zum Fortfahren tippen Sie auf „Weiter“."; +"MEMORY_GAME_FAILED_MESSAGE" = "Du hast es diesmal nicht ganz geschafft. Zum Fortfahren tippst du auf „Weiter“."; "MEMORY_GAME_TIMEOUT_TITLE" = "Zeit ist abgelaufen"; -"MEMORY_GAME_TIMEOUT_MESSAGE" = "Die Zeit ist abgelaufen.\nZum Fortfahren tippen Sie auf „Weiter“."; +"MEMORY_GAME_TIMEOUT_MESSAGE" = "Die Zeit ist abgelaufen.\nZum Fortfahren tippst du auf „Weiter“."; "MEMORY_GAME_COMPLETE" = "Spiel abgeschlossen"; "MEMORY_GAME_PAUSED_TITLE" = "Angehalten"; -"MEMORY_GAME_PAUSED_MESSAGE" = "Zum Fortfahren tippen Sie auf „Weiter“."; +"MEMORY_GAME_PAUSED_MESSAGE" = "Zum Fortfahren tippst du auf „Weiter“"; /* Reaction time active task. */ "REACTION_TIME_TASK_TITLE" = "Reaktionszeit"; -"REACTION_TIME_TASK_INTENDED_USE" = "Mit dieser Aktivität wird bewertet, wie lange Sie brauchen, um auf optische Reize zu reagieren."; -"REACTION_TIME_TASK_INTRO_TEXT_FORMAT" = "Schütteln Sie das Gerät, sobald der blaue Punkt auf dem Bildschirm angezeigt wird. Sie werden %D mal darum gebeten."; -"REACTION_TIME_TASK_CALL_TO_ACTION" = "Tippen Sie zum Starten auf „Los geht’s“."; +"REACTION_TIME_TASK_INTENDED_USE" = "Mit dieser Aktivität wird bewertet, wie lange du brauchst, um auf optische Reize zu reagieren."; +"REACTION_TIME_TASK_INTRO_TEXT_FORMAT" = "Schüttle das Gerät, sobald der blaue Punkt auf dem Bildschirm angezeigt wird. Du wirst %D mal darum gebeten."; +"REACTION_TIME_TASK_CALL_TO_ACTION" = "Tippe zum Starten auf „Los geht’s“."; "REACTION_TIME_TASK_ATTEMPTS_FORMAT" = "Versuch %@ von %@"; -"REACTION_TIME_TASK_ACTIVE_STEP_TITLE" = "Wenn der blaue Kreis angezeigt wird, schütteln Sie das Gerät schnell"; +"REACTION_TIME_TASK_ACTIVE_STEP_TITLE" = "Wenn der blaue Kreis angezeigt wird, schüttle das Gerät schnell"; /* Tower of Hanoi active task */ "TOWER_OF_HANOI_TASK_TITLE" = "Türme von Hanoi"; -"TOWER_OF_HANOI_TASK_INTENDED_USE" = "Diese Aktivität misst Ihre Fähigkeit, Rätsel zu lösen."; -"TOWER_OF_HANOI_TASK_INTRO_TEXT" = "Bewegen Sie den gesamten Stapel in so wenigen Zügen wie möglich auf den markierten Turm."; -"TOWER_OF_HANOI_TASK_TASK_CALL_TO_ACTION" = "Tippen Sie zum Starten auf „Los geht’s“"; -"TOWER_OF_HANOI_TASK_ACTIVE_STEP_INTRO_TEXT" = "Lösen Sie das Rätsel"; +"TOWER_OF_HANOI_TASK_INTENDED_USE" = "Diese Aktivität misst deine Fähigkeit, Rätsel zu lösen."; +"TOWER_OF_HANOI_TASK_INTRO_TEXT" = "Bewege den gesamten Stapel in so wenigen Zügen wie möglich auf den markierten Turm."; +"TOWER_OF_HANOI_TASK_TASK_CALL_TO_ACTION" = "Tippe zum Starten auf „Los geht’s“"; +"TOWER_OF_HANOI_TASK_ACTIVE_STEP_INTRO_TEXT" = "Löse das Rätsel"; "TOWER_OF_HANOI_TASK_ACTIVE_STEP_PROGRESS_TEXT" = "Anzahl Züge: %@ \n %@"; "TOWER_OF_HANOI_TASK_ACTIVE_STEP_SKIP_BUTTON_TITLE" = "Ich kann dieses Rätsel nicht lösen"; /* Timed walk active task. */ "TIMED_WALK_TITLE" = "Gehen mit Zeitmessung"; -"TIMED_WALK_INTRO_DETAIL" = "Diese Aktivität misst die Funktion Ihrer unteren Extremitäten"; -"TIMED_WALK_INTRO_2_TEXT_%@" = "Finden Sie einen Ort, am besten draußen, an dem Sie sicher ca. %@ so schnell wie möglich in einer geraden Linie gehen können. Werden Sie erst langsamer, wenn Sie das Ziel erreicht haben."; -"TIMED_WALK_INTRO_2_DETAIL" = "Tippen Sie auf „Weiter“, um anzufangen."; +"TIMED_WALK_INTRO_DETAIL" = "Diese Aktivität misst die Funktion deiner unteren Extremitäten"; +"TIMED_WALK_INTRO_2_TEXT_%@" = "Finde einen Ort, am besten draußen, an dem du sicher ca. %@ so schnell wie möglich in einer geraden Linie gehen kannst. Werde erst langsamer, wenn du das Ziel erreicht hast."; +"TIMED_WALK_INTRO_2_DETAIL" = "Tippe auf „Weiter“, um anzufangen."; "TIMED_WALK_FORM_TITLE" = "Gehhilfe"; -"TIMED_WALK_FORM_TEXT" = "Verwenden Sie für jeden Test dieselbe Gehhilfe."; -"TIMED_WALK_QUESTION_TEXT" = "Verwenden Sie eine Unterschenkelorthese?"; -"TIMED_WALK_QUESTION_2_TITLE" = "Verwenden Sie Gehhilfen?"; +"TIMED_WALK_FORM_TEXT" = "Verwende für jeden Test dieselbe Gehhilfe."; +"TIMED_WALK_QUESTION_TEXT" = "Verwendest du eine Unterschenkelorthese?"; +"TIMED_WALK_QUESTION_2_TITLE" = "Verwendest du Gehhilfen?"; "TIMED_WALK_QUESTION_2_TEXT" = "Tippen, um eine Antwort auszuwählen."; "TIMED_WALK_QUESTION_2_CHOICE" = "Ohne"; "TIMED_WALK_QUESTION_2_CHOICE_2" = "Gehstock, eine Seite"; @@ -308,36 +343,78 @@ "TIMED_WALK_QUESTION_2_CHOICE_4" = "Gehstock, beide Seiten"; "TIMED_WALK_QUESTION_2_CHOICE_5" = "Krücken, beide Seiten"; "TIMED_WALK_QUESTION_2_CHOICE_6" = "Rollator"; -"TIMED_WALK_INSTRUCTION_%@" = "Gehen Sie bis zu %@ in einer geraden Linie."; -"TIMED_WALK_INSTRUCTION_2" = "Drehen Sie sich um und gehen Sie zum Ausgangspunkt zurück."; -"TIMED_WALK_INSTRUCTION_TEXT" = "Tippen Sie danach auf „Fertig“."; +"TIMED_WALK_INSTRUCTION_%@" = "Gehe bis zu %@ in einer geraden Linie."; +"TIMED_WALK_INSTRUCTION_2" = "Drehe dich um und gehe zum Ausgangspunkt zurück."; +"TIMED_WALK_INSTRUCTION_TEXT" = "Tippe danach auf „Fertig“."; /* PSAT active task. */ "PASAT_TITLE" = "PASAT"; "PVSAT_TITLE" = "PVSAT"; "PAVSAT_TITLE" = "PAVSAT"; -"PASAT_INTRO_TEXT" = "Der akustische Serienaddiertest mit Zeitlimit (PASAT, Paced Auditory Serial Addition Test) misst, wie schnell Sie akustische Informationen verarbeiten und rechnen können."; -"PVSAT_INTRO_TEXT" = "Der visuelle Serienaddiertest mit Zeitlimit (PASAT, Paced Visual Serial Addition Test) misst, wie schnell Sie optische Informationen verarbeiten und rechnen können."; -"PAVSAT_INTRO_TEXT" = "Der audiovisuelle Serienaddiertest mit Zeitlimit (PAVSAT, Paced Auditory and Visual Serial Addition Test) misst, wie schnell Sie akustische und optische Informationen verarbeiten und rechnen können."; -"PSAT_INTRO_TEXT_2_%@" = "Alle %@ Sekunden wird eine einstellige Zahl angezeigt.\nSie müssen diese Zahl zu der addieren, die direkt zuvor angezeigt wurde.\nAchtung: Sie sollen nicht die Gesamtsumme der Zahlen errechnen, sondern nur die jeweils beiden letzten Zahlen addieren."; -"PSAT_CALL_TO_ACTION" = "Tippen Sie zum Starten auf „Los geht’s“."; -"PSAT_INITIAL_INSTRUCTION" = "Merken Sie sich die erste Zahl."; -"PSAT_INSTRUCTION" = "Addieren Sie diese Zahl zur vorherigen."; +"PASAT_INTRO_TEXT" = "Der akustische Serienaddiertest mit Zeitlimit (PASAT, Paced Auditory Serial Addition Test) misst, wie schnell du akustische Informationen verarbeiten und rechnen kannst."; +"PVSAT_INTRO_TEXT" = "Der visuelle Serienaddiertest mit Zeitlimit (PASAT, Paced Visual Serial Addition Test) misst, wie schnell du optische Informationen verarbeiten und rechnen kannst."; +"PAVSAT_INTRO_TEXT" = "Der audiovisuelle Serienaddiertest mit Zeitlimit (PAVSAT, Paced Auditory and Visual Serial Addition Test) misst, wie schnell du akustische und optische Informationen verarbeiten und rechnen kannst."; +"PSAT_INTRO_TEXT_2_%@" = "Alle %@ Sekunden wird eine einstellige Zahl angezeigt.\nDu musst diese Zahl zu der addieren, die direkt zuvor angezeigt wurde.\nAchtung: Du sollst nicht die Gesamtsumme der Zahlen errechnen, sondern nur die jeweils beiden letzten Zahlen addieren."; +"PSAT_CALL_TO_ACTION" = "Tippe zum Starten auf „Los geht’s“."; +"PSAT_INITIAL_INSTRUCTION" = "Merke dir die erste Zahl."; +"PSAT_INSTRUCTION" = "Addiere diese Zahl zur vorherigen."; "PSAT_NO_DIGIT" = "-"; /* Hole peg test active task. */ "HOLE_PEG_TEST_TITLE_%@" = "%@-Hole-Peg-Test"; -"HOLE_PEG_TEST_INTRO_TEXT_%@" = "Mit dieser Aktivität wird die Reaktionsfähigkeit Ihrer oberen Extremitäten gemessen, indem Sie aufgefordert werden, einen Kreis auf einem Loch zu platzieren. Das Ganze wird %@-mal wiederholt."; -"HOLE_PEG_TEST_INTRO_TEXT_2_LEFT_HAND_FIRST_%@" = "Die Reaktionsfähigkeit Ihrer linken und rechten Hand wird getestet.\nBewegen Sie den Kreis mit zwei Fingern so schnell wie möglich auf das Loch. Wenn Sie dies %@-mal getan haben, entfernen Sie ihn %@-mal."; -"HOLE_PEG_TEST_INTRO_TEXT_2_RIGHT_HAND_FIRST_%@" = "Die Reaktionsfähigkeit Ihrer linken und rechten Hand wird getestet.\nBewegen Sie den Kreis mit zwei Fingern so schnell wie möglich auf das Loch. Wenn Sie dies %@-mal getan haben, entfernen Sie ihn %@-mal."; +"HOLE_PEG_TEST_INTRO_TEXT_%@" = "Mit dieser Aktivität wird die Reaktionsfähigkeit deiner oberen Extremitäten gemessen, indem du aufgefordert wirst, einen Kreis auf einem Loch zu platzieren. Das Ganze wird %@-mal wiederholt."; +"HOLE_PEG_TEST_INTRO_TEXT_2_LEFT_HAND_FIRST_%@" = "Die Reaktionsfähigkeit deiner linken und rechten Hand wird getestet.\nBewege den Kreis mit zwei Fingern so schnell wie möglich auf das Loch. Wenn du dies %@-mal getan hast, entferne ihn %@-mal."; +"HOLE_PEG_TEST_INTRO_TEXT_2_RIGHT_HAND_FIRST_%@" = "Die Reaktionsfähigkeit deiner linken und rechten Hand wird getestet.\nBewege den Kreis mit zwei Fingern so schnell wie möglich auf das Loch. Wenn du dies %@-mal getan hast, entferne ihn %@-mal."; -"HOLE_PEG_TEST_CALL_TO_ACTION" = "Tippen Sie zum Starten auf „Los geht’s“."; -"HOLE_PEG_TEST_PLACE_INSTRUCTION_LEFT_HAND" = "Bewegen Sie den Kreis mit der linken Hand in das Loch."; -"HOLE_PEG_TEST_PLACE_INSTRUCTION_RIGHT_HAND" = "Bewegen Sie den Kreis mit der rechten Hand in das Loch."; -"HOLE_PEG_TEST_REMOVE_INSTRUCTION_LEFT_HAND" = "Bewegen Sie den Kreis mit der linken Hand hinter die Linie."; -"HOLE_PEG_TEST_REMOVE_INSTRUCTION_RIGHT_HAND" = "Bewegen Sie den Kreis mit der rechten Hand hinter die Linie."; -"HOLE_PEG_TEST_TEXT" = "Bewegen Sie den Kreis mit zwei Fingern."; -"HOLE_PEG_TEST_TEXT_2" = "Heben Sie den Finger, um den Kreis auf die Zielposition zu setzen."; +"HOLE_PEG_TEST_CALL_TO_ACTION" = "Tippe zum Starten auf „Los geht’s“."; +"HOLE_PEG_TEST_PLACE_INSTRUCTION_LEFT_HAND" = "Bewege den Kreis mit der linken Hand in das Loch."; +"HOLE_PEG_TEST_PLACE_INSTRUCTION_RIGHT_HAND" = "Bewege den Kreis mit der rechten Hand in das Loch."; +"HOLE_PEG_TEST_REMOVE_INSTRUCTION_LEFT_HAND" = "Bewege den Kreis mit der linken Hand hinter die Linie."; +"HOLE_PEG_TEST_REMOVE_INSTRUCTION_RIGHT_HAND" = "Bewege den Kreis mit der rechten Hand hinter die Linie."; +"HOLE_PEG_TEST_TEXT" = "Bewege den Kreis mit zwei Fingern."; +"HOLE_PEG_TEST_TEXT_2" = "Hebe den Finger, um den Kreis auf die Zielposition zu setzen."; + +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "Zitteraktivität"; +"TREMOR_TEST_INTRO_1_DETAIL" = "Mit dieser Aktivität wird gemessen, wie sehr deine Hände in unterschiedlichen Haltungen zittern. Führe diese Aktivität an einem Ort durch, an dem du währenddessen bequem sitzen kannst."; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "Halte dein Telefon in der stärker betroffenen Hand, wie unten im Bild zu sehen."; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "Halte dein Telefon in der RECHTEN Hand, wie unten im Bild zu sehen."; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "Halte dein Telefon in der LINKEN Hand, wie unten im Bild zu sehen."; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "Du wirst aufgefordert %@ durchzuführen, während du sitzend dein Telefon in der Hand hältst."; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "eine Aufgabe"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "zwei Aufgaben"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "drei Aufgaben"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "vier Aufgaben"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "fünf Aufgaben"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "Tippe auf „Weiter“, um fortzufahren."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "Bereite dich darauf vor, dein Telefon im Schoß zu halten."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "Bereite dich darauf vor, dein Telefon mit der LINKEN Hand im Schoß zu halten."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "Bereite dich darauf vor, dein Telefon mit der RECHTEN Hand im Schoß zu halten."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "Halte %ld Sekunden lang dein Telefon in deinem Schoß."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "Halte dein Telefon nun mit ausgestreckter Hand in Schulterhöhe."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "Halte dein Telefon nun mit ausgestreckter LINKER Hand in Schulterhöhe."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "Halte dein Telefon nun mit ausgestreckter RECHTER Hand in Schulterhöhe."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "Halte mit ausgestreckter Hand %ld Sekunden lang dein Telefon."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "Halte dein Telefon nun mit angewinkelten Ellenbogen in Schulterhöhe."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "Halte dein Telefon nun in deiner LINKEN Hand mit angewinkeltem Ellenbogen in Schulterhöhe."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "Halte dein Telefon nun in deiner RECHTEN Hand mit angewinkeltem Ellenbogen in Schulterhöhe."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "Halte mit angewinkelten Ellenbogen %ld Sekunden lang dein Telefon"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "Winkle nun deinen Ellenbogen an und berühre wiederholt mit deinem Telefon deine Nase."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "Winkle nun deinen Ellenbogen an, halte dein Telefon in der LINKEN Hand und berühre wiederholt mit deinem Telefon deine Nase."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "Winkle nun deinen Ellenbogen an, halte dein Telefon in der RECHTEN Hand und berühre wiederholt mit deinem Telefon deine Nase."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "Halte dein Telefon %ld Sekunden lang an deine Nase"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "Bereite dich darauf vor, zu winken, indem du dein Handgelenk drehst."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "Bereite dich darauf vor, mit dem Telefon in deiner LINKEN Hand zu winken, indem du dein Handgelenk drehst."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "Bereite dich darauf vor, mit dem Telefon in deiner RECHTEN Hand zu winken, indem du dein Handgelenk drehst."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "Winke %ld Sekunden lang."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "Wechsle nun zu deiner LINKEN Hand und fahre mit der nächsten Aufgabe fort."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "Wechsle nun zu deiner RECHTEN Hand und fahre mit der nächsten Aufgabe fort."; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "Weiter zur nächsten Aufgabe."; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "Aktivität abgeschlossen."; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "Du wirst aufgefordert %@ durchzuführen, während du sitzend dein Telefon zuerst in der einen, dann in der anderen Hand hältst."; +"TREMOR_SKIP_LEFT_HAND" = "Ich kann diese Aktivität mit meiner LINKEN Hand nicht durchführen."; +"TREMOR_SKIP_RIGHT_HAND" = "Ich kann diese Aktivität mit meiner RECHTEN Hand nicht durchführen."; +"TREMOR_SKIP_NEITHER" = "Ich kann diese Aktivität mit beiden Händen durchführen."; /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "Fehler beim Erstellen der Datei"; @@ -378,6 +455,9 @@ "AX_IMAGE_CAPTURE_LABEL" = "Vorschau aufnehmen"; "AX_IMAGE_CAPTURED_LABEL" = "Aufgenommenes Bild"; +"AX_VIDEO_CAPTURE_LABEL" = "Videoaufnahmenvorschau"; +"AX_VIDEO_CAPTURED_LABEL" = "Aufgenommenes Video"; + "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "Die Scheibe der Größe %@ kann nicht auf die Scheibe der Größe %@ gelegt werden"; "AX_TOWER_OF_HANOI_TARGET_DISK" = "Ziel"; "AX_TOWER_OF_HANOI_TOWER" = "Turm"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "Mit Scheiben in den Größen %@"; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "Leer"; -"AX_GRAPH_RANGE_FORMAT" = "Bereich von %@ bis %@"; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "Bereich von %@ bis %@"; +"AX_GRAPH_STACK_PREFIX" = "Stapel besteht aus"; "AX_GRAPH_AND_SEPARATOR" = " und "; "AX_GRAPH_POINT_%@" = "Punkt: %@"; diff --git a/ResearchKit/Localized/de.lproj/locversion.plist b/ResearchKit/Localized/de.lproj/locversion.plist index b8b79b3e..1f64b249 100644 --- a/ResearchKit/Localized/de.lproj/locversion.plist +++ b/ResearchKit/Localized/de.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale de LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/el.lproj/ResearchKit.strings b/ResearchKit/Localized/el.lproj/ResearchKit.strings index 4aff99fb..93986870 100644 --- a/ResearchKit/Localized/el.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/el.lproj/ResearchKit.strings @@ -120,7 +120,7 @@ "VERIFICATION_NAV_TITLE" = "Επαλήθευση"; "VERIFICATION_STEP_TITLE" = "Επαληθεύστε το email σας"; "RESEND_EMAIL_LABEL_MESSAGE" = "Αν δεν έχετε λάβει email επαλήθευσης, αγγίξτε τον παρακάτω σύνδεσμο για να σταλεί ξανά."; -"RESEND_EMAIL_BUTTON_TITLE" = "Εκ νέου αποστολή email επιβεβαίωσης"; +"RESEND_EMAIL_BUTTON_TITLE" = "Νέα αποστολή email επιβεβαίωσης"; /* Login step */ "LOGIN_CONTINUE_BUTTON_TITLE" = "Είσοδος"; @@ -141,6 +141,7 @@ "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "Επιτρέπονται μόνο αριθμητικοί χαρακτήρες."; "PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "Ένδειξη προόδου εισαγωγής συνθηματικού"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "Εισάχθηκαν %@ από %@ ψηφία"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "Ξεχάσατε το συνθηματικό;"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "Δεν ήταν δυνατή η προσθήκη στοιχείου της Κλειδοθήκης."; @@ -167,6 +168,11 @@ "BOOL_NO" = "Όχι"; "BOOL_YES" = "Ναι"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "εκ."; +"MEASURING_UNIT_FT" = "πδ"; +"MEASURING_UNIT_IN" = "ίντσ."; + /* Default placeholders to request answers in a questionnaire. */ "PLACEHOLDER_TEXT_OR_NUMBER" = "Αγγίξτε για απάντηση"; "NULL_ANSWER" = "Επιλέξτε μια απάντηση"; @@ -188,20 +194,29 @@ "BUTTON_START_TIMER" = "Έναρξη χρονοδιακόπτη"; "BUTTON_OPTION_SAVE" = "Αποθήκευση για αργότερα"; "BUTTON_OPTION_DISCARD" = "Απόρριψη αποτελεσμάτων"; -"BUTTON_OPTION_STOP_TASK" = "Τέλος δοκιμής"; +"BUTTON_OPTION_STOP_TASK" = "Τέλος εργασίας"; +"BUTTON_SAVE" = "Αποθήκευση"; +"BUTTON_CLEAR_ANSWER" = "Εκκαθάριση απάντησης"; +"BUTTON_READ_ONLY_MODE" = "Δεν είναι δυνατή η τροποποίηση αυτής της απάντησης."; /* General active tasks. */ "COUNTDOWN_LABEL" = "Έναρξη δραστηριότητας σε"; "TASK_COMPLETE_TITLE" = "Η δραστηριότητα ολοκληρώθηκε"; "TASK_COMPLETE_TEXT" = "Τα δεδομένα σας θα αναλυθούν και θα ειδοποιηθείτε όταν είναι έτοιμα τα αποτελέσματα."; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "Απομένουν %@ δευτερόλεπτα."; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "Καταγραφή εικόνας"; "CAPTURE_BUTTON_RECAPTURE_IMAGE" = "Επανάληψη καταγραφής εικόνας"; "CAPTURE_ERROR_CAMERA_NOT_FOUND" = "Δεν βρέθηκε κάμερα. Δεν είναι δυνατή η ολοκλήρωση αυτού του βήματος."; "CAPTURE_ERROR_NO_PERMISSIONS" = "Για να ολοκληρώσετε αυτό το βήμα, επιτρέψτε σε αυτήν την εφαρμογή να προσπελάζει την κάμερα στις Ρυθμίσεις."; -"CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "Δεν καθορίστηκε κατάλογος εξόδου για καταγεγραμμένες εικόνες."; -"CAPTURE_ERROR_CANNOT_WRITE_FILE" = "Δεν ήταν δυνατή η αποθήκευση της καταγεγραμμένης εικόνας."; +"CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "Δεν καθορίστηκε κατάλογος εξόδου για καταγραμμένες εικόνες."; +"CAPTURE_ERROR_CANNOT_WRITE_FILE" = "Δεν ήταν δυνατή η αποθήκευση της καταγραμμένης εικόνας."; + +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "Έναρξη εγγραφής"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "Διακοπή εγγραφής"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "Εκ νέου καταγραφή βίντεο"; /* Fitness active task. */ "FITNESS_TASK_TITLE" = "Φυσική κατάσταση"; @@ -222,16 +237,33 @@ "WALK_RETURN_INSTRUCTION_FORMAT" = "Γυρίστε πίσω και περπατήστε μέχρι το σημείο όπου αρχίσατε."; "WALK_OUTBOUND_INSTRUCTION_FORMAT" = "Περπατήστε έως %ld βήματα σε ευθεία γραμμή."; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "Βρείτε έναν χώρο όπου μπορείτε να περπατήσετε με ασφάλεια μπρος-πίσω σε ευθεία γραμμή. Προσπαθήστε να μη διακόψετε το βάδισμα, στρίβοντας στο τέλος της γραμμής και επιστρέφοντας πάλι εκεί που αρχίσατε και πάλι το ίδιο, σαν να περπατάτε γύρω από έναν κώνο.\n\nΚατόπιν, θα σας ζητηθεί να κάνετε μια πλήρη στροφή γύρω από τον εαυτό σας και μετά να σταθείτε ακίνητοι με τα χέρια ευθεία κάτω στο πλάι του σώματος και τα πόδια σας ανοιχτά σε απόσταση παρόμοια των ώμων σας."; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "Αγγίξτε «Έναρξη» όταν είστε έτοιμοι να ξεκινήσετε.\nΜετά, τοποθετήστε το τηλέφωνό σας στην τσέπη ή την τσάντα σας και ακολουθήστε τις ηχητικές οδηγίες."; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "Περπατήστε μπρος-πίσω σε ευθεία γραμμή για %@ στον συνηθισμένο σας ρυθμό."; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "Κάντε μια πλήρη στροφή γύρω από τον εαυτό σας και μετά μείνετε ακίνητοι για %@."; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "Ολοκληρώσατε τη δραστηριότητα."; /* Tapping active task. */ "TAPPING_TASK_TITLE" = "Ταχύτητα αγγίγματος"; +"TAPPING_TASK_TITLE_RIGHT" = "Δεξιό χέρι"; +"TAPPING_TASK_TITLE_LEFT" = "Αριστερό χέρι"; "TAPPING_INTRO_TEXT" = "Αυτή η δραστηριότητα αξιολογεί την ταχύτητα αγγιγμάτων σας."; -"TAPPING_INTRO_TEXT_2_FORMAT" = "Ακουμπήστε το τηλέφωνό σας σε μια επίπεδη επιφάνεια. Θα εμφανιστούν δύο κουμπιά στην οθόνη σας για %@. Χρησιμοποιήστε δύο δάχτυλα του ίδιου χεριού για να αγγίζετε εναλλάξ τα κουμπιά όσο πιο γρήγορα μπορείτε."; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "Τοποθετήστε το τηλέφωνο σε επίπεδη επιφάνεια."; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "Χρησιμοποιήστε δύο δάχτυλα του ίδιου χεριού για εναλλάξ άγγιγμα των κουμπιών στην οθόνη."; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "Χρησιμοποιήστε δύο δάχτυλα του δεξιού χεριού για εναλλάξ άγγιγμα των κουμπιών στην οθόνη."; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "Χρησιμοποιήστε δύο δάχτυλα του αριστερού χεριού για εναλλάξ άγγιγμα των κουμπιών στην οθόνη."; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "Τώρα επαναλάβετε την ίδια δοκιμή με το δεξιό σας χέρι."; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "Τώρα επαναλάβετε την ίδια δοκιμή με το αριστερό σας χέρι."; +"TAPPING_INTRO_TEXT_2_FORMAT" = "Αγγίξτε με το ένα δάχτυλο και μετά με το άλλο. Προσπαθήστε ώστε ο χρόνος μεταξύ των αγγιγμάτων να είναι όσο το δυνατόν ίδιος. Συνεχίστε τα αγγίγματα για %@."; "TAPPING_CALL_TO_ACTION" = "Αγγίξτε «Έναρξη» για να αρχίσετε."; +"TAPPING_CALL_TO_ACTION_NEXT" = "Αγγίξτε «Επόμενο» για να ξεκινήσετε."; "TAP_BUTTON_TITLE" = "Αγγίξτε"; "TOTAL_TAPS_LABEL" = "Συνολικά αγγίγματα"; -"TAPPING_INSTRUCTION" = "Αγγίξτε τα κουμπιά όσο πιο γρήγορα μπορείτε χρησιμοποιώντας δύο δάχτυλα."; - +"TAPPING_INSTRUCTION" = "Αγγίξτε τα κουμπιά χρησιμοποιώντας δύο δάχτυλα και φροντίστε ο χρόνος μεταξύ των αγγιγμάτων να είναι όσο το δυνατόν ίδιος."; +"TAPPING_INSTRUCTION_RIGHT" = "Αγγίξτε τα κουμπιά χρησιμοποιώντας το ΔΕΞΙΟ σας χέρι."; +"TAPPING_INSTRUCTION_LEFT" = "Αγγίξτε τα κουμπιά χρησιμοποιώντας το ΑΡΙΣΤΕΡΟ σας χέρι."; +"TAPPING_SKIP_TITLE" = "Παράλειψη αυτού του χεριού"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "Φωνή"; @@ -241,6 +273,9 @@ "AUDIO_INTENDED_USE" = "Αυτή η δραστηριότητα αξιολογεί τη φωνή σας μέσω εγγραφής ενώ μιλάτε στο μικρόφωνο που βρίσκεται στο κάτω μέρος του τηλεφώνου."; "AUDIO_TOO_LOUD_LABEL" = "Πολύ δυνατά"; "AUDIO_GENERIC_ERROR_LABEL" = "Δεν είναι δυνατή η εγγραφή ήχου"; +"AUDIO_LEVEL_CHECK_LABEL" = "Περιμένετε μέχρι να ελεγχθεί το επίπεδο θορύβου υποβάθρου."; +"AUDIO_TOO_LOUD_MESSAGE" = "Το επίπεδο περιβαλλοντικού θορύβου είναι πολύ υψηλό για εγγραφή της φωνής σας. Πηγαίνετε σε έναν χώρο με λιγότερο θόρυβο και προσπαθήστε πάλι."; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "Αγγίξτε «Επόμενο» όταν είστε έτοιμοι."; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "Τονική ακοομετρία"; @@ -339,6 +374,48 @@ "HOLE_PEG_TEST_TEXT" = "Σηκώστε τoν κύκλο με δύο δάχτυλα."; "HOLE_PEG_TEST_TEXT_2" = "Σηκώστε τα δάχτυλα για να αφήσετε τον κύκλο."; +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "Δραστηριότητα τρέμουλου"; +"TREMOR_TEST_INTRO_1_DETAIL" = "Αυτή η δραστηριότητα μετρά το τρέμουλο των χεριών σας σε διάφορες θέσεις. Βρείτε ένα σημείο όπου μπορείτε να κάθεστε άνετα καθ' όλη τη διάρκεια της δραστηριότητας."; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "Κρατήστε το τηλέφωνο στο πιο επηρεαζόμενο χέρι σας όπως φαίνεται στην παρακάτω εικόνα."; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "Κρατήστε το τηλέφωνο στο ΔΕΞΙΟ χέρι σας όπως φαίνεται στην παρακάτω εικόνα."; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "Κρατήστε το τηλέφωνο στο ΑΡΙΣΤΕΡΟ χέρι σας όπως φαίνεται στην παρακάτω εικόνα."; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "Θα σας ζητηθεί να εκτελέσετε %@ σε θέση καθίσματος με το τηλέφωνο στο χέρι σας."; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "μια εργασία"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "δύο εργασίες"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "τρεις εργασίες"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "τέσσερις εργασίες"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "πέντε εργασίες"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "Αγγίξτε «Επόμενο» για να συνεχίσετε."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "Προετοιμαστείτε να κρατήσετε το τηλέφωνο πάνω στα πόδια σας."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "Προετοιμαστείτε να κρατήσετε το τηλέφωνο πάνω στα πόδια σας με το ΑΡΙΣΤΕΡΟ χέρι."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "Προετοιμαστείτε να κρατήσετε το τηλέφωνο πάνω στα πόδια σας με το ΔΕΞΙΟ χέρι."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "Συνεχίστε να κρατάτε το τηλέφωνο πάνω στα πόδια σας για %ld δευτερόλεπτα."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "Τώρα κρατήστε το τηλέφωνο στο χέρι σας τεντωμένο στο ύψος του ώμου."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "Τώρα κρατήστε το τηλέφωνο στο ΑΡΙΣΤΕΡΟ χέρι τεντωμένο στο ύψος του ώμου."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "Τώρα κρατήστε το τηλέφωνο στο ΔΕΞΙΟ χέρι τεντωμένο στο ύψος του ώμου."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "Συνεχίστε να κρατάτε το τηλέφωνο με το τεντωμένο χέρι σας για %ld δευτερόλεπτα."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "Τώρα κρατήστε το τηλέφωνο στο ύψος του ώμου με τον αγκώνα λυγισμένο."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "Τώρα κρατήστε το τηλέφωνο στο ΑΡΙΣΤΕΡΟ χέρι τεντωμένο στο ύψος του ώμου με τον αγκώνα λυγισμένο."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "Τώρα κρατήστε το τηλέφωνο στο ΔΕΞΙΟ χέρι τεντωμένο στο ύψος του ώμου με τον αγκώνα λυγισμένο."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "Συνεχίστε να κρατάτε το τηλέφωνο με λυγισμένο τον αγκώνα για %ld δευτερόλεπτα."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "Κρατώντας τον αγκώνα σας λυγισμένο, αγγίξτε τη μύτη σας με το τηλέφωνο επανειλημμένα."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "Κρατώντας τον αγκώνα σας λυγισμένο με το τηλέφωνο στο ΑΡΙΣΤΕΡΟ χέρι σας, αγγίξτε τη μύτη σας με το τηλέφωνο επανειλημμένα."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "Κρατώντας τον αγκώνα σας λυγισμένο με το τηλέφωνο στο ΔΕΞΙΟ χέρι σας, αγγίξτε τη μύτη σας με το τηλέφωνο επανειλημμένα."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "Συνεχίστε να ακουμπάτε τη μύτη σας με το τηλέφωνο για %ld δευτερόλεπτα."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "Προετοιμαστείτε να κάνετε έναν βασιλικό χαιρετισμό (κουνώντας τον καρπό)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "Προετοιμαστείτε να κάνετε έναν βασιλικό χαιρετισμό με το τηλέφωνο στο ΑΡΙΣΤΕΡΟ χέρι σας (χαιρετίστε κουνώντας τον καρπό)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "Προετοιμαστείτε να κάνετε έναν βασιλικό χαιρετισμό με το τηλέφωνο στο ΔΕΞΙΟ χέρι σας (χαιρετίστε κουνώντας τον καρπό)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "Συνεχίστε να χαιρετάτε με αυτόν τον τρόπο για %ld δευτερόλεπτα."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "Τώρα κρατήστε το τηλέφωνο στο ΑΡΙΣΤΕΡΟ χέρι σας και συνεχίστε στην επόμενη εργασία."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "Τώρα κρατήστε το τηλέφωνο στο ΔΕΞΙΟ χέρι σας και συνεχίστε στην επόμενη εργασία."; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "Συνεχίστε στην επόμενη εργασία."; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "Η δραστηριότητα ολοκληρώθηκε."; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "Θα σας ζητηθεί να εκτελέσετε %@ σε θέση καθίσματος με το τηλέφωνο πρώτα στο ένα χέρι και μετά στο άλλο."; +"TREMOR_SKIP_LEFT_HAND" = "Δεν μπορώ να εκτελέσω αυτήν τη δραστηριότητα με το ΑΡΙΣΤΕΡΟ χέρι μου."; +"TREMOR_SKIP_RIGHT_HAND" = "Δεν μπορώ να εκτελέσω αυτήν τη δραστηριότητα με το ΔΕΞΙΟ χέρι μου."; +"TREMOR_SKIP_NEITHER" = "Μπορώ να εκτελέσω αυτήν τη δραστηριότητα και με τα δύο χέρια."; + /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "Δεν ήταν δυνατή η δημιουργία αρχείου"; "ERROR_DATALOGGER_COULD_NOT_FREE_SPACE" = "Δεν ήταν δυνατή η αφαίρεση επαρκών αρχείων καταγραφής για την επίτευξη ορίου"; @@ -376,7 +453,10 @@ "AX.MEMORY.TILE.LABEL" = "Πλακίδιο παιχνιδιού μνήμης"; "AX_IMAGE_CAPTURE_LABEL" = "Προεπισκόπηση καταγραφής"; -"AX_IMAGE_CAPTURED_LABEL" = "Καταγεγραμμένη εικόνα"; +"AX_IMAGE_CAPTURED_LABEL" = "Καταγραμμένη εικόνα"; + +"AX_VIDEO_CAPTURE_LABEL" = "Προεπισκόπηση καταγραφής βίντεο"; +"AX_VIDEO_CAPTURED_LABEL" = "Καταγραμμένο βίντεο"; "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "Δεν είναι δυνατή η τοποθέτηση δίσκου μεγέθους %@ πάνω σε δίσκο μεγέθους %@"; "AX_TOWER_OF_HANOI_TARGET_DISK" = "Στόχος"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "Έχει δίσκο με μεγέθη %@"; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "Κενός"; -"AX_GRAPH_RANGE_FORMAT" = "Εύρος από %@ έως %@"; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "Εύρος από %@ έως %@"; +"AX_GRAPH_STACK_PREFIX" = "Η στοίβα αποτελείται από"; "AX_GRAPH_AND_SEPARATOR" = " και "; "AX_GRAPH_POINT_%@" = "Σημείο: %@"; diff --git a/ResearchKit/Localized/el.lproj/locversion.plist b/ResearchKit/Localized/el.lproj/locversion.plist index 157eed15..7f6b3911 100644 --- a/ResearchKit/Localized/el.lproj/locversion.plist +++ b/ResearchKit/Localized/el.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale el LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/en.lproj/ResearchKit.strings b/ResearchKit/Localized/en.lproj/ResearchKit.strings index 64a6bab1..ea7b3e5c 100644 --- a/ResearchKit/Localized/en.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/en.lproj/ResearchKit.strings @@ -213,6 +213,11 @@ "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "No output directory was specified for captured images."; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "The captured image could not be saved."; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "Start Recording"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "Stop Recording"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "Recapture Video"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "Fitness"; "FITNESS_DISTANCE_TITLE_FORMAT" = "Distance (%@)"; @@ -450,6 +455,9 @@ "AX_IMAGE_CAPTURE_LABEL" = "Capture preview"; "AX_IMAGE_CAPTURED_LABEL" = "Captured image"; +"AX_VIDEO_CAPTURE_LABEL" = "Video capture preview"; +"AX_VIDEO_CAPTURE_COMPLETE" = "Video capture complete"; + "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "Unable to place disk with size %@ on disk with size %@"; "AX_TOWER_OF_HANOI_TARGET_DISK" = "Target"; "AX_TOWER_OF_HANOI_TOWER" = "Tower"; @@ -462,3 +470,5 @@ "AX_GRAPH_STACK_PREFIX" = "Stack composed of"; "AX_GRAPH_AND_SEPARATOR" = " and "; "AX_GRAPH_POINT_%@" = "Point: %@"; + +"AX_AUDIO_BAR_GRAPH" = "Audio Bar Graph"; diff --git a/ResearchKit/Localized/en.lproj/locversion.plist b/ResearchKit/Localized/en.lproj/locversion.plist index 6d121256..23fa3d9b 100644 --- a/ResearchKit/Localized/en.lproj/locversion.plist +++ b/ResearchKit/Localized/en.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale en LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/en_AU.lproj/ResearchKit.strings b/ResearchKit/Localized/en_AU.lproj/ResearchKit.strings index 8dae3799..0b326507 100644 --- a/ResearchKit/Localized/en_AU.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/en_AU.lproj/ResearchKit.strings @@ -141,6 +141,7 @@ "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "Only numeric characters allowed."; "PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "Passcode entry progress indicator"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "%@ of %@ digits entered"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "Forgot Passcode?"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "Could not add Keychain item."; @@ -167,6 +168,11 @@ "BOOL_NO" = "No"; "BOOL_YES" = "Yes"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "cm"; +"MEASURING_UNIT_FT" = "ft"; +"MEASURING_UNIT_IN" = "in"; + /* Default placeholders to request answers in a questionnaire. */ "PLACEHOLDER_TEXT_OR_NUMBER" = "Tap to answer"; "NULL_ANSWER" = "Select an answer"; @@ -189,11 +195,15 @@ "BUTTON_OPTION_SAVE" = "Save for Later"; "BUTTON_OPTION_DISCARD" = "Discard Results"; "BUTTON_OPTION_STOP_TASK" = "End Task"; +"BUTTON_SAVE" = "Save"; +"BUTTON_CLEAR_ANSWER" = "Clear answer"; +"BUTTON_READ_ONLY_MODE" = "This answer cannot be modified."; /* General active tasks. */ "COUNTDOWN_LABEL" = "Starting activity in"; "TASK_COMPLETE_TITLE" = "Activity Complete"; "TASK_COMPLETE_TEXT" = "Your data will be analysed and you will be notified when your results are ready."; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "%@ seconds remaining."; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "Capture Image"; @@ -203,6 +213,11 @@ "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "No output directory was specified for captured images."; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "The captured image could not be saved."; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "Start Recording"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "Stop Recording"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "Recapture Video"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "Fitness"; "FITNESS_DISTANCE_TITLE_FORMAT" = "Distance (%@)"; @@ -222,16 +237,33 @@ "WALK_RETURN_INSTRUCTION_FORMAT" = "Turn around and walk back to where you started."; "WALK_OUTBOUND_INSTRUCTION_FORMAT" = "Walk up to %ld steps in a straight line."; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "Find a place where you can safely walk back and forth in a straight line. Try to walk continuously by turning at the ends of your path, as if you are walking around a cone.\n\nNext you will be instructed to turn around in a full circle, then stand still with your arms at your sides and your feet about shoulder-width apart."; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "Tap Get Started when you are ready to begin.\nThen place your phone in a pocket or bag and follow the audio instructions."; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "Walk back and forth in a straight line for %@. Walk as you would normally."; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "Turn in a full circle and then stand still for %@."; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "You have completed the activity."; /* Tapping active task. */ "TAPPING_TASK_TITLE" = "Tapping Speed"; +"TAPPING_TASK_TITLE_RIGHT" = "Right Hand"; +"TAPPING_TASK_TITLE_LEFT" = "Left Hand"; "TAPPING_INTRO_TEXT" = "This activity measures your tapping speed."; -"TAPPING_INTRO_TEXT_2_FORMAT" = "Rest your phone on a flat surface. Two buttons will appear on your screen for %@. Using two fingers on the same hand, take turns tapping the buttons as quickly as you can."; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "Put your phone on a flat surface."; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "Use two fingers on the same hand to alternately tap the buttons on the screen."; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "Use two fingers on your right hand to alternately tap the buttons on the screen."; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "Use two fingers on your left hand to alternately tap the buttons on the screen."; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "Now repeat the same test using your right hand."; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "Now repeat the same test using your left hand."; +"TAPPING_INTRO_TEXT_2_FORMAT" = "Tap one finger, then the other. Try to time your taps to be as even as possible. Keep tapping for %@."; "TAPPING_CALL_TO_ACTION" = "Tap Get Started to begin."; +"TAPPING_CALL_TO_ACTION_NEXT" = "Tap Next to begin."; "TAP_BUTTON_TITLE" = "Tap"; "TOTAL_TAPS_LABEL" = "Total Taps"; -"TAPPING_INSTRUCTION" = "Tap the buttons as quickly as you can using two fingers."; - +"TAPPING_INSTRUCTION" = "Tap the buttons as consistently as you can using two fingers."; +"TAPPING_INSTRUCTION_RIGHT" = "Tap the buttons using your RIGHT hand."; +"TAPPING_INSTRUCTION_LEFT" = "Tap the buttons using your LEFT hand."; +"TAPPING_SKIP_TITLE" = "Skip this hand"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "Voice"; @@ -241,6 +273,9 @@ "AUDIO_INTENDED_USE" = "This activity evaluates your voice by recording it with the microphone at the bottom of your phone."; "AUDIO_TOO_LOUD_LABEL" = "Too Loud"; "AUDIO_GENERIC_ERROR_LABEL" = "Unable to record audio"; +"AUDIO_LEVEL_CHECK_LABEL" = "Please wait while we check the background noise level."; +"AUDIO_TOO_LOUD_MESSAGE" = "The ambient noise level is too loud to record your voice. Please move somewhere quieter and try again."; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "Tap Next when ready."; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "Tone Audiometry"; @@ -339,6 +374,48 @@ "HOLE_PEG_TEST_TEXT" = "Pick up the peg using two fingers."; "HOLE_PEG_TEST_TEXT_2" = "Lift fingers to drop the peg."; +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "Tremor Activity"; +"TREMOR_TEST_INTRO_1_DETAIL" = "This activity measures the tremor of your hands in various positions. Find a place where you can sit comfortably for the duration of this activity."; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "Hold the phone in your more affected hand as shown in the image below."; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "Hold the phone in your RIGHT hand as shown in the image below."; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "Hold the phone in your LEFT hand as shown in the image below."; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "You will be asked to perform %@ while sitting with the phone in your hand."; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "a task"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "two tasks"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "three tasks"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "four tasks"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "five tasks"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "Tap next to proceed."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "Prepare to hold your phone in your lap."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "Prepare to hold your phone in your lap with your LEFT hand."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "Prepare to hold your phone in your lap with your RIGHT hand."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "Keep holding your phone in your lap for %ld seconds."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "Now hold your phone with your hand extended out at shoulder height."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "Now hold your phone with your LEFT hand extended out at shoulder height."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "Now hold your phone with your RIGHT hand extended out at shoulder height."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "Keep holding your phone with your hand extended for %ld seconds."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "Now hold your phone at shoulder height with your elbow bent."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "Now hold your phone with your LEFT hand at shoulder height with your elbow bent."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "Now hold your phone with your RIGHT hand at shoulder height with your elbow bent."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "Keep holding your phone with your elbow bent for %ld seconds"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "Now keeping your elbow bent, touch your phone to your nose repeatedly."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "Now keeping your elbow bent with your phone in your LEFT hand, touch your phone to your nose repeatedly."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "Now keeping your elbow bent with your phone in your RIGHT hand, touch your phone to your nose repeatedly."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "Keep touching your phone to your nose for %ld seconds"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "Prepare to do a queen wave (wave by turning your wrist)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "Prepare to do a queen wave with your phone in your LEFT hand (wave by turning your wrist)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "Prepare to do a queen wave with your phone in your RIGHT hand (wave by turning your wrist)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "Keep performing a queen wave for %ld seconds."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "Now switch the phone to your LEFT hand and continue to the next task."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "Now switch the phone to your RIGHT hand and continue to the next task."; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "Continue to the next task."; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "Activity completed."; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "You will be asked to perform %@ while sitting with the phone first in one hand, then again with the other hand."; +"TREMOR_SKIP_LEFT_HAND" = "I cannot perform this activity with my LEFT hand."; +"TREMOR_SKIP_RIGHT_HAND" = "I cannot perform this activity with my RIGHT hand."; +"TREMOR_SKIP_NEITHER" = "I can perform this activity with both hands."; + /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "Could not create file"; "ERROR_DATALOGGER_COULD_NOT_FREE_SPACE" = "Could not remove sufficient log files to reach threshold"; @@ -378,6 +455,9 @@ "AX_IMAGE_CAPTURE_LABEL" = "Capture preview"; "AX_IMAGE_CAPTURED_LABEL" = "Captured image"; +"AX_VIDEO_CAPTURE_LABEL" = "Video capture preview"; +"AX_VIDEO_CAPTURED_LABEL" = "Captured video"; + "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "Unable to place disk with size %@ on disk with size %@"; "AX_TOWER_OF_HANOI_TARGET_DISK" = "Target"; "AX_TOWER_OF_HANOI_TOWER" = "Tower"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "Has disk with sizes %@"; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "Empty"; -"AX_GRAPH_RANGE_FORMAT" = "Range from %@ to %@"; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "Range from %@ to %@"; +"AX_GRAPH_STACK_PREFIX" = "Stack composed of"; "AX_GRAPH_AND_SEPARATOR" = " and "; "AX_GRAPH_POINT_%@" = "Point: %@"; diff --git a/ResearchKit/Localized/en_AU.lproj/locversion.plist b/ResearchKit/Localized/en_AU.lproj/locversion.plist index 5f7d3339..2ac37edc 100644 --- a/ResearchKit/Localized/en_AU.lproj/locversion.plist +++ b/ResearchKit/Localized/en_AU.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale en_AU LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/en_GB.lproj/ResearchKit.strings b/ResearchKit/Localized/en_GB.lproj/ResearchKit.strings index 18ed4423..7ac6779a 100644 --- a/ResearchKit/Localized/en_GB.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/en_GB.lproj/ResearchKit.strings @@ -141,6 +141,7 @@ "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "Only numeric characters allowed."; "PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "Passcode entry progress indicator"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "%@ of %@ digits entered"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "Forgot Passcode?"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "Could not add Keychain item."; @@ -167,6 +168,11 @@ "BOOL_NO" = "No"; "BOOL_YES" = "Yes"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "cm"; +"MEASURING_UNIT_FT" = "ft"; +"MEASURING_UNIT_IN" = "in"; + /* Default placeholders to request answers in a questionnaire. */ "PLACEHOLDER_TEXT_OR_NUMBER" = "Tap to answer"; "NULL_ANSWER" = "Select an answer"; @@ -189,11 +195,15 @@ "BUTTON_OPTION_SAVE" = "Save for Later"; "BUTTON_OPTION_DISCARD" = "Discard Results"; "BUTTON_OPTION_STOP_TASK" = "End Task"; +"BUTTON_SAVE" = "Save"; +"BUTTON_CLEAR_ANSWER" = "Clear answer"; +"BUTTON_READ_ONLY_MODE" = "This answer cannot be modified."; /* General active tasks. */ "COUNTDOWN_LABEL" = "Starting activity in"; "TASK_COMPLETE_TITLE" = "Activity Complete"; "TASK_COMPLETE_TEXT" = "Your data will be analysed and you will be notified when your results are ready."; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "%@ seconds remaining."; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "Capture Image"; @@ -203,6 +213,11 @@ "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "No output directory was specified for captured images."; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "The captured image could not be saved."; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "Start Recording"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "Stop Recording"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "Recapture Video"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "Fitness"; "FITNESS_DISTANCE_TITLE_FORMAT" = "Distance (%@)"; @@ -222,16 +237,33 @@ "WALK_RETURN_INSTRUCTION_FORMAT" = "Turn round and walk back to where you started."; "WALK_OUTBOUND_INSTRUCTION_FORMAT" = "Walk up to %ld steps in a straight line."; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "Find a place where you can safely walk back and forth in a straight line. Try to walk continuously by turning at the ends of your path, as if you are walking around a cone.\n\nNext you will be instructed to turn around in a full circle, then stand still with your arms at your sides and your feet about shoulder-width apart."; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "Tap Get Started when you are ready to begin.\nThen place your phone in a pocket or bag and follow the audio instructions."; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "Walk back and forth in a straight line for %@. Walk as you would normally."; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "Turn in a full circle and then stand still for %@."; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "You have completed the activity."; /* Tapping active task. */ "TAPPING_TASK_TITLE" = "Tapping Speed"; +"TAPPING_TASK_TITLE_RIGHT" = "Right Hand"; +"TAPPING_TASK_TITLE_LEFT" = "Left Hand"; "TAPPING_INTRO_TEXT" = "This activity measures your tapping speed."; -"TAPPING_INTRO_TEXT_2_FORMAT" = "Rest your phone on a flat surface. Two buttons will appear on your screen for %@. Using two fingers on the same hand, take turns tapping the buttons as quickly as you can."; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "Put your phone on a flat surface."; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "Use two fingers on the same hand to alternately tap the buttons on the screen."; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "Use two fingers on your right hand to alternately tap the buttons on the screen."; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "Use two fingers on your left hand to alternately tap the buttons on the screen."; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "Now repeat the same test using your right hand."; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "Now repeat the same test using your left hand."; +"TAPPING_INTRO_TEXT_2_FORMAT" = "Tap one finger, then the other. Try to time your taps to be as even as possible. Keep tapping for %@."; "TAPPING_CALL_TO_ACTION" = "Tap Get Started to begin."; +"TAPPING_CALL_TO_ACTION_NEXT" = "Tap Next to begin."; "TAP_BUTTON_TITLE" = "Tap"; "TOTAL_TAPS_LABEL" = "Total Taps"; -"TAPPING_INSTRUCTION" = "Tap the buttons as quickly as you can using two fingers."; - +"TAPPING_INSTRUCTION" = "Tap the buttons as consistently as you can using two fingers."; +"TAPPING_INSTRUCTION_RIGHT" = "Tap the buttons using your RIGHT hand."; +"TAPPING_INSTRUCTION_LEFT" = "Tap the buttons using your LEFT hand."; +"TAPPING_SKIP_TITLE" = "Skip this hand"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "Voice"; @@ -241,6 +273,9 @@ "AUDIO_INTENDED_USE" = "This activity evaluates your voice by recording it with the microphone at the bottom of your phone."; "AUDIO_TOO_LOUD_LABEL" = "Too Loud"; "AUDIO_GENERIC_ERROR_LABEL" = "Unable to record audio"; +"AUDIO_LEVEL_CHECK_LABEL" = "Please wait while we check the background noise level."; +"AUDIO_TOO_LOUD_MESSAGE" = "The ambient noise level is too loud to record your voice. Please move somewhere quieter and try again."; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "Tap Next when ready."; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "Tone Audiometry"; @@ -339,6 +374,48 @@ "HOLE_PEG_TEST_TEXT" = "Pick up the peg using two fingers."; "HOLE_PEG_TEST_TEXT_2" = "Lift fingers to drop the peg."; +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "Tremor Activity"; +"TREMOR_TEST_INTRO_1_DETAIL" = "This activity measures the tremor of your hands in various positions. Find a place where you can sit comfortably for the duration of this activity."; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "Hold the phone in your more affected hand as shown in the image below."; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "Hold the phone in your RIGHT hand as shown in the image below."; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "Hold the phone in your LEFT hand as shown in the image below."; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "You will be asked to perform %@ while sitting with the phone in your hand."; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "a task"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "two tasks"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "three tasks"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "four tasks"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "five tasks"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "Tap next to proceed."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "Prepare to hold your phone in your lap."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "Prepare to hold your phone in your lap with your LEFT hand."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "Prepare to hold your phone in your lap with your RIGHT hand."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "Keep holding your phone in your lap for %ld seconds."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "Now hold your phone with your hand extended out at shoulder height."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "Now hold your phone with your LEFT hand extended out at shoulder height."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "Now hold your phone with your RIGHT hand extended out at shoulder height."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "Keep holding your phone with your hand extended for %ld seconds."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "Now hold your phone at shoulder height with your elbow bent."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "Now hold your phone with your LEFT hand at shoulder height with your elbow bent."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "Now hold your phone with your RIGHT hand at shoulder height with your elbow bent."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "Keep holding your phone with your elbow bent for %ld seconds"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "Now keeping your elbow bent, touch your phone to your nose repeatedly."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "Now keeping your elbow bent with your phone in your LEFT hand, touch your phone to your nose repeatedly."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "Now keeping your elbow bent with your phone in your RIGHT hand, touch your phone to your nose repeatedly."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "Keep touching your phone to your nose for %ld seconds"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "Prepare to do a queen wave (wave by turning your wrist)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "Prepare to do a queen wave with your phone in your LEFT hand (wave by turning your wrist)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "Prepare to do a queen wave with your phone in your RIGHT hand (wave by turning your wrist)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "Keep performing a queen wave for %ld seconds."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "Now switch the phone to your LEFT hand and continue to the next task."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "Now switch the phone to your RIGHT hand and continue to the next task."; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "Continue to the next task."; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "Activity completed."; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "You will be asked to perform %@ while sitting with the phone first in one hand, then again with the other hand."; +"TREMOR_SKIP_LEFT_HAND" = "I cannot perform this activity with my LEFT hand."; +"TREMOR_SKIP_RIGHT_HAND" = "I cannot perform this activity with my RIGHT hand."; +"TREMOR_SKIP_NEITHER" = "I can perform this activity with both hands."; + /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "Could not create file"; "ERROR_DATALOGGER_COULD_NOT_FREE_SPACE" = "Could not remove sufficient log files to reach threshold"; @@ -378,6 +455,9 @@ "AX_IMAGE_CAPTURE_LABEL" = "Capture preview"; "AX_IMAGE_CAPTURED_LABEL" = "Captured image"; +"AX_VIDEO_CAPTURE_LABEL" = "Video capture preview"; +"AX_VIDEO_CAPTURED_LABEL" = "Captured video"; + "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "Unable to place disk with size %@ on disk with size %@"; "AX_TOWER_OF_HANOI_TARGET_DISK" = "Target"; "AX_TOWER_OF_HANOI_TOWER" = "Tower"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "Has disk with sizes %@"; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "Empty"; -"AX_GRAPH_RANGE_FORMAT" = "Range from %@ to %@"; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "Range from %@ to %@"; +"AX_GRAPH_STACK_PREFIX" = "Stack composed of"; "AX_GRAPH_AND_SEPARATOR" = " and "; "AX_GRAPH_POINT_%@" = "Point: %@"; diff --git a/ResearchKit/Localized/en_GB.lproj/locversion.plist b/ResearchKit/Localized/en_GB.lproj/locversion.plist index b5f8dceb..6b675816 100644 --- a/ResearchKit/Localized/en_GB.lproj/locversion.plist +++ b/ResearchKit/Localized/en_GB.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale en_GB LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/es.lproj/ResearchKit.strings b/ResearchKit/Localized/es.lproj/ResearchKit.strings index 05a829eb..bb0c07fa 100644 --- a/ResearchKit/Localized/es.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/es.lproj/ResearchKit.strings @@ -34,7 +34,7 @@ "CONSENT_NAME_FAMILY" = "Apellidos"; "CONSENT_NAME_PLACEHOLDER" = "Obligatorio"; "CONSENT_REVIEW_TITLE" = "Revisar"; -"CONSENT_REVIEW_INSTRUCTION" = "Revisa el formulario siguiente y pulsa Acepto si estás listo para continuar."; +"CONSENT_REVIEW_INSTRUCTION" = "Revisa el siguiente formulario y pulsa Acepto si estás listo para continuar."; "CONSENT_REVIEW_ALERT_TITLE" = "Revisar"; "CONSENT_SIGNATURE_TITLE" = "Firma"; "CONSENT_SIGNATURE_INSTRUCTION" = "Firma con el dedo sobre la línea de abajo."; @@ -89,8 +89,8 @@ /* Alerts for invalid location coordinates */ "LOCATION_QUESTION_PLACEHOLDER" = "Introduce una dirección"; "LOCATION_ERROR_TITLE" = "No se ha encontrado la dirección especificada"; -"LOCATION_ERROR_MESSAGE_LOCATION_UNKNOWN" = "No se ha podido determinar su ubicación actual. Escriba una dirección o diríjase a una ubicación donde la señal GPS sea mejor."; -"LOCATION_ERROR_MESSAGE_DENIED" = "Se ha denegado el acceso a los servicios de localización. Vaya a Ajustes para conceder a esta app permiso para utilizar los servicios de localización."; +"LOCATION_ERROR_MESSAGE_LOCATION_UNKNOWN" = "No se ha podido determinar tu ubicación actual. Escribe una dirección o dirígete a una ubicación donde la señal GPS sea mejor."; +"LOCATION_ERROR_MESSAGE_DENIED" = "Se ha denegado el acceso a los servicios de localización. Ve a Ajustes para conceder a esta aplicación permiso para utilizar los servicios de localización."; "LOCATION_ERROR_GEOCODE" = "No se ha encontrado ningún resultado para la dirección introducida. Asegúrate de que la dirección es válida."; "LOCATION_ERROR_GEOCODE_NETWORK" = "O bien no estás conectado a Internet o bien has excedido el número máximo de búsquedas de direcciones. Si no estás conectado a Internet, activa la conexión Wi-Fi para responder a esta pregunta, omítela si el botón de omisión está disponible, o vuelve al estudio cuando dispongas de conexión a Internet. Si no es posible, inténtalo de nuevo dentro de unos minutos."; @@ -119,12 +119,12 @@ /* Verification step */ "VERIFICATION_NAV_TITLE" = "Verificación"; "VERIFICATION_STEP_TITLE" = "Verifica tu correo electrónico"; -"RESEND_EMAIL_LABEL_MESSAGE" = "Pulsa en el enlace siguiente si no has recibido un mensaje de correo de verificación y quieres que se te vuelva a enviar."; +"RESEND_EMAIL_LABEL_MESSAGE" = "Pulsa en el enlace siguiente si no has recibido un correo de verificación y quieres que se te vuelva a enviar."; "RESEND_EMAIL_BUTTON_TITLE" = "Reenviar correo de verificación"; /* Login step */ "LOGIN_CONTINUE_BUTTON_TITLE" = "Iniciar sesión"; -"FORGOT_PASSWORD_BUTTON_TITLE" = "¿Ha olvidado su contraseña?"; +"FORGOT_PASSWORD_BUTTON_TITLE" = "¿Has olvidado tu contraseña?"; /* Passcode step */ "PASSCODE_PROMPT_MESSAGE" = "Introduce el código"; @@ -133,14 +133,15 @@ "PASSCODE_AUTHENTICATED_MESSAGE" = "Autenticado por código"; "PASSCODE_OLD_ENTRY_MESSAGE" = "Introduce el código antiguo"; "PASSCODE_NEW_ENTRY_MESSAGE" = "Introduce el código nuevo"; -"PASSCODE_CONFIRM_NEW_ENTRY_MESSAGE" = "Confirme el nuevo código"; +"PASSCODE_CONFIRM_NEW_ENTRY_MESSAGE" = "Confirma el nuevo código"; "PASSCODE_INVALID_ALERT_TITLE" = "Código incorrecto"; "PASSCODE_INVALID_ALERT_MESSAGE" = "Los códigos no coinciden. Inténtalo de nuevo."; -"PASSCODE_TOUCH_ID_MESSAGE" = "Autentíquese con Touch ID"; +"PASSCODE_TOUCH_ID_MESSAGE" = "Autentícate con Touch ID"; "PASSCODE_TOUCH_ID_ERROR_ALERT_TITLE" = "Error de Touch ID"; "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "Solo se admiten caracteres numéricos."; "PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "Indicador de progreso de introducción de código"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "%@ de %@ dígitos introducidos"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "¿Has olvidado el código?"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "No se ha podido añadir el ítem del llavero."; @@ -167,6 +168,11 @@ "BOOL_NO" = "No"; "BOOL_YES" = "Sí"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "cm"; +"MEASURING_UNIT_FT" = "ft"; +"MEASURING_UNIT_IN" = "in"; + /* Default placeholders to request answers in a questionnaire. */ "PLACEHOLDER_TEXT_OR_NUMBER" = "Pulsa para contestar"; "NULL_ANSWER" = "Selecciona una respuesta"; @@ -189,49 +195,75 @@ "BUTTON_OPTION_SAVE" = "Guardar para luego"; "BUTTON_OPTION_DISCARD" = "Descartar resultados"; "BUTTON_OPTION_STOP_TASK" = "Finalizar tarea"; +"BUTTON_SAVE" = "Guardar"; +"BUTTON_CLEAR_ANSWER" = "Borrar respuesta"; +"BUTTON_READ_ONLY_MODE" = "Esta respuesta no puede modificarse."; /* General active tasks. */ "COUNTDOWN_LABEL" = "Iniciando actividad en"; "TASK_COMPLETE_TITLE" = "Actividad completada"; "TASK_COMPLETE_TEXT" = "Se analizarán tus datos y recibirás los resultados cuando estén listos."; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "Quedan %@ segundos."; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "Capturar imagen"; "CAPTURE_BUTTON_RECAPTURE_IMAGE" = "Volver a capturar imagen"; "CAPTURE_ERROR_CAMERA_NOT_FOUND" = "No se ha encontrado ninguna cámara. Este paso no se puede completar."; -"CAPTURE_ERROR_NO_PERMISSIONS" = "Para completar este paso, ve a Ajustes para conceder a la app acceso a la cámara."; +"CAPTURE_ERROR_NO_PERMISSIONS" = "Para completar este paso, ve a Ajustes para conceder a la aplicación acceso a la cámara."; "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "No se ha especificado ningún directorio de salida para las imágenes capturadas."; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "No se ha podido guardar la imagen capturada."; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "Iniciar grabación"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "Detener grabación"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "Volver a capturar vídeo"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "Forma física"; "FITNESS_DISTANCE_TITLE_FORMAT" = "Distancia (%@)"; -"FITNESS_HEARTRATE_TITLE" = "Frecuencia cardiaca (ppm)"; +"FITNESS_HEARTRATE_TITLE" = "Frecuencia cardíaca (ppm)"; "FITNESS_SIT_INSTRUCTION_FORMAT" = "Siéntate cómodamente durante %@."; "FITNESS_WALK_INSTRUCTION_FORMAT" = "Camina lo más rápido que puedas durante %@."; -"FITNESS_INTRO_TEXT_FORMAT" = "Esta actividad controla tu frecuencia cardiaca y mide la distancia que puedes recorrer andando en %1$@."; +"FITNESS_INTRO_TEXT_FORMAT" = "Esta actividad controla tu frecuencia cardíaca y mide la distancia que puedes recorrer andando en %1$@."; "FITNESS_INTRO_2_TEXT_FORMAT" = "Camina al aire libre lo más rápido que puedas durante %1$@. Transcurrido este tiempo, siéntate y descansa durante %2$@. Para comenzar, pulsa Empezar."; /* Short walk active task. */ "WALK_TASK_TITLE" = "Marcha y equilibrio"; -"WALK_INTRO_TEXT" = "Esta actividad mide tu forma de andar y tu equilibrio al caminar y al permanecer quieto de pie. No sigas adelante si no puedes caminar de forma segura sin ayuda."; -"WALK_INTRO_2_TEXT_%ld" = "Busca un lugar en el que puedas dar de forma segura sin ayuda unos %ld pasos en línea recta."; +"WALK_INTRO_TEXT" = "Esta actividad mide tu forma de andar, tu equilibrio al caminar y al permanecer quieto de pie. No sigas adelante si no puedes caminar de forma segura sin ayuda."; +"WALK_INTRO_2_TEXT_%ld" = "Busca un lugar en el que puedas dar unos %ld pasos en línea recta de forma segura sin ayuda."; "WALK_INTRO_2_DETAIL" = "Guárdate el teléfono en un bolsillo o un bolso y sigue las instrucciones de audio."; "WALK_STAND_VOICE_INSTRUCTION_FORMAT" = "Ahora permanece quieto de pie durante %@."; "WALK_STAND_INSTRUCTION_FORMAT" = "Permanece quieto de pie durante %@."; "WALK_RETURN_INSTRUCTION_FORMAT" = "Da la vuelta y camina hasta el punto de partida."; "WALK_OUTBOUND_INSTRUCTION_FORMAT" = "Da unos %ld pasos en línea recta."; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "Busca un lugar en el que puedas caminar de un lado a otro en línea recta de forma segura. Camina sin parar y da la vuelta al final del recorrido, como si rodearas un cono.\n\nA continuación, se te indicará que gires sobre ti mismo dando una vuelta completa y que te quedes quieto con los brazos relajados a los lados del cuerpo y los pies separados de forma que estén alineados con los hombros."; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "Pulsa Empezar cuando estés preparado para comenzar.\nA continuación, guarda el teléfono en un bolsillo o en una bolsa y sigue las instrucciones de audio."; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "Camina de un lado a otro en línea recta durante %@. Camina como lo harías normalmente."; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "Gira sobre ti mismo dando una vuelta completa y quédate quieto durante %@."; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "Has acabado la actividad."; /* Tapping active task. */ "TAPPING_TASK_TITLE" = "Velocidad de pulsación"; +"TAPPING_TASK_TITLE_RIGHT" = "Mano derecha"; +"TAPPING_TASK_TITLE_LEFT" = "Mano izquierda"; "TAPPING_INTRO_TEXT" = "Esta actividad mide tu velocidad de pulsación."; -"TAPPING_INTRO_TEXT_2_FORMAT" = "Coloca el teléfono sobre una superficie plana. En la pantalla aparecerán dos botones durante %@ y, con dos dedos de la misma mano, deberás pulsarlos alternativamente lo más rápido que puedas."; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "Coloca el teléfono sobre una superficie plana."; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "Utiliza dos dedos de la misma mano para pulsar de forma alternativa los botones de la pantalla."; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "Utiliza dos dedos de la mano derecha para pulsar de forma alternativa los botones de la pantalla."; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "Utiliza dos dedos de la mano izquierda para pulsar de forma alternativa los botones de la pantalla."; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "Ahora repite la prueba, pero con la mano derecha."; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "Ahora repite la prueba, pero con la mano izquierda."; +"TAPPING_INTRO_TEXT_2_FORMAT" = "Pulsa con un dedo y luego con el otro. Intenta calcular el tiempo entre pulsación y pulsación para que sea lo más regular posible. Sigue pulsando durante %@."; "TAPPING_CALL_TO_ACTION" = "Pulsa Empezar para comenzar."; +"TAPPING_CALL_TO_ACTION_NEXT" = "Pulsa Siguiente para empezar."; "TAP_BUTTON_TITLE" = "Pulsar"; "TOTAL_TAPS_LABEL" = "N.º total de pulsaciones"; -"TAPPING_INSTRUCTION" = "Pulsa los botones lo más rápido que puedas utilizando dos dedos."; - +"TAPPING_INSTRUCTION" = "Pulsa los botones a un ritmo que sea lo más constante posible utilizando dos dedos."; +"TAPPING_INSTRUCTION_RIGHT" = "Pulsa los botones con la mano derecha."; +"TAPPING_INSTRUCTION_LEFT" = "Pulsa los botones con la mano izquierda."; +"TAPPING_SKIP_TITLE" = "Omitir esta mano"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "Voz"; @@ -241,6 +273,9 @@ "AUDIO_INTENDED_USE" = "Esta actividad evalúa tu voz grabándola con el micrófono situado en la parte inferior del teléfono."; "AUDIO_TOO_LOUD_LABEL" = "Demasiado alto"; "AUDIO_GENERIC_ERROR_LABEL" = "No se puede grabar el audio"; +"AUDIO_LEVEL_CHECK_LABEL" = "Espera mientras se comprueba el nivel de ruido de fondo."; +"AUDIO_TOO_LOUD_MESSAGE" = "Hay demasiado ruido ambiental para grabar tu voz. Ve a un lugar más tranquilo y vuelve a intentarlo."; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "Pulsa Siguiente cuando estés preparado."; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "Audiometría tonal"; @@ -299,7 +334,7 @@ "TIMED_WALK_INTRO_2_DETAIL" = "Pulsa Siguiente para empezar."; "TIMED_WALK_FORM_TITLE" = "Dispositivo de ayuda"; "TIMED_WALK_FORM_TEXT" = "Utiliza el mismo dispositivo de ayuda en cada prueba."; -"TIMED_WALK_QUESTION_TEXT" = "¿Utilizas una ortesis de pie y tobillo?"; +"TIMED_WALK_QUESTION_TEXT" = "¿Utilizas una órtesis de pie y tobillo?"; "TIMED_WALK_QUESTION_2_TITLE" = "¿Utilizas algún dispositivo de ayuda?"; "TIMED_WALK_QUESTION_2_TEXT" = "Pulsa aquí para responder."; "TIMED_WALK_QUESTION_2_CHOICE" = "Ninguno"; @@ -319,7 +354,7 @@ "PASAT_INTRO_TEXT" = "La prueba de suma seriada auditiva por pasos mide tu velocidad de procesamiento de información auditiva y tu capacidad de cálculo."; "PVSAT_INTRO_TEXT" = "La prueba de suma seriada visual por pasos mide tu velocidad de procesamiento de información visual y tu capacidad de cálculo."; "PAVSAT_INTRO_TEXT" = "La prueba de suma seriada auditiva y visual por pasos mide tu velocidad de procesamiento de información auditiva y visual y tu capacidad de cálculo."; -"PSAT_INTRO_TEXT_2_%@" = "Cada %@ segundos se muestra un dígito.\nDebes sumar cada dígito nuevo al anterior.\nAtención: No debes calcular la suma total de todos los dígitos, sino solo la suma de los dos últimos números."; +"PSAT_INTRO_TEXT_2_%@" = "Cada %@ segundos se muestra un dígito.\nDebes sumar cada dígito nuevo al anterior.\nAtención: no debes calcular la suma total de todos los dígitos, sino solo la suma de los dos últimos números."; "PSAT_CALL_TO_ACTION" = "Pulsa Empezar para comenzar."; "PSAT_INITIAL_INSTRUCTION" = "Recuerda este primer dígito."; "PSAT_INSTRUCTION" = "Suma este otro dígito al anterior."; @@ -339,6 +374,48 @@ "HOLE_PEG_TEST_TEXT" = "Coge la clavija con dos dedos."; "HOLE_PEG_TEST_TEXT_2" = "Levanta los dedos para soltar la clavija."; +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "Actividad para medir el temblor"; +"TREMOR_TEST_INTRO_1_DETAIL" = "Esta actividad mide el temblor de las manos en diferentes posiciones. Busca un lugar en el que puedas estar sentado cómodamente durante el tiempo que dure esta actividad."; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "Aguanta el teléfono en la mano más afectada como se muestra en la imagen siguiente."; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "Aguanta el teléfono en la mano derecha como se muestra en la imagen siguiente."; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "Aguanta el teléfono en la mano izquierda como se muestra en la imagen siguiente."; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "Se te solicitará que realices %@ mientras estás sentado con el teléfono en la mano."; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "una tarea"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "dos tareas"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "tres tareas"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "cuatro tareas"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "cinco tareas"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "Pulsa Siguiente para continuar."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "Prepárate para aguantar el teléfono en el regazo."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "Prepárate para aguantar el teléfono en la mano izquierda apoyada en el regazo."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "Prepárate para aguantar el teléfono en la mano derecha apoyada en el regazo."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "Sigue aguantando el teléfono en el regazo durante %ld segundos."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "Ahora aguanta el teléfono con la mano extendida hacia arriba a la altura del hombro."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "Ahora aguanta el teléfono con la mano izquierda extendida hacia arriba a la altura del hombro."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "Ahora aguanta el teléfono con la mano derecha extendida hacia arriba a la altura del hombro."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "Sigue aguantando el teléfono con la mano extendida durante %ld segundos."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "Ahora aguanta el teléfono a la altura del hombro con el codo doblado."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "Ahora, aguanta el teléfono con la mano izquierda a la altura del hombro con el codo doblado."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "Ahora, aguanta el teléfono con la mano derecha a la altura del hombro con el codo doblado."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "Sigue aguantando el teléfono con el codo doblado durante %ld segundos"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "Ahora, sin dejar de tener el codo doblado, toca el móvil con la nariz acercándotelo a la cara repetidamente."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "Ahora, sin dejar de tener el codo doblado y con el teléfono en la mano izquierda, toca el móvil con la nariz acercándotelo a la cara repetidamente."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "Ahora, sin dejar de tener el codo doblado y con el teléfono en la mano derecha, toca el móvil con la nariz acercándotelo a la cara repetidamente."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "Sigue tocando el móvil con la nariz acercándotelo a la cara durante %ld segundos"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "Prepárate para girar la muñeca a modo de saludo."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "Prepárate para girar la muñeca a modo de saludo con el teléfono en la mano izquierda."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "Prepárate para girar la muñeca a modo de saludo con el teléfono en la mano derecha."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "Sigue girando la muñeca durante %ld segundos a modo de saludo."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "Ahora cambia el teléfono a la mano izquierda y continúa con la tarea siguiente."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "Ahora cambia el teléfono a la mano derecha y continúa con la tarea siguiente."; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "Continúa con la tarea siguiente."; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "Actividad completada."; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "Se te solicitará que realices %@ mientras estás sentado, primero con el teléfono en una mano y luego en la otra."; +"TREMOR_SKIP_LEFT_HAND" = "No puedo realizar esta actividad con la mano izquierda."; +"TREMOR_SKIP_RIGHT_HAND" = "No puedo realizar esta actividad con la mano derecha."; +"TREMOR_SKIP_NEITHER" = "Puedo realizar esta actividad con las dos manos."; + /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "No se ha podido crear el archivo"; "ERROR_DATALOGGER_COULD_NOT_FREE_SPACE" = "No se han podido eliminar los archivos de registro suficientes para alcanzar el umbral"; @@ -378,6 +455,9 @@ "AX_IMAGE_CAPTURE_LABEL" = "Previsualización de la captura"; "AX_IMAGE_CAPTURED_LABEL" = "Imagen capturada"; +"AX_VIDEO_CAPTURE_LABEL" = "Previsualización de la captura de vídeo"; +"AX_VIDEO_CAPTURED_LABEL" = "Vídeo capturado"; + "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "No se puede colocar un disco de tamaño %@ en un disco de tamaño %@"; "AX_TOWER_OF_HANOI_TARGET_DISK" = "Objetivo"; "AX_TOWER_OF_HANOI_TOWER" = "Torre"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "Tiene discos de tamaño %@"; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "Vacía"; -"AX_GRAPH_RANGE_FORMAT" = "Rango de valores de %@ a %@"; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "Rango de valores de %@ a %@"; +"AX_GRAPH_STACK_PREFIX" = "Grupo compuesto por"; "AX_GRAPH_AND_SEPARATOR" = " y "; "AX_GRAPH_POINT_%@" = "Punto: %@"; diff --git a/ResearchKit/Localized/es.lproj/locversion.plist b/ResearchKit/Localized/es.lproj/locversion.plist index 0f8e37b2..86cebe8d 100644 --- a/ResearchKit/Localized/es.lproj/locversion.plist +++ b/ResearchKit/Localized/es.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale es LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/es_MX.lproj/ResearchKit.strings b/ResearchKit/Localized/es_MX.lproj/ResearchKit.strings index 348c1a95..f3d25044 100644 --- a/ResearchKit/Localized/es_MX.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/es_MX.lproj/ResearchKit.strings @@ -141,6 +141,7 @@ "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "Solo se permiten caracteres numéricos."; "PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "Indicador del progreso de ingreso de código"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "%@ de %@ dígitos ingresados"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "¿Olvidaste el código?"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "No se pudo agregar el elemento de Llavero."; @@ -167,6 +168,11 @@ "BOOL_NO" = "No"; "BOOL_YES" = "Sí"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "cm"; +"MEASURING_UNIT_FT" = "pie(s)"; +"MEASURING_UNIT_IN" = "pulg."; + /* Default placeholders to request answers in a questionnaire. */ "PLACEHOLDER_TEXT_OR_NUMBER" = "Toca para contestar"; "NULL_ANSWER" = "Seleccionar una respuesta"; @@ -189,11 +195,15 @@ "BUTTON_OPTION_SAVE" = "Guardar para después"; "BUTTON_OPTION_DISCARD" = "Descartar resultados"; "BUTTON_OPTION_STOP_TASK" = "Finalizar tarea"; +"BUTTON_SAVE" = "Guardar"; +"BUTTON_CLEAR_ANSWER" = "Borrar respuesta"; +"BUTTON_READ_ONLY_MODE" = "No se puede modificar esta respuesta."; /* General active tasks. */ "COUNTDOWN_LABEL" = "Comenzar la actividad en"; "TASK_COMPLETE_TITLE" = "Actividad completada"; "TASK_COMPLETE_TEXT" = "Se analizarán tus datos y se te avisará cuando tus resultados estén listos."; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "Quedan %@ segundos."; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "Capturar imagen"; @@ -203,6 +213,11 @@ "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "No se especificó un directorio de salida para las imágenes capturadas."; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "No se pudo guardar la imagen capturada."; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "Iniciar grabación"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "Detener grabación"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "Recapturar video"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "Condición"; "FITNESS_DISTANCE_TITLE_FORMAT" = "Distancia (%@)"; @@ -222,16 +237,33 @@ "WALK_RETURN_INSTRUCTION_FORMAT" = "Da vuelta y regresa al punto de inicio."; "WALK_OUTBOUND_INSTRUCTION_FORMAT" = "Da hasta %ld pasos en línea recta."; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "Busca un lugar en donde puedas caminar de forma segura de un lado a otro en una línea recta. Intenta caminar sin detenerte al final, como si giraras alrededor de un cono.\n\nDespués se te pedirá que hagas una vuelta completa sobre tu eje y que te quedes quieto con los brazos a los lados y los pies separados y alineados con tus hombros."; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "Toca Empezar cuando estés listo.\nLuego coloca el teléfono en un bolsillo o bolsa y sigue las instrucciones de audio."; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "Camina de un lado a otro en una línea recta por %@. Camina como lo harías normalmente."; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "Da una vuelta completa sobre tu eje y quédate quieto por %@."; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "Completaste la actividad."; /* Tapping active task. */ "TAPPING_TASK_TITLE" = "Velocidad al tocar"; +"TAPPING_TASK_TITLE_RIGHT" = "Mano derecha"; +"TAPPING_TASK_TITLE_LEFT" = "Mano izquierda"; "TAPPING_INTRO_TEXT" = "Esta actividad mide tu velocidad al tocar."; -"TAPPING_INTRO_TEXT_2_FORMAT" = "Coloca el teléfono sobre una superficie plana. Se mostrarán dos botones en la pantalla durante %@. Usando dos dedos de una misma mano, toca alternadamente los botones tan rápido como puedas."; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "Coloca tu teléfono en una superficie plana."; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "Usa dos dedos de la misma mano para tocar alternativamente los botones de la pantalla."; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "Usa dos dedos de la mano derecha para tocar alternativamente los botones de la pantalla."; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "Usa dos dedos de la mano izquierda para tocar alternativamente los botones de la pantalla."; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "Ahora repite la prueba con la mano derecha."; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "Ahora repite la prueba con la mano izquierda."; +"TAPPING_INTRO_TEXT_2_FORMAT" = "Toca con un dedo y luego con el otro. Intenta calcular el tiempo entre cada toque para que sea lo más constante posible. Sigue tocando por %@."; "TAPPING_CALL_TO_ACTION" = "Toca Empezar para comenzar."; +"TAPPING_CALL_TO_ACTION_NEXT" = "Toca Siguiente para comenzar."; "TAP_BUTTON_TITLE" = "Tocar"; "TOTAL_TAPS_LABEL" = "Toques en total"; -"TAPPING_INSTRUCTION" = "Toca los botones usando dos dedos tan rápido como puedas."; - +"TAPPING_INSTRUCTION" = "Toca los botones lo más constante que puedas usando dos dedos."; +"TAPPING_INSTRUCTION_RIGHT" = "Toca los botones usando tu mano derecha."; +"TAPPING_INSTRUCTION_LEFT" = "Toca los botones usando tu mano izquierda."; +"TAPPING_SKIP_TITLE" = "Omitir esta mano"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "Voz"; @@ -241,6 +273,9 @@ "AUDIO_INTENDED_USE" = "Esta actividad evalúa tu voz grabándola con el micrófono en la parte inferior de tu teléfono."; "AUDIO_TOO_LOUD_LABEL" = "Demasiado fuerte"; "AUDIO_GENERIC_ERROR_LABEL" = "No se pudo grabar audio"; +"AUDIO_LEVEL_CHECK_LABEL" = "Espera mientras revisamos el nivel de ruido de fondo."; +"AUDIO_TOO_LOUD_MESSAGE" = "Hay mucho ruido ambiental como para grabar tu voz. Ve a un lugar más tranquilo y reintenta."; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "Toca Siguiente cuando estés listo."; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "Audiometría tonal"; @@ -339,6 +374,48 @@ "HOLE_PEG_TEST_TEXT" = "Recoge la estaca con dos dedos."; "HOLE_PEG_TEST_TEXT_2" = "Levanta los dedos para soltar la estaca."; +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "Actividad para temblores"; +"TREMOR_TEST_INTRO_1_DETAIL" = "Esta actividad mide cuánto tiemblan tus manos en varias posiciones. Busca un lugar en donde te puedas sentar cómodamente durante esta actividad."; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "Agarra el teléfono con tu mano más afectada como se muestra en la imagen."; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "Agarra el teléfono con tu mano derecha como se muestra en la imagen."; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "Agarra el teléfono con tu mano izquierda como se muestra en la imagen."; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "Se te pedirá que realices %@ mientras estás sentado con el teléfono en la mano."; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "una tarea"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "dos tareas"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "tres tareas"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "cuatro tareas"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "cinco tareas"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "Toca Siguiente para continuar."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "Prepárate para sostener el teléfono sobre tu pierna."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "Prepárate para sostener el teléfono sobre tu pierna con tu mano izquierda."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "Prepárate para sostener el teléfono sobre tu pierna con tu mano derecha."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "Sigue sosteniendo el teléfono sobre tu pierna por %ld segundos."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "Ahora agarra el teléfono con la mano extendida a la altura de los hombros."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "Ahora agarra el teléfono con tu mano izquierda extendida a la altura de los hombros."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "Ahora agarra el teléfono con tu mano derecha extendida a la altura de los hombros."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "Sigue sosteniendo el teléfono con tu mano extendida por %ld segundos."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "Ahora agarra el teléfono a la altura de los hombros con el codo doblado."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "Ahora agarra el teléfono con tu mano izquierda a la altura de los hombros con el codo doblado."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "Ahora agarra el teléfono con tu mano derecha a la altura de los hombros con el codo doblado."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "Sigue sosteniendo el teléfono con tu codo doblado por %ld segundos"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "Ahora, aún con el codo doblado, acerca y toca el teléfono con tu nariz varias veces."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "Ahora, aún con el codo doblado y sosteniendo el teléfono con tu mano izquierda, acerca y toca el teléfono con tu nariz varias veces."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "Ahora, aún con el codo doblado y sosteniendo el teléfono con tu mano derecha, acerca y toca el teléfono con tu nariz varias veces."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "Sigue acercando y tocando el teléfono con tu nariz por %ld segundos"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "Prepárate para hacer un gesto de saludo (girando la muñeca)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "Prepárate para hacer un gesto de saludo (girando la muñeca) con tu teléfono en la mano izquierda."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "Prepárate para hacer un gesto de saludo (girando la muñeca) con tu teléfono en la mano derecha."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "Sigue haciendo un gesto de saludo por %ld segundos."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "Ahora cambia el teléfono a tu mano izquierda y pasa a la siguiente tarea."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "Ahora cambia el teléfono a tu mano derecha y pasa a la siguiente tarea."; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "Pasa a la siguiente tarea."; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "Actividad completada."; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "Se te pedirá que realices %@ mientras estás sentado, primero con el teléfono en una mano y luego en la otra."; +"TREMOR_SKIP_LEFT_HAND" = "No puedo realizar esta actividad con mi mano izquierda."; +"TREMOR_SKIP_RIGHT_HAND" = "No puedo realizar esta actividad con mi mano derecha."; +"TREMOR_SKIP_NEITHER" = "Puedo realizar esta actividad con las dos manos."; + /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "No se pudo crear el archivo"; "ERROR_DATALOGGER_COULD_NOT_FREE_SPACE" = "No se pudo eliminar suficientes registros para alcanzar el umbral"; @@ -378,6 +455,9 @@ "AX_IMAGE_CAPTURE_LABEL" = "Previsualización de captura"; "AX_IMAGE_CAPTURED_LABEL" = "Imagen capturada"; +"AX_VIDEO_CAPTURE_LABEL" = "Previsualización de captura de video"; +"AX_VIDEO_CAPTURED_LABEL" = "Vídeo capturado"; + "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "No se puede colocar un disco de tamaño %@ sobre otro de tamaño %@"; "AX_TOWER_OF_HANOI_TARGET_DISK" = "Destino"; "AX_TOWER_OF_HANOI_TOWER" = "Torre"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "Tiene discos de tamaño %@"; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "Vacía"; -"AX_GRAPH_RANGE_FORMAT" = "Rango de %@ a %@"; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "Rango de %@ a %@"; +"AX_GRAPH_STACK_PREFIX" = "Pila compuesta de"; "AX_GRAPH_AND_SEPARATOR" = " y "; "AX_GRAPH_POINT_%@" = "Punto: %@"; diff --git a/ResearchKit/Localized/es_MX.lproj/locversion.plist b/ResearchKit/Localized/es_MX.lproj/locversion.plist index 315bba72..f26c5e45 100644 --- a/ResearchKit/Localized/es_MX.lproj/locversion.plist +++ b/ResearchKit/Localized/es_MX.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale es_MX LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/fi.lproj/ResearchKit.strings b/ResearchKit/Localized/fi.lproj/ResearchKit.strings index d6805690..82c92524 100644 --- a/ResearchKit/Localized/fi.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/fi.lproj/ResearchKit.strings @@ -141,6 +141,7 @@ "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "Vain numerot ovat sallittuja."; "PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "Pääsykoodin syötön edistymisen osoitin"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "%@ merkkiä yhteensä %@ merkistä syötetty"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "Unohditko pääsykoodin?"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "Avainnipun kohdetta ei voitu lisätä."; @@ -167,6 +168,11 @@ "BOOL_NO" = "Ei"; "BOOL_YES" = "Kyllä"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "cm"; +"MEASURING_UNIT_FT" = "ft"; +"MEASURING_UNIT_IN" = "in"; + /* Default placeholders to request answers in a questionnaire. */ "PLACEHOLDER_TEXT_OR_NUMBER" = "Vastaa napauttamalla"; "NULL_ANSWER" = "Valitse vastaus"; @@ -189,11 +195,15 @@ "BUTTON_OPTION_SAVE" = "Jatka tästä myöhemmin"; "BUTTON_OPTION_DISCARD" = "Hylkää tulokset"; "BUTTON_OPTION_STOP_TASK" = "Lopeta tehtävä"; +"BUTTON_SAVE" = "Tallenna"; +"BUTTON_CLEAR_ANSWER" = "Tyhjennä vastaus"; +"BUTTON_READ_ONLY_MODE" = "Tätä vastausta ei voida muuttaa."; /* General active tasks. */ "COUNTDOWN_LABEL" = "Aktiviteetti alkaa"; "TASK_COMPLETE_TITLE" = "Aktiviteetti valmis"; "TASK_COMPLETE_TEXT" = "Datasi analysoidaan ja sinulle ilmoitetaan, kun tuloksesi ovat valmiina."; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "%@ sekuntia jäljellä."; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "Kaappaa kuva"; @@ -203,6 +213,11 @@ "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "Kaapatuille kuville ei ole määritetty kohdehakemistoa."; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "Kaapattua kuvaa ei voitu tallentaa."; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "Aloita tallentaminen"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "Lopeta tallentaminen"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "Kaappaa video uudelleen"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "Kuntoilu"; "FITNESS_DISTANCE_TITLE_FORMAT" = "Matka (%@)"; @@ -214,7 +229,7 @@ /* Short walk active task. */ "WALK_TASK_TITLE" = "Askeleet ja tasapaino"; -"WALK_INTRO_TEXT" = "Tämä aktiviteetti arvioi askellustasi ja tasapainoasi kävellessä tasaisesti ja seistessä. Älä jatka, jos et pysty turvallisesti kävelemään avustamatta."; +"WALK_INTRO_TEXT" = "Tämä aktiviteetti arvioi askellustasi ja tasapainoasi, kun kävelet tasaisesti ja seisot. Älä jatka, jos et pysty turvallisesti kävelemään avustamatta."; "WALK_INTRO_2_TEXT_%ld" = "Etsi paikka, jossa voit turvallisesti kävellä avustamatta noin %ld askelta suoraan."; "WALK_INTRO_2_DETAIL" = "Laita puhelin taskuun tai laukkuun ja seuraa ääniohjeita."; "WALK_STAND_VOICE_INSTRUCTION_FORMAT" = "Seiso nyt paikoillaan %@."; @@ -222,16 +237,33 @@ "WALK_RETURN_INSTRUCTION_FORMAT" = "Käänny ympäri ja kävele takaisin alkupisteeseen."; "WALK_OUTBOUND_INSTRUCTION_FORMAT" = "Kävele enintään %ld askelta suoraan."; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "Etsi paikka, jossa voit turvallisesti kävellä suoraa reittiä edestakaisin. Yritä kävellä jatkuvasti kääntyen reitin päissä ikään kuin kiertäisit liikenteenohjainta.\n\nSeuraavaksi sinua pyydetään kääntymään ympäri täysi kierros, ja sitten seisomaan paikallasi kädet sivuilla ja jalat noin hartianleveyden etäisyydellä toisistaan."; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "Kun olet valmis, napauta Aloita.\nLaita sitten puhelin taskuun tai laukkuun ja seuraa ääniohjeita."; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "Kävele suoraa reittiä edestakaisin %@. Kävele, kuten kävelisit tavallisesti."; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "Käänny kokonaan ympäri ja seiso paikallasi %@."; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "Aktiviteetti on suoritettu."; /* Tapping active task. */ "TAPPING_TASK_TITLE" = "Napautusnopeus"; +"TAPPING_TASK_TITLE_RIGHT" = "Oikea käsi"; +"TAPPING_TASK_TITLE_LEFT" = "Vasen käsi"; "TAPPING_INTRO_TEXT" = "Tämä aktiviteetti mittaa napautusnopeuttasi."; -"TAPPING_INTRO_TEXT_2_FORMAT" = "Aseta puhelin tasaiselle alustalle. Näytölle tulee näkyviin kaksi painiketta. Napauta painikkeita %@ vuorotellen saman käden kahdella sormella niin nopeasti kuin pystyt."; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "Laita puhelin tasaiselle alustalle."; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "Käytä saman käden kahta sormea näytön painikkeiden napauttamiseen vuorotellen."; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "Käytä oikean käden kahta sormea näytön painikkeiden napauttamiseen vuorotellen."; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "Käytä vasemman käden kahta sormea näytön painikkeiden napauttamiseen vuorotellen."; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "Suorita nyt sama testi oikealla kädellä."; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "Suorita nyt sama testi vasemmalla kädellä."; +"TAPPING_INTRO_TEXT_2_FORMAT" = "Napauta yhtä sormea ja sitten toista. Yritä ajoittaa napautukset mahdollisimman tasaisesti. Napauttele %@."; "TAPPING_CALL_TO_ACTION" = "Aloita napauttamalla Aloita-painiketta."; +"TAPPING_CALL_TO_ACTION_NEXT" = "Aloita napauttamalla Seuraava."; "TAP_BUTTON_TITLE" = "Napauta"; "TOTAL_TAPS_LABEL" = "Napautuksia yhteensä"; -"TAPPING_INSTRUCTION" = "Napauta painikkeita niin nopeasti kuin pystyt kahdella sormella."; - +"TAPPING_INSTRUCTION" = "Napauta painikkeita niin tasaisesti kuin pystyt kahdella sormella."; +"TAPPING_INSTRUCTION_RIGHT" = "Napauta painikkeita OIKEALLA kädellä."; +"TAPPING_INSTRUCTION_LEFT" = "Napauta painikkeita VASEMMALLA kädellä."; +"TAPPING_SKIP_TITLE" = "Ohita tämä käsi"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "Ääni"; @@ -241,6 +273,9 @@ "AUDIO_INTENDED_USE" = "Tämä aktiviteetti arvioi ääntäsi tallentamalla sitä puhelimen alareunassa olevalla mikrofonilla."; "AUDIO_TOO_LOUD_LABEL" = "Liian kovaa"; "AUDIO_GENERIC_ERROR_LABEL" = "Ei voida äänittää"; +"AUDIO_LEVEL_CHECK_LABEL" = "Odota, taustamelun tasoa tarkistetaan."; +"AUDIO_TOO_LOUD_MESSAGE" = "Ympäristön melutaso on liian korkea, jotta ääntäsi voitaisiin tallentaa. Siirry hiljaisempaan paikkaan ja yritä uudelleen."; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "Napauta Seuraava, kun olet valmis."; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "Audiometria"; @@ -319,7 +354,7 @@ "PASAT_INTRO_TEXT" = "PASAT-testi (Paced Auditory Serial Addition Test) mittaa kuullun informaation käsittelynopeuttasi ja laskutaitoasi."; "PVSAT_INTRO_TEXT" = "PVSAT-testi (Paced Visual Serial Addition Test) mittaa nähdyn informaation käsittelynopeuttasi ja laskutaitoasi."; "PAVSAT_INTRO_TEXT" = "PAVSAT-testi (Paced Auditory and Visual Serial Addition Test) mittaa kuullun ja nähdyn informaation käsittelynopeuttasi ja laskutaitoasi."; -"PSAT_INTRO_TEXT_2_%@" = "Yksi numero näytetään %@ sekunnin välein.\nKukin uusi numero on lisättävä sitä edeltäneeseen.\nHuomaa, että ei ole tarkoitus laskea jatkuvaa summaa, vaan vain kahden viimeisen numeron summa."; +"PSAT_INTRO_TEXT_2_%@" = "Yksittäisiä numeroita näytetään %@ sekunnin välein.\nKukin uusi numero on lisättävä sitä edeltäneeseen.\nHuomaa, että ei ole tarkoitus laskea jatkuvaa summaa, vaan vain kahden viimeisen numeron summa."; "PSAT_CALL_TO_ACTION" = "Aloita napauttamalla Aloita-painiketta."; "PSAT_INITIAL_INSTRUCTION" = "Muista tämä ensimmäinen numero."; "PSAT_INSTRUCTION" = "Lisää tämä uusi numero edelliseen."; @@ -339,6 +374,48 @@ "HOLE_PEG_TEST_TEXT" = "Poimi palikka kahdella sormella."; "HOLE_PEG_TEST_TEXT_2" = "Pudota palikka nostamalla sormia."; +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "Vapina-aktiviteetti"; +"TREMOR_TEST_INTRO_1_DETAIL" = "Tämä aktiviteetti mittaa käsiesi vapinaa eri asennoissa. Etsi paikka, jossa voit istua mukavasti tämän aktiviteetin keston ajan."; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "Pidä puhelinta alla olevan kuvan mukaisesti kädessä, jossa vaikutus on voimakkaampi."; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "Pidä puhelinta alla olevan kuvan mukaisesti OIKEASSA kädessä."; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "Pidä puhelinta alla olevan kuvan mukaisesti VASEMMASSA kädessä."; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "Sinua pyydetään suorittamaan %@ puhelin kädessä istuen."; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "tehtävä"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "kaksi tehtävää"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "kolme tehtävää"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "neljä tehtävää"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "viisi tehtävää"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "Jatka napauttamalla Seuraava."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "Valmistaudu pitämään puhelinta sylissäsi."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "Valmistaudu pitämään puhelinta sylissäsi VASEMMALLA kädellä."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "Valmistaudu pitämään puhelinta sylissäsi OIKEALLA kädellä."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "Pidä puhelinta sylissäsi %ld sekuntia."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "Pidä puhelinta nyt käsi suorana olkapään korkeudella."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "Pidä puhelinta nyt VASEN käsi suorana olkapään korkeudella."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "Pidä puhelinta nyt OIKEA käsi suorana olkapään korkeudella."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "Pidä puhelinta käsi suorana %ld sekuntia."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "Pidä puhelinta nyt olkapään korkeudella kyynärpää taivutettuna."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "Pidä puhelinta nyt VASEMMALLA kädellä olkapään korkeudella kyynärpää taivutettuna."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "Pidä puhelinta nyt OIKEALLA kädellä olkapään korkeudella kyynärpää taivutettuna."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "Pidä puhelinta kyynärpää taivutettuna %ld sekuntia"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "Kosketa nyt puhelimella nenääsi toistuvasti pitäen kyynärpäätä taivutettuna."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "Kosketa nyt puhelimella nenääsi toistuvasti pitäen puhelinta VASEMMASSA kädessä ja kyynärpäätä taivutettuna."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "Kosketa nyt puhelimella nenääsi toistuvasti pitäen puhelinta OIKEASSA kädessä ja kyynärpäätä taivutettuna."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "Kosketa puhelimella nenääsi toistuvasti %ld sekuntia"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "Valmistaudu vilkuttamaan kuninkaallisesti (vilkuttamaan rannetta pyörittämällä)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "Valmistaudu puhelin VASEMMASSA kädessä vilkuttamaan kuninkaallisesti (vilkuttamaan rannetta pyörittämällä)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "Valmistaudu puhelin OIKEASSA kädessä vilkuttamaan kuninkaallisesti (vilkuttamaan rannetta pyörittämällä)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "Vilkuta kuninkaallisesti %ld sekuntia."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "Vaihda puhelin nyt VASEMPAAN käteen ja jatka seuraavaan tehtävään."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "Vaihda puhelin nyt OIKEAAN käteen ja jatka seuraavaan tehtävään."; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "Jatka seuraavaan tehtävään."; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "Aktiviteetti valmis."; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "Sinua pyydetään suorittamaan %@ istuen, ensin puhelin toisessa kädessä ja sitten toisessa."; +"TREMOR_SKIP_LEFT_HAND" = "En voi suorittaa tätä aktiviteettia VASEMMALLA kädellä."; +"TREMOR_SKIP_RIGHT_HAND" = "En voi suorittaa tätä aktiviteettia OIKEALLA kädellä."; +"TREMOR_SKIP_NEITHER" = "Voin suorittaa tämän aktiviteetin molemmilla käsillä."; + /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "Tiedostoa ei voitu luoda"; "ERROR_DATALOGGER_COULD_NOT_FREE_SPACE" = "Ei voitu poistaa riittävästi lokitiedostoja raja-arvon saavuttamiseksi."; @@ -378,6 +455,9 @@ "AX_IMAGE_CAPTURE_LABEL" = "Kaappauksen esikatselu"; "AX_IMAGE_CAPTURED_LABEL" = "Kaapattu kuva"; +"AX_VIDEO_CAPTURE_LABEL" = "Videokaappauksen esikatselu"; +"AX_VIDEO_CAPTURED_LABEL" = "Kaapattu video"; + "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "Koon %@ levyä ei voida laittaa koon %@ levyn päälle"; "AX_TOWER_OF_HANOI_TARGET_DISK" = "Kohde"; "AX_TOWER_OF_HANOI_TOWER" = "Torni"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "Sisältää levyjä, joiden koko on %@"; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "Tyhjä"; -"AX_GRAPH_RANGE_FORMAT" = "Alue välillä %@–%@"; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "Alue välillä %@–%@"; +"AX_GRAPH_STACK_PREFIX" = "Pino, joka koostuu arvoista"; "AX_GRAPH_AND_SEPARATOR" = " ja "; "AX_GRAPH_POINT_%@" = "Piste: %@"; diff --git a/ResearchKit/Localized/fi.lproj/locversion.plist b/ResearchKit/Localized/fi.lproj/locversion.plist index a29c9425..573eed67 100644 --- a/ResearchKit/Localized/fi.lproj/locversion.plist +++ b/ResearchKit/Localized/fi.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale fi LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/fr.lproj/ResearchKit.strings b/ResearchKit/Localized/fr.lproj/ResearchKit.strings index dc8f8ba1..df6ff5a2 100644 --- a/ResearchKit/Localized/fr.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/fr.lproj/ResearchKit.strings @@ -141,6 +141,7 @@ "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "Caractères numériques uniquement."; "PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "Indicateur de progression de la saisie du code"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "%@ sur %@ chiffres saisis"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "Code oublié ?"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "Impossible d’ajouter l’élément du trousseau."; @@ -167,6 +168,11 @@ "BOOL_NO" = "Non"; "BOOL_YES" = "Oui"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "cm"; +"MEASURING_UNIT_FT" = "pi"; +"MEASURING_UNIT_IN" = "po"; + /* Default placeholders to request answers in a questionnaire. */ "PLACEHOLDER_TEXT_OR_NUMBER" = "Toucher pour répondre"; "NULL_ANSWER" = "Sélectionner une réponse"; @@ -189,11 +195,15 @@ "BUTTON_OPTION_SAVE" = "Enregistrer pour plus tard"; "BUTTON_OPTION_DISCARD" = "Effacer les résultats"; "BUTTON_OPTION_STOP_TASK" = "Terminer la tâche"; +"BUTTON_SAVE" = "Enregistrer"; +"BUTTON_CLEAR_ANSWER" = "Effacer la réponse"; +"BUTTON_READ_ONLY_MODE" = "Cette réponse ne peut pas être modifiée."; /* General active tasks. */ "COUNTDOWN_LABEL" = "Début de l’activité dans"; "TASK_COMPLETE_TITLE" = "Activité terminée"; -"TASK_COMPLETE_TEXT" = "Vos données vont être analysées. Vous serez averti lorsque les résultats sont prêts."; +"TASK_COMPLETE_TEXT" = "Vos données vont être analysées. Vous serez averti lorsque les résultats seront prêts."; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "%@ secondes restantes."; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "Capturer l’image"; @@ -203,6 +213,11 @@ "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "Aucun répertoire de sortie n’a été spécifié pour les images capturées."; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "L’image capturée n’a pas pu être enregistrée."; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "Lancer l’enregistrement"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "Arrêter l’enregistrement"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "Recapturer la vidéo"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "Fitness"; "FITNESS_DISTANCE_TITLE_FORMAT" = "Distance (%@)"; @@ -214,7 +229,7 @@ /* Short walk active task. */ "WALK_TASK_TITLE" = "Marche et équilibre"; -"WALK_INTRO_TEXT" = "Cette activité mesure votre équilibre pendant que vous marchez et que vous vous tenez debout. Ne poursuivez pas si vous ne pouvez pas marcher en sécurité sans assistance."; +"WALK_INTRO_TEXT" = "Cette activité observe votre allure et votre équilibre pendant que vous marchez et que vous vous tenez debout. Ne continuez pas si vous ne pouvez pas marcher en sécurité sans assistance."; "WALK_INTRO_2_TEXT_%ld" = "Trouvez un endroit où vous pouvez effectuer environ %ld pas sur une ligne droite en sécurité et sans assistance."; "WALK_INTRO_2_DETAIL" = "Placez votre téléphone dans votre poche ou dans un sac et suivez les instructions audio."; "WALK_STAND_VOICE_INSTRUCTION_FORMAT" = "Maintenant, ne bougez plus pendant %@."; @@ -222,16 +237,33 @@ "WALK_RETURN_INSTRUCTION_FORMAT" = "Faites demi-tour et revenez à votre point de départ."; "WALK_OUTBOUND_INSTRUCTION_FORMAT" = "Faites jusqu’à %ld pas sur une ligne droite."; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "Trouvez un endroit où vous pouvez faire des allers-retours en ligne droite en sécurité. Essayez de marcher de façon continue en effectuant des demi-tours au bout de chaque aller, comme si vous effectuiez un virage autour d’un cône.\n\nVous devrez ensuite effectuer un cercle complet puis vous tenir immobile, les bras le long du corps et les pieds écartés environ de la largeur des épaules."; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "Touchez Démarrer lorsque vous êtes prêt à commencer.\nPlacez votre téléphone dans votre poche ou dans un sac et suivez les instructions audio."; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "Faites des allers-retours en ligne droite pendant %@. Marchez normalement."; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "Effectuez un cercle complet en marchant, puis restez immobile pendant %@."; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "Vous avez terminé cette activité."; /* Tapping active task. */ "TAPPING_TASK_TITLE" = "Vitesse de saisie"; +"TAPPING_TASK_TITLE_RIGHT" = "Main droite"; +"TAPPING_TASK_TITLE_LEFT" = "Main gauche"; "TAPPING_INTRO_TEXT" = "Cette activité mesure votre vitesse de saisie."; -"TAPPING_INTRO_TEXT_2_FORMAT" = "Posez votre téléphone sur une surface plane. Deux boutons s’afficheront sur votre écran pendant %@. Avec deux doigts de la même main, touchez les boutons le plus rapidement possible en alternant les doigts."; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "Placez votre téléphone sur une surface plane."; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "Avec deux doigts de la même main et en les alternant, touchez les boutons à l’écran."; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "Avec deux doigts de la main droite et en les alternant, touchez les boutons à l’écran."; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "Avec deux doigts de la main gauche et en les alternant, touchez les boutons à l’écran."; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "Répétez à présent ce test avec la main droite."; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "Répétez à présent ce test avec la main gauche."; +"TAPPING_INTRO_TEXT_2_FORMAT" = "Touchez l’écran avec un doigt, puis avec l’autre, pendant %@. Essayez de respecter le même intervalle de temps entre chaque toucher pour être aussi régulier que possible."; "TAPPING_CALL_TO_ACTION" = "Touchez Démarrer pour commencer."; +"TAPPING_CALL_TO_ACTION_NEXT" = "Touchez Suivant pour commencer."; "TAP_BUTTON_TITLE" = "Toucher"; "TOTAL_TAPS_LABEL" = "Total de touchers"; -"TAPPING_INSTRUCTION" = "Touchez les boutons le plus rapidement possible avec deux doigts."; - +"TAPPING_INSTRUCTION" = "Touchez les boutons de façon aussi régulière que possible avec deux doigts."; +"TAPPING_INSTRUCTION_RIGHT" = "Touchez les boutons de la main DROITE."; +"TAPPING_INSTRUCTION_LEFT" = "Touchez les boutons de la main GAUCHE."; +"TAPPING_SKIP_TITLE" = "Ne pas faire avec cette main"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "Voix"; @@ -241,6 +273,9 @@ "AUDIO_INTENDED_USE" = "Cette activité évalue votre voix en l’enregistrant dans le micro au bas de votre téléphone."; "AUDIO_TOO_LOUD_LABEL" = "Trop fort"; "AUDIO_GENERIC_ERROR_LABEL" = "Enregistrement audio impossible"; +"AUDIO_LEVEL_CHECK_LABEL" = "Veuillez patienter pendant que nous étudions le volume du fond sonore."; +"AUDIO_TOO_LOUD_MESSAGE" = "Le volume ambiant est trop fort pour enregistrer votre voix. Rendez-vous dans un endroit plus calme et réessayez."; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "Touchez Suivant lorsque vous êtes prêt."; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "Audiométrie tonale"; @@ -339,6 +374,48 @@ "HOLE_PEG_TEST_TEXT" = "Ramassez le rond avec deux doigts."; "HOLE_PEG_TEST_TEXT_2" = "Levez les doigts pour faire tomber le rond."; +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "Tremblements"; +"TREMOR_TEST_INTRO_1_DETAIL" = "Cette activité mesure les tremblements de vos mains dans différentes positions. Trouvez une position assise confortable, que vous garderez pendant toute la durée de ce test."; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "Tenez votre téléphone dans la main la plus affectée, comme indiqué dans l’image ci-dessous."; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "Tenez votre téléphone dans la main DROITE, comme indiqué dans l’image ci-dessous."; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "Tenez votre téléphone dans la main GAUCHE, comme indiqué dans l’image ci-dessous."; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "Vous serez invité à réaliser %@ en positon assise, le téléphone dans votre main."; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "une tâche"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "deux tâches"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "trois tâches"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "quatre tâches"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "cinq tâches"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "Touchez Suivant pour continuer."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "Préparez-vous à tenir votre téléphone sur vos genoux."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "Préparez-vous à tenir votre téléphone sur vos genoux avec votre main GAUCHE."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "Préparez-vous à tenir votre téléphone sur vos genoux avec votre main DROITE."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "Tenez votre téléphone sur vos genoux pendant %ld secondes."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "Maintenant, tenez votre téléphone à hauteur d’épaule, la main tendue."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "Maintenant, tenez votre téléphone avec votre main GAUCHE, à hauteur d’épaule, la main tendue."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "Maintenant, tenez votre téléphone avec votre main DROITE, à hauteur d’épaule, la main tendue."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "Tenez votre téléphone, la main tendue, pendant %ld secondes."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "Maintenant, tenez votre téléphone à hauteur d’épaule, le coude plié."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "Maintenant, tenez votre téléphone avec votre main GAUCHE, à hauteur d’épaule, le coude plié."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "Maintenant, tenez votre téléphone avec votre main DROITE, à hauteur d’épaule, le coude plié."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "Tenez votre téléphone, le coude plié, pendant %ld secondes"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "Maintenant, avec le coude plié, portez votre téléphone à votre nez, plusieurs fois."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "Maintenant, avec le coude plié et le téléphone dans votre main GAUCHE, portez votre téléphone à votre nez, plusieurs fois."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "Maintenant, avec le coude plié et le téléphone dans votre main DROITE, portez votre téléphone à votre nez, plusieurs fois."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "Portez votre téléphone à votre nez, plusieurs fois, pendant %ld secondes"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "Préparez-vous à saluer de la main, les doigts serrés les uns contre les autres."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "Préparez-vous à saluer de la main GAUCHE, le téléphone en main, les doigts serrés les uns contre les autres."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "Préparez-vous à saluer de la main DROITE, le téléphone en main, les doigts serrés les uns contre les autres."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "Saluez de la main, les doigts serrés les uns contre les autres, pendant %ld secondes."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "Placez maintenant le téléphone dans votre main GAUCHE et passez à la tâche suivante."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "Placez maintenant le téléphone dans votre main DROITE et passez à la tâche suivante."; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "Passez à la tâche suivante."; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "Activité terminée."; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "Vous serez invité à réaliser %@ en positon assise, le téléphone dans une main, puis dans l’autre."; +"TREMOR_SKIP_LEFT_HAND" = "Je ne peux pas effectuer cette activité avec ma main GAUCHE."; +"TREMOR_SKIP_RIGHT_HAND" = "Je ne peux pas effectuer cette activité avec ma main DROITE."; +"TREMOR_SKIP_NEITHER" = "Je peux effectuer cette activité des deux mains."; + /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "Création du fichier impossible"; "ERROR_DATALOGGER_COULD_NOT_FREE_SPACE" = "Impossible de supprimer assez de fichiers journaux pour atteindre le seuil"; @@ -378,6 +455,9 @@ "AX_IMAGE_CAPTURE_LABEL" = "Aperçu de la capture"; "AX_IMAGE_CAPTURED_LABEL" = "Image capturée"; +"AX_VIDEO_CAPTURE_LABEL" = "Aperçu de la capture vidéo"; +"AX_VIDEO_CAPTURED_LABEL" = "Vidéo capturée"; + "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "Impossible de placer un disque de taille %@ sur un disque de taille %@"; "AX_TOWER_OF_HANOI_TARGET_DISK" = "Cible"; "AX_TOWER_OF_HANOI_TOWER" = "Tour"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "Possède un disque de tailles %@"; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "Vide"; -"AX_GRAPH_RANGE_FORMAT" = "De %@ à %@"; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "De %@ à %@"; +"AX_GRAPH_STACK_PREFIX" = "Pile composée de"; "AX_GRAPH_AND_SEPARATOR" = " et "; "AX_GRAPH_POINT_%@" = "Point : %@"; diff --git a/ResearchKit/Localized/fr.lproj/locversion.plist b/ResearchKit/Localized/fr.lproj/locversion.plist index a549ea42..3abe53cf 100644 --- a/ResearchKit/Localized/fr.lproj/locversion.plist +++ b/ResearchKit/Localized/fr.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale fr LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/fr_CA.lproj/ResearchKit.strings b/ResearchKit/Localized/fr_CA.lproj/ResearchKit.strings index e20455a7..78c105b1 100644 --- a/ResearchKit/Localized/fr_CA.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/fr_CA.lproj/ResearchKit.strings @@ -141,6 +141,7 @@ "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "Seuls les caractères numériques sont autorisés."; "PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "Indicateur de progression de saisie du code"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "%@ sur %@ chiffres entrés"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "Code oublié?"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "Impossible d’ajouter l’élément du trousseau."; @@ -167,6 +168,11 @@ "BOOL_NO" = "Non"; "BOOL_YES" = "Oui"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "cm"; +"MEASURING_UNIT_FT" = "pi"; +"MEASURING_UNIT_IN" = "po"; + /* Default placeholders to request answers in a questionnaire. */ "PLACEHOLDER_TEXT_OR_NUMBER" = "Toucher pour répondre"; "NULL_ANSWER" = "Sélectionner une réponse"; @@ -189,11 +195,15 @@ "BUTTON_OPTION_SAVE" = "Enregistrer pour plus tard"; "BUTTON_OPTION_DISCARD" = "Supprimer les résultats"; "BUTTON_OPTION_STOP_TASK" = "Terminer la tâche"; +"BUTTON_SAVE" = "Enregistrer"; +"BUTTON_CLEAR_ANSWER" = "Effacer la réponse"; +"BUTTON_READ_ONLY_MODE" = "Impossible de modifier cette réponse."; /* General active tasks. */ "COUNTDOWN_LABEL" = "L’activité commence dans"; "TASK_COMPLETE_TITLE" = "Activité terminée"; "TASK_COMPLETE_TEXT" = "Les données vont être analysées, et vous recevrez une notification lorsque les résultats seront disponibles."; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "%@ secondes restantes."; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "Capturer l’image"; @@ -203,6 +213,11 @@ "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "Aucun répertoire de sortie n’a été spécifié pour les images capturées."; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "L’image capturée n’a pas pu être enregistrée."; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "Lancer l’enregistrement"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "Arrêter l’enregistrement"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "Recapturer la vidéo"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "Forme"; "FITNESS_DISTANCE_TITLE_FORMAT" = "Distance (%@)"; @@ -222,16 +237,33 @@ "WALK_RETURN_INSTRUCTION_FORMAT" = "Retournez-vous, puis marchez vers votre point de départ."; "WALK_OUTBOUND_INSTRUCTION_FORMAT" = "Parcourez %ld pas en ligne droite."; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "Identifiez un endroit où vous pouvez faire des allers-retours en ligne droite de façon sécuritaire. Essayez de marcher sans vous arrêter, en faisant demi-tour en fin de ligne droite, comme si vous contourniez un cône.\n\nIl vous sera ensuite demandé de vous retourner en effectuant un cercle complet, puis de rester immobile, les bras le long du corps et les pieds dans l’alignement des épaules."; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "Touchez Démarrer lorsque vous êtes prêt.\nPlacez ensuite votre téléphone dans une poche ou un sac, puis suivez les instructions audio."; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "Faites des allers-retours en ligne droite pendant %@. Marchez de façon habituelle."; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "Effectuez un cercle complet, puis restez immobile pendant %@."; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "Vous avez terminé l’activité."; /* Tapping active task. */ "TAPPING_TASK_TITLE" = "Vitesse de frappe"; +"TAPPING_TASK_TITLE_RIGHT" = "Main droite"; +"TAPPING_TASK_TITLE_LEFT" = "Main gauche"; "TAPPING_INTRO_TEXT" = "Cette activité mesure votre vitesse de frappe."; -"TAPPING_INTRO_TEXT_2_FORMAT" = "Placez votre iPhone sur une surface plane. Deux boutons s’afficheront à l’écran pendant %@. Touchez les boutons tour à tour avec deux doigts d’une même main, aussi vite que possible."; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "Placez votre téléphone sur une surface plane."; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "Utilisez deux doigts d’une même main pour toucher tour à tour les boutons affichés à l’écran."; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "Utilisez deux doigts de la main droite pour toucher tour à tour les boutons affichés à l’écran."; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "Utilisez deux doigts de la main gauche pour toucher tour à tour les boutons affichés à l’écran."; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "Maintenant, répétez le test avec la main droite."; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "Maintenant, répétez le test avec la main gauche."; +"TAPPING_INTRO_TEXT_2_FORMAT" = "Touchez l’écran avec un doigt, puis avec l’autre. Faites en sorte que les contacts soient aussi réguliers que possible. Continuez pendant %@."; "TAPPING_CALL_TO_ACTION" = "Touchez Démarrer pour commencer."; +"TAPPING_CALL_TO_ACTION_NEXT" = "Touchez Suivant pour commencer."; "TAP_BUTTON_TITLE" = "Toucher"; "TOTAL_TAPS_LABEL" = "Total de contacts"; -"TAPPING_INSTRUCTION" = "Touchez les boutons aussi vite que possible avec deux doigts."; - +"TAPPING_INSTRUCTION" = "Touchez les boutons aussi régulièrement que possible avec deux doigts."; +"TAPPING_INSTRUCTION_RIGHT" = "Touchez les boutons avec la main DROITE."; +"TAPPING_INSTRUCTION_LEFT" = "Touchez les boutons avec la main GAUCHE."; +"TAPPING_SKIP_TITLE" = "Ignorer cette main"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "Voix"; @@ -241,6 +273,9 @@ "AUDIO_INTENDED_USE" = "Cette activité évalue votre voix en l’enregistrant grâce au micro situé au bas de votre téléphone."; "AUDIO_TOO_LOUD_LABEL" = "Trop fort"; "AUDIO_GENERIC_ERROR_LABEL" = "Impossible d’enregistrer le son"; +"AUDIO_LEVEL_CHECK_LABEL" = "Veuillez patienter pendant que nous vérifions le niveau de bruit de fond."; +"AUDIO_TOO_LOUD_MESSAGE" = "Le niveau de bruit ambiant est trop élevé pour enregistrer votre voix. Choisissez un endroit plus silencieux, puis réessayez."; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "Touchez Suivant lorsque vous êtes prêt."; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "Audiométrie tonale"; @@ -339,6 +374,48 @@ "HOLE_PEG_TEST_TEXT" = "Saisissez le cercle avec deux doigts."; "HOLE_PEG_TEST_TEXT_2" = "Levez vos doigts pour relâcher le cercle."; +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "Tremblements"; +"TREMOR_TEST_INTRO_1_DETAIL" = "Cette activité mesure les tremblements de vos mains dans plusieurs positions. Choisissez un endroit où vous pouvez vous assoir confortablement pendant la durée de cette activité."; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "Tenez le téléphone dans la main la plus affectée comme indiqué dans l’image ci-dessous."; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "Tenez le téléphone dans la main DROITE comme indiqué dans l’image ci-dessous."; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "Tenez le téléphone dans la main GAUCHE comme indiqué dans l’image ci-dessous."; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "Il vous sera demandé d’effectuer %@ tout en étant assis avec le téléphone dans la main."; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "une tâche"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "deux tâches"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "trois tâches"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "quatre tâches"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "cinq tâches"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "Touchez Suivant pour continuer."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "Préparez-vous à tenir votre téléphone sur les genoux."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "Préparez-vous à tenir votre téléphone sur les genoux avec votre main GAUCHE."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "Préparez-vous à tenir votre téléphone sur les genoux avec votre main DROITE."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "Tenez votre téléphone sur les genoux pendant %ld secondes."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "Maintenant, tenez votre téléphone en tendant votre bras à la hauteur de votre épaule."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "Maintenant, tenez votre téléphone dans la main GAUCHE en tendant votre bras à la hauteur de votre épaule."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "Maintenant, tenez votre téléphone dans la main DROITE en tendant votre bras à la hauteur de votre épaule."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "Tenez votre téléphone avec la main tendue pendant %ld secondes."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "Maintenant, tenez votre téléphone à la hauteur de votre épaule tout en pliant le coude."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "Maintenant, tenez votre téléphone dans la main GAUCHE à la hauteur de votre épaule tout en pliant le coude."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "Maintenant, tenez votre téléphone dans la main DROITE à la hauteur de votre épaule tout en pliant le coude."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "Tenez votre téléphone tout en pliant le coude pendant %ld secondes."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "Maintenant, pliez le coude et touchez votre nez avec le téléphone de façon répétée."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "Maintenant, pliez le coude tout en tenant votre téléphone dans la main GAUCHE et touchez votre nez avec le téléphone de façon répétée."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "Maintenant, pliez le coude tout en tenant votre téléphone dans la main DROITE et touchez votre nez avec le téléphone de façon répétée."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "Touchez votre nez avec le téléphone à plusieurs reprises pendant %ld secondes."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "Préparez-vous à saluer en faisant pivoter le poignet."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "Préparez-vous à saluer de la main GAUCHE en tenant le téléphone."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "Préparez-vous à saluer de la main DROITE en tenant le téléphone."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "Saluez de la main pendant %ld secondes."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "Prenez le téléphone dans la main GAUCHE, puis passez à la tâche suivante."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "Prenez le téléphone dans la main DROITE, puis passez à la tâche suivante."; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "Passez à la tâche suivante."; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "Activité terminée."; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "Il vous sera demandé d’effectuer %@ tout en étant assis avec le téléphone dans une main, puis dans l’autre."; +"TREMOR_SKIP_LEFT_HAND" = "Je ne peux pas effectuer cette activité avec la main GAUCHE."; +"TREMOR_SKIP_RIGHT_HAND" = "Je ne peux pas effectuer cette activité avec la main DROITE."; +"TREMOR_SKIP_NEITHER" = "Je peux effectuer cette activité avec les deux mains."; + /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "Impossible de créer le fichier"; "ERROR_DATALOGGER_COULD_NOT_FREE_SPACE" = "Impossible de supprimer suffisamment de fichiers d’historique pour atteindre le seuil"; @@ -378,6 +455,9 @@ "AX_IMAGE_CAPTURE_LABEL" = "Aperçu de l’image capturée"; "AX_IMAGE_CAPTURED_LABEL" = "Image capturée"; +"AX_VIDEO_CAPTURE_LABEL" = "Aperçu de la vidéo capturée"; +"AX_VIDEO_CAPTURED_LABEL" = "Vidéo capturée"; + "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "Impossible de placer un disque de taille %@ sur un disque de taille %@"; "AX_TOWER_OF_HANOI_TARGET_DISK" = "Cible"; "AX_TOWER_OF_HANOI_TOWER" = "Tour"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "Comporte des disques de tailles %@"; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "Vide"; -"AX_GRAPH_RANGE_FORMAT" = "De %@ à %@"; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "De %@ à %@"; +"AX_GRAPH_STACK_PREFIX" = "Pile composée de"; "AX_GRAPH_AND_SEPARATOR" = " et "; "AX_GRAPH_POINT_%@" = "Point : %@"; diff --git a/ResearchKit/Localized/fr_CA.lproj/locversion.plist b/ResearchKit/Localized/fr_CA.lproj/locversion.plist index c5dd3530..2ee65970 100644 --- a/ResearchKit/Localized/fr_CA.lproj/locversion.plist +++ b/ResearchKit/Localized/fr_CA.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale fr_CA LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/he.lproj/ResearchKit.strings b/ResearchKit/Localized/he.lproj/ResearchKit.strings index efb60e69..7e81bf05 100644 --- a/ResearchKit/Localized/he.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/he.lproj/ResearchKit.strings @@ -141,6 +141,7 @@ "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "ניתן להשתמש בתווי ספרות בלבד."; "PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "מד התקדמות של הקשת קוד גישה"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "הוקשו %@ מתוך %@ ספרות"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "שכחת את קוד הגישה?"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "לא ניתן היה להוסיף את פריט צרור המפתחות."; @@ -167,6 +168,11 @@ "BOOL_NO" = "לא"; "BOOL_YES" = "כן"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "ס״מ"; +"MEASURING_UNIT_FT" = "רגל"; +"MEASURING_UNIT_IN" = "אינץ׳"; + /* Default placeholders to request answers in a questionnaire. */ "PLACEHOLDER_TEXT_OR_NUMBER" = "הקש/י בכדי לענות"; "NULL_ANSWER" = "בחר/י תשובה"; @@ -189,11 +195,15 @@ "BUTTON_OPTION_SAVE" = "שמור למועד מאוחר יותר"; "BUTTON_OPTION_DISCARD" = "מחק את התוצאות"; "BUTTON_OPTION_STOP_TASK" = "סיים את המשימה"; +"BUTTON_SAVE" = "שמור"; +"BUTTON_CLEAR_ANSWER" = "נקה את התשובה"; +"BUTTON_READ_ONLY_MODE" = "לא ניתן לשנות את התשובה הזאת."; /* General active tasks. */ "COUNTDOWN_LABEL" = "מתחיל פעילות בעוד"; "TASK_COMPLETE_TITLE" = "הפעילות הושלמה"; "TASK_COMPLETE_TEXT" = "הנתונים שלך ינותחו וכאשר התוצאות יהיו מוכנות תקבל/י הודעה."; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "נותרו %@ שניות."; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "צלם תמונה"; @@ -203,6 +213,11 @@ "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "לא צוינה ספריית פלט עבור התמונות שצולמו."; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "לא ניתן היה לשמור את התמונה שצולמה."; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "התחל הקלטה"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "הפסק הקלטה"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "צלם/י את הסרט מחדש"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "כושר"; "FITNESS_DISTANCE_TITLE_FORMAT" = "מרחק (%@)"; @@ -222,16 +237,33 @@ "WALK_RETURN_INSTRUCTION_FORMAT" = "הסתובב/י והתהלך/י חזרה למקום שבו התחלת."; "WALK_OUTBOUND_INSTRUCTION_FORMAT" = "לך/י %ld צעדים לכל היותר בקו ישר."; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "מצא/י מקום שבו ניתן ללכת בקו ישר הלוך וחזור בבטחה. נסה/י לצעוד באופן רציף ולבצע פניות בקצוות המסלול, כאילו תוך הקפת קונוס דמיוני המסמן את הקצה.\n\nלאחר מכן, תתבקש/י ללכת במסלול מעגלי שלם ואז לעצור ולעמוד כשהידיים לצידי הגוף והרגליים בפיסוק קל ברוחב הכתפיים."; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "הקש/י על ״התחל״ כשתהיה/י מוכן/ה.\nלאחר מכן הנח/י את הטלפון בכיס או בתיק ובצע/י את ההוראות שיושמעו לך."; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "לך/י הלוך ושוב בקו ישר במשך %@, באופן ההליכה הרגיל שלך."; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "בצע/י סיבוב שלם ולאחר מכן עמוד/י למשך %@."; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "השלמת את הפעילות."; /* Tapping active task. */ "TAPPING_TASK_TITLE" = "מהירות הקשה"; +"TAPPING_TASK_TITLE_RIGHT" = "יד ימין"; +"TAPPING_TASK_TITLE_LEFT" = "יד שמאל"; "TAPPING_INTRO_TEXT" = "פעילות זו מודדת את מהירות ההקשה שלך."; -"TAPPING_INTRO_TEXT_2_FORMAT" = "הנח/י את הטלפון על משטח שטוח. שני כפתורים יופיעו במסך למשך %@. כעת, השתמש/י בשתי אצבעות מאותה יד בכדי להקיש לחלופין על הכפתורים שמופיעים במהירות המרבית שתוכל/י."; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "הנח/י את הטלפון על משטח ישר."; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "הקש/י על הכפתורים שמופיעים על המסך עם שתי אצבעות של אותה היד המתחלפות ביניהן לסירוגין."; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "הקש/י על הכפתורים שמופיעים על המסך בשתי אצבעות יד ימין המתחלפות ביניהן לסירוגין."; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "הקש/י על הכפתורים שמופיעים על המסך בשתי אצבעות יד שמאל המתחלפות ביניהן לסירוגין."; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "כעת חזור/י על אותה פעולה ביד ימין."; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "כעת חזור/י על אותה פעולה ביד שמאל."; +"TAPPING_INTRO_TEXT_2_FORMAT" = "הקש/י באצבע אחת, ולאחר מכן בשניה. נסה/י להקיש בקצב קבוע ככל שתוכל/י. המשך/י להקיש למשך %@."; "TAPPING_CALL_TO_ACTION" = "הקש/י על ״התחל״ בכדי להתחיל."; +"TAPPING_CALL_TO_ACTION_NEXT" = "הקש/י על ״הבא״ בכדי להתחיל."; "TAP_BUTTON_TITLE" = "הקש/י"; "TOTAL_TAPS_LABEL" = "סה״כ הקשות"; -"TAPPING_INSTRUCTION" = "הקש/י על הכפתורים במהירות הכי גבוהה שתוכל/י בשתי אצבעות."; - +"TAPPING_INSTRUCTION" = "הקש/י על הכפתורים בשתי אצבעות באופן עקבי ככל שניתן."; +"TAPPING_INSTRUCTION_RIGHT" = "הקש/י על הכפתורים ביד ימין."; +"TAPPING_INSTRUCTION_LEFT" = "הקש/י על הכפתורים ביד שמאל."; +"TAPPING_SKIP_TITLE" = "דלג/י על יד זו"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "קול"; @@ -241,6 +273,9 @@ "AUDIO_INTENDED_USE" = "פעילות זו מעריכה את קולך על-ידי הקלטתו דרך המיקרופון שבתחתית הטלפון."; "AUDIO_TOO_LOUD_LABEL" = "חזק מדי"; "AUDIO_GENERIC_ERROR_LABEL" = "לא ניתן להקליט שמע"; +"AUDIO_LEVEL_CHECK_LABEL" = "המתן/י עד לסיום מדידת רעשי הרקע."; +"AUDIO_TOO_LOUD_MESSAGE" = "רעש הרקע חזק מדי ולא ניתן להקליט את קולך. עבור/י למקום שקט יותר ונסה/י שוב."; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "כשתהיה/י מוכן, הקש/י על ״הבא״."; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "מדידת היכולת לשמוע צלילים"; @@ -339,6 +374,48 @@ "HOLE_PEG_TEST_TEXT" = "הרם/י את הדיסקית בשתי אצבעות."; "HOLE_PEG_TEST_TEXT_2" = "הרם/י את אצבעותיך כדי להפיל את הדיסקית."; +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "פעילות למדידת הרעד"; +"TREMOR_TEST_INTRO_1_DETAIL" = "פעילות זו מודדת את הרעד בידיים שלך בתנוחות שונות. מצא/י מקום שבו תוכל/י לשבת בנוחות במשך כל הפעילות."; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "החזק/י את הטלפון ביד שבה הבעיה מורגשת יותר, כמתואר בתמונה למטה."; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "החזק/י את הטלפון ביד ימין, כמתואר בתמונה למטה."; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "החזק/י את הטלפון ביד שמאל, כמתואר בתמונה למטה."; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "בהמשך תתבקש/י לבצע %@ בישיבה עם הטלפון ביד."; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "משימה אחת"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "שתי משימות"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "שלוש משימות"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "ארבע משימות"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "חמש משימות"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "הקש/י על ״הבא״ בכדי להמשיך."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "התכונן/י להחזיק את הטלפון על הירכיים."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "התכונן/י להחזיק את הטלפון ביד שמאל כשזאת מונחת על הירכיים."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "התכונן/י להחזיק את הטלפון ביד ימין כשזאת מונחת על הירכיים."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "המשך/י להחזיק את הטלפון על הירכיים למשך %ld שניות."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "כעת החזק/י את הטלפון בגובה הכתפיים תוך יישור המרפק."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "כעת החזק/י את הטלפון ביד שמאל בגובה הכתפיים תוך יישור המרפק."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "כעת החזק/י את הטלפון ביד ימין בגובה הכתפיים תוך יישור המרפק."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "המשך/י להחזיק את הטלפון תוך יישור המרפק למשך %ld שניות."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "כעת החזק/י את הטלפון בגובה הכתפיים תוך כיפוף המרפק."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "כעת החזק/י את הטלפון ביד שמאל בגובה הכתפיים תוך כיפוף המרפק."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "כעת החזק/י את הטלפון ביד ימין בגובה הכתפיים תוך כיפוף המרפק."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "המשך/י להחזיק את הטלפון תוך כיפוף המרפק למשך %ld שניות"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "כעת, תוך שמירה על מרפק מכופף, גע/י עם הטלפון באף מספר פעמים ברצף."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "כעת, עם הטלפון ביד שמאל ותוך שמירה על מרפק מכופף, גע/י עם הטלפון באף מספר פעמים ברצף."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "כעת, עם הטלפון ביד ימין ותוך שמירה על מרפק מכופף, גע/י עם הטלפון באף מספר פעמים ברצף."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "המשך/י לגעת עם הטלפון באף למשך %ld שניות"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "התכונן/י לבצע ״נפנוף מלכותי״ (סיבוב מפרק כף היד על צירו)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "התכונן/י לביצוע ״נפנוף מלכותי״ תוך אחיזת הטלפון ביד שמאל (סיבוב מפרק כף היד על צירו)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "התכונן/י לביצוע ״נפנוף מלכותי״ תוך אחיזת הטלפון ביד ימין (סיבוב מפרק כף היד על צירו)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "המשך/י לבצע ״נפנוף מלכותי״ למשך %ld שניות."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "כעת העבר/י את הטלפון ליד שמאל והמשך/י למשימה הבאה."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "כעת העבר/י את הטלפון ליד ימין והמשך/י למשימה הבאה."; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "המשך/י אל המשימה הבאה."; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "הפעילות הושלמה."; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "בהמשך תתבקש/י לבצע %@ בישיבה כשהטלפון נמצא תחילה ביד אחת, ולאחר מכן ביד השניה."; +"TREMOR_SKIP_LEFT_HAND" = "אני לא יכול/ה לבצע את הפעולה הזו ביד שמאל."; +"TREMOR_SKIP_RIGHT_HAND" = "אני לא יכול/ה לבצע את הפעולה הזו ביד ימין."; +"TREMOR_SKIP_NEITHER" = "אני יכול/ה לבצע את הפעולה הזו בשתי הידיים."; + /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "לא ניתן ליצור את הקובץ"; "ERROR_DATALOGGER_COULD_NOT_FREE_SPACE" = "לא ניתן היה להסיר מספיק קובצי רישום בכדי להגיע לסף"; @@ -378,6 +455,9 @@ "AX_IMAGE_CAPTURE_LABEL" = "צלם תצוגה מקדימה"; "AX_IMAGE_CAPTURED_LABEL" = "התמונה צולמה"; +"AX_VIDEO_CAPTURE_LABEL" = "תצוגה מקדימה של הסרט שצולם"; +"AX_VIDEO_CAPTURED_LABEL" = "הסרט שצולם"; + "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "לא ניתן למקם דיסקית בגודל %@ על-גבי דיסקית בגודל %@"; "AX_TOWER_OF_HANOI_TARGET_DISK" = "יעד"; "AX_TOWER_OF_HANOI_TOWER" = "מגדל"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "כולל דיסק בגדלים %@"; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "ריק"; -"AX_GRAPH_RANGE_FORMAT" = "נע בין %@ ל-%@"; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "נע בין %@ ל-%@"; +"AX_GRAPH_STACK_PREFIX" = "הערימה מכילה"; "AX_GRAPH_AND_SEPARATOR" = " וגם"; "AX_GRAPH_POINT_%@" = "נקודה: %@"; diff --git a/ResearchKit/Localized/he.lproj/locversion.plist b/ResearchKit/Localized/he.lproj/locversion.plist index 3870aed5..3f197e68 100644 --- a/ResearchKit/Localized/he.lproj/locversion.plist +++ b/ResearchKit/Localized/he.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale he LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/hi.lproj/ResearchKit.strings b/ResearchKit/Localized/hi.lproj/ResearchKit.strings index 64b4c1e0..5a6f81eb 100644 --- a/ResearchKit/Localized/hi.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/hi.lproj/ResearchKit.strings @@ -37,7 +37,7 @@ "CONSENT_REVIEW_INSTRUCTION" = "नीचे दिए गए फ़ॉर्म को देखें और जारी रखने के लिए “सहमत” पर टैप करें।"; "CONSENT_REVIEW_ALERT_TITLE" = "समीक्षा"; "CONSENT_SIGNATURE_TITLE" = "हस्ताक्षर"; -"CONSENT_SIGNATURE_INSTRUCTION" = "कृपया अपनी ऊँगली का उपयोग करके नीचे दी गई रेखा पर हस्ताक्षर करें।"; +"CONSENT_SIGNATURE_INSTRUCTION" = "कृपया अपनी उँगली का उपयोग करके नीचे दी गई रेखा पर हस्ताक्षर करें।"; "CONSENT_SIGNATURE_PLACEHOLDER" = "यहाँ हस्ताक्षर करें"; "CONSENT_PAGE_NUMBER_FORMAT" = "पृष्ठ %1$ld/%2$ld"; @@ -119,7 +119,7 @@ /* Verification step */ "VERIFICATION_NAV_TITLE" = "सत्यापन"; "VERIFICATION_STEP_TITLE" = "अपना ईमेल सत्यापित करें"; -"RESEND_EMAIL_LABEL_MESSAGE" = "यदि आपको सत्यापन ईमेल प्राप्त नहीं होता है और आप इसे पुनः प्राप्त करना चाहते हैं तो नीचे दिये गए लिंक पर टैप करें।"; +"RESEND_EMAIL_LABEL_MESSAGE" = "यदि आपको सत्यापन ईमेल प्राप्त नहीं हुआ है और आप चाहते हैं कि उसे पुनः प्रेषित किया जाए, तो नीचे दिए गए लिंक पर टैप करें।"; "RESEND_EMAIL_BUTTON_TITLE" = "सत्यापन ईमेल फिर से भेजें"; /* Login step */ @@ -141,6 +141,7 @@ "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "केवल न्यूमैरिक वर्णों की अनुमति है।"; "PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "पासकोड दर्ज करने की प्रक्रिया का संकेतक"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "%1$@/%2$@ मान दर्ज किए गए"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "पासकोड भूल गए?"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "कीचेन आइटम को जोड़ा नहीं जा सका।"; @@ -167,6 +168,11 @@ "BOOL_NO" = "नहीं"; "BOOL_YES" = "हाँ"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "सें॰मी॰"; +"MEASURING_UNIT_FT" = "फ़ीट"; +"MEASURING_UNIT_IN" = "इंच"; + /* Default placeholders to request answers in a questionnaire. */ "PLACEHOLDER_TEXT_OR_NUMBER" = "उत्तर देने के लिए टैप करें"; "NULL_ANSWER" = "उत्तर का चयन करें"; @@ -189,11 +195,15 @@ "BUTTON_OPTION_SAVE" = "बाद के लिए सहेजें"; "BUTTON_OPTION_DISCARD" = "परिणाम ख़ारिज करें"; "BUTTON_OPTION_STOP_TASK" = "कार्य समाप्त करें"; +"BUTTON_SAVE" = "सहेजें"; +"BUTTON_CLEAR_ANSWER" = "उत्तर साफ़ करें"; +"BUTTON_READ_ONLY_MODE" = "इस उत्तर को संशोधित नहीं किया जा सकता है।"; /* General active tasks. */ "COUNTDOWN_LABEL" = "गतिविधि शुरू होने में शेष समय"; "TASK_COMPLETE_TITLE" = "गतिविधि पूर्ण"; "TASK_COMPLETE_TEXT" = "आपके डेटा का विश्लेषण किया जाएगा और परिणाम के तैयार होते ही आपको सूचित किया जाएगा।"; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "%@ सेकंड शेष।"; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "छवि कैप्चर करें"; @@ -203,6 +213,11 @@ "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "कैप्चर की गई छवियों के लिए कोई आउटपुट निर्देशिका निर्दिष्ट नहीं की गई थी।"; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "कैप्चर की गई छवि सहेजी नहीं जा सकी।"; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "रिकॉर्डिंग शुरू करें"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "रिकॉर्डिंग रोकें"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "वीडियो पुनः कैप्चर करें"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "तंदुरुस्ती"; "FITNESS_DISTANCE_TITLE_FORMAT" = "दूरी (%@)"; @@ -222,16 +237,33 @@ "WALK_RETURN_INSTRUCTION_FORMAT" = "पीछे मुड़ें और जहाँ से आपने शुरूआत की थी, वहाँ वापस चलकर जाएँ।"; "WALK_OUTBOUND_INSTRUCTION_FORMAT" = "लगभग %ld कदम सीधे चलें।"; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "ऐसी जगह ढूँढें, जहाँ आप एक ओर व दूसरी ओर सुरक्षित रूप से सीधे चल सकें। मार्ग की समाप्ति पर मुड़ें और लगातार चलते रहने का प्रयास करें, जैसे कि आप किसी शंकु के इर्द-गिर्द चल रहे हों।\n\nइसके बाद आपको पूर्ण वृत्त में मुड़ने के लिए, फिर अपनी भुजाओं को फैलाकर और अपने पैरों को लगभग कंधे की चौड़ाई तक फैलाकर स्थिर खड़े रहने के लिए कहा जाएगा।"; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "जब आप शुरू करने के लिए तैयार हों, “आरंभ करें” पर टैप करें।\nफिर अपने फ़ोन को जेब या बैग में रखें और ऑडियो निर्देशों का पालन करें।"; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "%@ तक पीछे और आगे सीधे चलें। अपनी सामान्य चाल से चलें।"; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "पूर्ण वृत्त में मुड़ें फिर %@ तक स्थिर खड़े रहें।"; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "आपने गतिविधि को पूर्ण कर लिया है।"; /* Tapping active task. */ "TAPPING_TASK_TITLE" = "टैप करने की गति"; +"TAPPING_TASK_TITLE_RIGHT" = "दायॉं हाथ"; +"TAPPING_TASK_TITLE_LEFT" = "बायाँ हाथ"; "TAPPING_INTRO_TEXT" = "इस गतिविधि द्वारा आपकी टैप करने की गति का मापन किया जाता है।"; -"TAPPING_INTRO_TEXT_2_FORMAT" = "अपने फ़ोन को किसी समतल सतह पर रखें। %@ के लिए आपकी स्क्रीन पर दो बटन दिखाई देंगे। एक ही हाथ की दो ऊँगलियों से दोनों बटनों को जितना संभव हो सके उतनी तेज़ी से एक के बाद एक दबाएँ।"; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "अपना फ़ोन समतल सतह पर रखें।"; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "स्क्रीन पर बटनों पर एक के बाद एक टैप करने के लिए एक ही हाथ की दो उँगलियों का उपयोग करें।"; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "स्क्रीन पर बटनों पर एक के बाद एक टैप करने के लिए दाएँ हाथ की दो उँगलियों का उपयोग करें।"; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "स्क्रीन पर बटनों पर एक के बाद एक टैप करने के लिए बाएँ हाथ की दो उँगलियों का उपयोग करें।"; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "अब अपने दाएँ हाथ का उपयोग करके यही परीक्षण दोहराएँ।"; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "अब अपने बाएँ हाथ का उपयोग करके यही परीक्षण दोहराएँ।"; +"TAPPING_INTRO_TEXT_2_FORMAT" = "एक उँगली से फिर दूसरी उँगली से टैप करें। अपने टैप का समय जितना संभव हो, एक समान रखने का प्रयास करें। %@ तक टैप करते रहें।"; "TAPPING_CALL_TO_ACTION" = "आरंभ करने के लिए “आरंभ करें” पर टैप करें।"; +"TAPPING_CALL_TO_ACTION_NEXT" = "आरंभ करने के लिए “अगला” पर टैप करें।"; "TAP_BUTTON_TITLE" = "टैप करें"; "TOTAL_TAPS_LABEL" = "कुल टैप"; -"TAPPING_INSTRUCTION" = "दो ऊँगलियों से बटनों को जितना संभव हो सके उतनी तेज़ी से एक के बाद एक दबाएँ।"; - +"TAPPING_INSTRUCTION" = "बटनों को दो उँगलियों से जितना हो सके, उतने समान समयांतराल पर टैप करें।"; +"TAPPING_INSTRUCTION_RIGHT" = "अपने दाएँ हाथ से बटनों पर टैप करें।"; +"TAPPING_INSTRUCTION_LEFT" = "अपने बाएँ हाथ से बटनों पर टैप करें।"; +"TAPPING_SKIP_TITLE" = "इस हाथ को स्किप करें"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "वॉइस"; @@ -241,6 +273,9 @@ "AUDIO_INTENDED_USE" = "इस गतिविधि द्वारा आपके फ़ोन के नीचे लगे माइक्रोफ़ोन से आपकी आवाज़ को रिकॉर्ड करके उसका मूल्यांकन किया जाता है।"; "AUDIO_TOO_LOUD_LABEL" = "बहुत तेज़"; "AUDIO_GENERIC_ERROR_LABEL" = "ऑडियो रिकॉर्ड करने में असमर्थ"; +"AUDIO_LEVEL_CHECK_LABEL" = "पृष्ठभूमि नॉइज़ स्तर की जाँच होने तक कृपया प्रतीक्षा करें।"; +"AUDIO_TOO_LOUD_MESSAGE" = "आस-पास नॉइज़ का स्तर बहुत अधिक होने के कारण आपकी आवाज़ रिकॉर्ड नहीं की जा सकती। कृपया किसी शांत जगह पर जाएँ और पुनः प्रयास करें।"; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "तैयार होने पर “अगला” पर टैप करें।"; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "टोन ऑडियोमेट्री"; @@ -336,8 +371,50 @@ "HOLE_PEG_TEST_PLACE_INSTRUCTION_RIGHT_HAND" = "अपने दाएँ हाथ से पेग को छिद्र में डालें।"; "HOLE_PEG_TEST_REMOVE_INSTRUCTION_LEFT_HAND" = "अपने बाएँ हाथ से पेग को रेखा के पीछे करें।"; "HOLE_PEG_TEST_REMOVE_INSTRUCTION_RIGHT_HAND" = "अपने दाएँ हाथ से पेग को रेखा के पीछे करें।"; -"HOLE_PEG_TEST_TEXT" = "दो ऊँगलियों से पेग को उठाएँ।"; -"HOLE_PEG_TEST_TEXT_2" = "पेग को डालने के लिए ऊँगलियों को उठाएँ।"; +"HOLE_PEG_TEST_TEXT" = "दो उँगलियों से पेग को उठाएँ।"; +"HOLE_PEG_TEST_TEXT_2" = "पेग को डालने के लिए उँगलियों को उठाएँ।"; + +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "कंपन गतिविधि"; +"TREMOR_TEST_INTRO_1_DETAIL" = "इस गतिविधि से विभिन्न स्थितियों में आपके हाथों के कंपन को मापा जाता है। ऐसी जगह ढूँढें जहाँ आप इस गतिविधि की अवधि के दौरान आराम से बैठ सकें।"; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "नीचे दी गई छवि में दिखाए अनुसार फ़ोन को अपने अधिक प्रभावित हाथ में पकड़ें।"; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "नीचे दी गई छवि में दिखाए अनुसार फ़ोन को अपने दाएँ हाथ में पकड़ें।"; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "नीचे दी गई छवि में दिखाए अनुसार फ़ोन को अपने बाएँ हाथ में पकड़ें।"; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "बैठे रहकर फ़ोन को अपने हाथ में पकड़कर आपसे %@ करने के लिए कहा जाएगा।"; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "कार्य"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "दो कार्य"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "तीन कार्य"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "चार कार्य"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "पाँच कार्य"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "अागे बढ़ने के लिए “अगला” पर टैप करें।"; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "अपने फ़ोन को अपनी गोद में पकड़ें।"; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "बाएँ हाथ से अपने फ़ोन को अपनी गोद में पकड़ें।"; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "दाएँ हाथ से अपने फ़ोन को अपनी गोद में पकड़ें।"; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "अपने फ़ोन को अपनी गोद में %ld सेकंड तक पकड़े रखें।"; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "अब अपने हाथ को कंधे की ऊँचाई तक फैलाकर अपने फ़ोन को पकड़ें।"; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "अब अपने बाएँ हाथ को कंधे की ऊँचाई तक फैलाकर अपने फ़ोन को पकड़ें।"; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "अब अपने दाएँ हाथ को कंधे की ऊँचाई तक फैलाकर अपने फ़ोन को पकड़ें।"; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "हाथ फैलाकर अपने फ़ोन को %ld सेकंड तक पकड़े रखें।"; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "अब अपनी कोहनी मोड़कर अपने फ़ोन को कंधे की ऊंचाई पर पकड़ें।"; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "अब अपने बाएँ हाथ की कोहनी मोड़कर कंधे की ऊँचाई पर अपने फ़ोन को पकड़ें।"; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "अब अपने दाएँ हाथ की कोहनी मोड़कर कंधे की ऊँचाई पर अपने फ़ोन को पकड़ें।"; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "अपनी कोहनी मोड़कर अपने फ़ोन को %ld सेकंड तक पकड़े रखें"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "अब अपनी कोहनी मुड़ी हुई रखकर अपने फ़ोन को बार-बार अपनी नाक से स्पर्श करें।"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "अब अपने बाएँ हाथ में फ़ोन पकड़कर और कोहनी मुड़ी हुई रखकर अपने फ़ोन को बार-बार अपनी नाक से स्पर्श करें।"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "अब अपने दाएँ हाथ में फ़ोन पकड़कर और कोहनी मुड़ी हुई रखकर अपने फ़ोन को बार-बार अपनी नाक से स्पर्श करें।"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "अपने फ़ोन को अपनी नाक से %ld सेकंड तक स्पर्श करते रहें"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "रानी की तरह हाथ हिलाने (अपनी कलाई को मोड़कर हाथ हिलाना) की तैयारी करें।"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "अपने फ़ोन को अपने बाएँ हाथ में रखकर रानी की तरह हाथ हिलाने (अपनी कलाई को मोड़कर हाथ हिलाना) की तैयारी करें।"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "अपने फ़ोन को अपने दाएँ हाथ में रखकर रानी की तरह हाथ हिलाने (अपनी कलाई को मोड़कर हाथ हिलाना) की तैयारी करें।"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "%ld सेकंड तक रानी की तरह हाथ हिलाते रहें।"; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "अब अपने फ़ोन को अपने बाएँ हाथ में लें और अगला कार्य जारी रखें।"; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "अब अपने फ़ोन को अपने दाएँ हाथ में लें और अगला कार्य जारी रखें।"; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "अगला कार्य जारी रखें।"; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "गतिविधि पूर्ण।"; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "बैठे रहकर फ़ोन को पहले एक हाथ में फिर दूसरे हाथ में पकड़कर आपसे %@ करने के लिए कहा जाएगा।"; +"TREMOR_SKIP_LEFT_HAND" = "इस गतिविधि को मेरे बाएँ हाथ से नहीं किया जा सकता है।"; +"TREMOR_SKIP_RIGHT_HAND" = "इस गतिविधि को मेरे दाएँ हाथ से नहीं किया जा सकता है।"; +"TREMOR_SKIP_NEITHER" = "इस गतिविधि को मेरे दोनों हाथों से किया जा सकता है।"; /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "फ़ाइल नहीं बन सकी"; @@ -357,7 +434,7 @@ "AX_IMAGE_ILLUSTRATION" = "%@ का चित्रांकन"; "AX_SIGNVIEW_LABEL" = "निर्दिष्ट हस्ताक्षर फ़ील्ड"; -"AX_SIGNVIEW_HINT" = "हस्ताक्षर करने के लिए स्क्रीन को स्पर्श करें और अपनी ऊँगली हिलाएँ"; +"AX_SIGNVIEW_HINT" = "हस्ताक्षर करने के लिए स्क्रीन को स्पर्श करें और अपनी उँगली हिलाएँ"; "AX_SIGNVIEW_SIGNED" = "हस्ताक्षरित"; "AX_SIGNVIEW_UNSIGNED" = "अहस्ताक्षरित"; @@ -378,6 +455,9 @@ "AX_IMAGE_CAPTURE_LABEL" = "पूर्वावलोकन को कैप्चर करें"; "AX_IMAGE_CAPTURED_LABEL" = "कैप्चर की हुई छवि"; +"AX_VIDEO_CAPTURE_LABEL" = "वीडियो कैप्चर पूर्वावलोकन"; +"AX_VIDEO_CAPTURED_LABEL" = "कैप्चर किया गया वीडियो"; + "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "%2$@ आकार के डिस्क पर %1$@ आकार के डिस्क को रखने में असमर्थ"; "AX_TOWER_OF_HANOI_TARGET_DISK" = "लक्ष्य"; "AX_TOWER_OF_HANOI_TOWER" = "टॉवर"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "इसमें %@ आकारों के डिस्क हैं "; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "ख़ाली"; -"AX_GRAPH_RANGE_FORMAT" = "%1$@ से %2$@ तक श्रेणी"; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "%1$@ से %2$@ तक श्रेणी"; +"AX_GRAPH_STACK_PREFIX" = "निम्नलिखित का संग्रह"; "AX_GRAPH_AND_SEPARATOR" = " और "; "AX_GRAPH_POINT_%@" = "पॉइंट : %@"; diff --git a/ResearchKit/Localized/hi.lproj/locversion.plist b/ResearchKit/Localized/hi.lproj/locversion.plist index 642481bb..8b60e6ec 100644 --- a/ResearchKit/Localized/hi.lproj/locversion.plist +++ b/ResearchKit/Localized/hi.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale hi LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/hr.lproj/ResearchKit.strings b/ResearchKit/Localized/hr.lproj/ResearchKit.strings index f9bcf8a7..c0022a90 100644 --- a/ResearchKit/Localized/hr.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/hr.lproj/ResearchKit.strings @@ -141,6 +141,7 @@ "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "Dopušteni su samo numerički znakovi."; "PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "Indikator napretka unošenja šifre"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "%@ od %@ unesenih znamenki"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "Zaboravili ste šifru?"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "Nije moguće dodati stavku privjeska ključeva."; @@ -167,6 +168,11 @@ "BOOL_NO" = "Ne"; "BOOL_YES" = "Da"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "cm"; +"MEASURING_UNIT_FT" = "ft"; +"MEASURING_UNIT_IN" = "u"; + /* Default placeholders to request answers in a questionnaire. */ "PLACEHOLDER_TEXT_OR_NUMBER" = "Dodirnite za odgovaranje"; "NULL_ANSWER" = "Odaberite odgovor"; @@ -189,11 +195,15 @@ "BUTTON_OPTION_SAVE" = "Spremi za kasnije"; "BUTTON_OPTION_DISCARD" = "Odbaci rezultate"; "BUTTON_OPTION_STOP_TASK" = "Završi zadatak"; +"BUTTON_SAVE" = "Spremi"; +"BUTTON_CLEAR_ANSWER" = "Očisti odgovor"; +"BUTTON_READ_ONLY_MODE" = "Ovaj odgovor se ne može promijeniti."; /* General active tasks. */ "COUNTDOWN_LABEL" = "Započinjanje aktivnosti za"; "TASK_COMPLETE_TITLE" = "Aktivnost je dovršena"; "TASK_COMPLETE_TEXT" = "Vaši podaci će se analizirati i bit ćete obaviješteni kad rezultati budu spremni."; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "%@ s preostalo."; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "Snimi sliku"; @@ -203,6 +213,11 @@ "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "Nije naveden izlazni direktorij za snimljene slike."; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "Snimljena slika ne može se spremiti."; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "Započni snimati"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "Zaustavi snimanje"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "Ponovno snimi video"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "Kondicija"; "FITNESS_DISTANCE_TITLE_FORMAT" = "Udaljenost (%@)"; @@ -222,16 +237,33 @@ "WALK_RETURN_INSTRUCTION_FORMAT" = "Okrenite se i hodajte natrag do mjesta od kojeg ste krenuli."; "WALK_OUTBOUND_INSTRUCTION_FORMAT" = "Hodajte najviše %ld koraka u ravnoj liniji."; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "Pronađite mjesto na kojem možete sigurno hodati naprijed-natrag u ravnoj liniji. Pokušajte kontinuirano hodati tako da se okrenete na kraju putanje, kao da hodate oko čunja.\n\nZatim će se od vas zatražiti da hodate punim krugom, zatim da stojite nepomično s rukama položenim uz tijelo i stopalima razmaknutima u širini ramena."; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "Dodirnite Pokreni kad budete spremni započeti.\nZatim stavite vaš telefon u džep ili torbu i slijedite audio upute."; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "Hodajte naprijed-natrag u ravnoj liniji tijekom %@. Hodajte kao i inače."; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "Okrenite se punim krugom i zatim budite mirni %@."; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "Dovršili ste aktivnost."; /* Tapping active task. */ "TAPPING_TASK_TITLE" = "Brzina dodirivanja"; +"TAPPING_TASK_TITLE_RIGHT" = "Desna ruka"; +"TAPPING_TASK_TITLE_LEFT" = "Lijeva ruka"; "TAPPING_INTRO_TEXT" = "Ova aktivnost mjeri vašu brzinu dodirivanja."; -"TAPPING_INTRO_TEXT_2_FORMAT" = "Stavite telefon na ravnu podlogu. Na zaslonu će se prikazati dvije tipke za %@. Koristeći dva prsta iste ruke, naizmjence dodirujte tipke što brže možete."; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "Stavite telefon na ravnu podlogu."; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "Koristeći dva prsta iste ruke, naizmjence dodirujte tipke na zaslonu."; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "Koristeći dva prsta desne ruke, naizmjence dodirujte tipke na zaslonu."; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "Koristeći dva prsta lijeve ruke, naizmjence dodirujte tipke na zaslonu."; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "Sad ponovite isti test desnom rukom."; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "Sad ponovite isti test lijevom rukom."; +"TAPPING_INTRO_TEXT_2_FORMAT" = "Dodirnite jednim prstom, zatim drugim. Pokušajte tempirati dodire kako bi bili ujednačeni. Nastavite dodirivati tijekom %@."; "TAPPING_CALL_TO_ACTION" = "Dodirnite Pokreni za početak."; +"TAPPING_CALL_TO_ACTION_NEXT" = "Dodirnite Sljedeće za početak."; "TAP_BUTTON_TITLE" = "Dodirnite"; "TOTAL_TAPS_LABEL" = "Ukupan broj dodira"; -"TAPPING_INSTRUCTION" = "Dodirujte tipke što brže možete koristeći dva prsta."; - +"TAPPING_INSTRUCTION" = "Dodirujte tipke što ujednačenije možete koristeći dva prsta."; +"TAPPING_INSTRUCTION_RIGHT" = "Dodirujte tipke koristeći DESNU ruku."; +"TAPPING_INSTRUCTION_LEFT" = "Dodirujte tipke koristeći LIJEVU ruku."; +"TAPPING_SKIP_TITLE" = "Preskoči ovu ruku"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "Glas"; @@ -241,6 +273,9 @@ "AUDIO_INTENDED_USE" = "Ova aktivnost evaluira vaš glas tako što ga snima pomoću mikrofona na dnu vašeg telefona."; "AUDIO_TOO_LOUD_LABEL" = "Preglasno"; "AUDIO_GENERIC_ERROR_LABEL" = "Zvuk se ne može snimati"; +"AUDIO_LEVEL_CHECK_LABEL" = "Molimo, pričekajte da provjerimo razinu pozadinske buke."; +"AUDIO_TOO_LOUD_MESSAGE" = "Razina buke u okruženju je previsoka za snimanje vašeg glasa. Molimo, premjestite se negdje gdje je tiše i pokušajte ponovno."; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "Dodirnite Sljedeće kad budete spremni."; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "Tonalna audiometrija"; @@ -339,6 +374,48 @@ "HOLE_PEG_TEST_TEXT" = "Podignite klin s dva prsta."; "HOLE_PEG_TEST_TEXT_2" = "Podignite prste da biste ispustili klin."; +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "Aktivnost podrhtavanja"; +"TREMOR_TEST_INTRO_1_DETAIL" = "Ova aktivnost mjeri podrhtavanje vaših ruku u različitim položajima. Pronađite mjesto na kojem možete udobno sjediti tijekom trajanja ove aktivnosti."; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "Držite telefon u ruci koja vam je više zahvaćena, kako je prikazano na slici ispod."; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "Držite telefon u DESNOJ ruci kako je prikazano na slici ispod."; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "Držite telefon u LIJEVOJ ruci kako je prikazano na slici ispod."; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "Od vas će se zatražiti da napravite %@ dok sjedite s telefonom u ruci."; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "zadatak"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "dva zadatka"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "tri zadatka"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "četiri zadatka"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "pet zadataka"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "Dodirnite Sljedeće za nastavak."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "Pripremite se na držanje telefona u krilu."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "Pripremite se na držanje telefona u krilu LIJEVOM rukom."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "Pripremite se na držanje telefona u krilu DESNOM rukom."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "Nastavite držati telefon u krilu tijekom %ld s."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "Sad držite telefon s ispruženom rukom u visini ramena."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "Sad držite telefon u LIJEVOJ šaci s rukom ispruženom u visini ramena."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "Sad držite telefon u DESNOJ šaci s rukom ispruženom u visini ramena."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "Nastavite držati telefon s ispruženom rukom tijekom %ld s."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "Sad držite telefon u visini ramena sa savijenim laktom."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "Sad držite telefon LIJEVOM rukom u visini ramena sa savijenim laktom."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "Sad držite telefon DESNOM rukom u visini ramena sa savijenim laktom."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "Nastavite držati telefon sa savijenim laktom tijekom %ld s"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "Sad držite lakat savijen i neprekidno dodirujte nos telefonom."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "Sad držite lakat savijen s telefonom u LIJEVOJ ruci i neprekidno dodirujte nos telefonom."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "Sad držite lakat savijen s telefonom u DESNOJ ruci i neprekidno dodirujte nos telefonom."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "Nastavite dodirivati nos telefonom tijekom %ld s"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "Pripremite se za mahanje rotiranjem šake u zapešću (kao što maše engleska kraljica)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "Pripremite se za mahanje rotiranjem šake, s telefonom u LIJEVOJ ruci (kao što maše engleska kraljica)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "Pripremite se za mahanje rotiranjem šake, s telefonom u DESNOJ ruci (kao što maše engleska kraljica)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "Nastavite mahati rotiranjem šake tijekom %ld s."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "Sad uzmite telefon u LIJEVU ruku i nastavite na sljedeći zadatak."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "Sad uzmite telefon u DESNU ruku i nastavite na sljedeći zadatak."; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "Nastavite na sljedeći zadatak."; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "Aktivnost je dovršena."; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "Od vas će se zatražiti da napravite %@ dok sjedite s telefonom prvo u jednoj ruci, zatim ponovno u drugoj ruci."; +"TREMOR_SKIP_LEFT_HAND" = "Ne mogu obaviti ovaj zadatak LIJEVOM rukom."; +"TREMOR_SKIP_RIGHT_HAND" = "Ne mogu obaviti ovaj zadatak DESNOM rukom."; +"TREMOR_SKIP_NEITHER" = "Mogu obaviti ovaj zadatak s obje ruke."; + /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "Datoteka se ne može izraditi"; "ERROR_DATALOGGER_COULD_NOT_FREE_SPACE" = "Nije se moglo ukloniti dovoljno log datoteka za dosezanje praga"; @@ -378,6 +455,9 @@ "AX_IMAGE_CAPTURE_LABEL" = "Snimi pregled"; "AX_IMAGE_CAPTURED_LABEL" = "Snimljena slika"; +"AX_VIDEO_CAPTURE_LABEL" = "Pregled snimanja videa"; +"AX_VIDEO_CAPTURED_LABEL" = "Snimljeni video"; + "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "Pločica veličine %@ ne može se staviti na pločicu veličine %@"; "AX_TOWER_OF_HANOI_TARGET_DISK" = "Cilj"; "AX_TOWER_OF_HANOI_TOWER" = "Toranj"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "Ima pločicu veličine %@"; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "Isprazni"; -"AX_GRAPH_RANGE_FORMAT" = "Raspon od %@ do %@."; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "Raspon od %@ do %@."; +"AX_GRAPH_STACK_PREFIX" = "Stog sastavljen od"; "AX_GRAPH_AND_SEPARATOR" = " i "; "AX_GRAPH_POINT_%@" = "Točka: %@"; diff --git a/ResearchKit/Localized/hr.lproj/locversion.plist b/ResearchKit/Localized/hr.lproj/locversion.plist index 6ec5a9be..e6f0479b 100644 --- a/ResearchKit/Localized/hr.lproj/locversion.plist +++ b/ResearchKit/Localized/hr.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale hr LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/hu.lproj/ResearchKit.strings b/ResearchKit/Localized/hu.lproj/ResearchKit.strings index 41db6797..7d25ae11 100644 --- a/ResearchKit/Localized/hu.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/hu.lproj/ResearchKit.strings @@ -141,6 +141,7 @@ "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "Kizárólag számkarakterek engedélyezettek."; "PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "Jelkóddal történő belépés folyamatjelzője"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "%@/%@ számjegy megadva"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "Elfelejtette a jelkódot?"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "Nem lehetett hozzáadni a Kulcskarika-elemet."; @@ -167,6 +168,11 @@ "BOOL_NO" = "Nem"; "BOOL_YES" = "Igen"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "cm"; +"MEASURING_UNIT_FT" = "ft"; +"MEASURING_UNIT_IN" = "in"; + /* Default placeholders to request answers in a questionnaire. */ "PLACEHOLDER_TEXT_OR_NUMBER" = "Koppintson a válaszhoz"; "NULL_ANSWER" = "Válasz kiválasztása"; @@ -188,12 +194,16 @@ "BUTTON_START_TIMER" = "Időzítő indítása"; "BUTTON_OPTION_SAVE" = "Mentés későbbre"; "BUTTON_OPTION_DISCARD" = "Eredmények elvetése"; -"BUTTON_OPTION_STOP_TASK" = "Feladat vége"; +"BUTTON_OPTION_STOP_TASK" = "Feladat befejezése"; +"BUTTON_SAVE" = "Mentés"; +"BUTTON_CLEAR_ANSWER" = "Válasz törlése"; +"BUTTON_READ_ONLY_MODE" = "Ez a válasz nem módosítható."; /* General active tasks. */ "COUNTDOWN_LABEL" = "Tevékenység indítása:"; "TASK_COMPLETE_TITLE" = "Tevékenység befejezve"; "TASK_COMPLETE_TEXT" = "Az adatok ki lesznek elemezve, és értesítést fog kapni, ha az eredmény elkészült."; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "%@ másodperc van hátra."; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "Kép készítése"; @@ -203,6 +213,11 @@ "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "Az elkészített képekhez nem lett megadva kimeneti könyvtár."; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "Az elkészített képet nem sikerült menteni."; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "Felvétel indítása"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "Felvétel leállítása"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "Videó ismételt rögzítése"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "Fitnesz"; "FITNESS_DISTANCE_TITLE_FORMAT" = "Távolság (%@)"; @@ -222,16 +237,33 @@ "WALK_RETURN_INSTRUCTION_FORMAT" = "Forduljon meg, és menjen vissza a kiindulási ponthoz."; "WALK_OUTBOUND_INSTRUCTION_FORMAT" = "Tegyen meg legalább %ld lépést egyenesen."; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "Keressen egy olyan helyet, ahol egyenes vonalban tud oda-vissza gyalogolni. Próbáljon meg folyamatosan gyalogolni, és a végeken úgy forduljon meg, mintha egy útjelző bóját kerülne meg.\n\nEzután utasítást fog kapni, hogy fogduljon meg egy teljes kört megtéve, majd álljon meg, engedje le a törzse mellett karjait, és álljon vállszélességű terpeszben."; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "Koppintson a Kezdés elemre, amikor készen áll.\nEzután tegye a telefont a zsebébe vagy a táskájába, és kövesse a hangutasításokat."; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "Gyalogoljon oda-vissza egy egyenes vonal mentén ennyi ideig: %@. A szokásos tempójában gyalogoljon."; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "Forduljon meg egy teljes kör mentén, és álljon mozdulatlanul ennyi ideig: %@."; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "Befejezte a tevékenységet."; /* Tapping active task. */ "TAPPING_TASK_TITLE" = "Koppintási sebesség"; +"TAPPING_TASK_TITLE_RIGHT" = "Jobb kéz"; +"TAPPING_TASK_TITLE_LEFT" = "Bal kéz"; "TAPPING_INTRO_TEXT" = "Ez a tevékenység megméri a koppintási sebességét."; -"TAPPING_INTRO_TEXT_2_FORMAT" = "Helyezze a telefont egy sima felületre. Két gomb jelenik meg a képernyőn a következőhöz: %@. Egy kezének két ujjával felváltva koppintson a megjelenő gombokra olyan gyorsan, ahogy csak tud."; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "Tegye a telefont egy vízszintes felületre."; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "Ugyanannak a kezének két ujjával felváltva koppintson a gombokra a kijelzőn."; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "A jobb kezének két ujjával felváltva koppintson a gombokra a kijelzőn."; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "A bal kezének két ujjával felváltva koppintson a gombokra a kijelzőn."; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "Most ismételje meg ugyanezt a tesztet jobb kézzel."; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "Most ismételje meg ugyanezt a tesztet bal kézzel."; +"TAPPING_INTRO_TEXT_2_FORMAT" = "Koppintson az egyik, majd a másik ujjával. Próbáljon meg egyenletes időközönként koppintani. Folytassa a koppintásokat ennyi ideig: %@."; "TAPPING_CALL_TO_ACTION" = "A kezdéshez koppintson a Kezdés elemre."; +"TAPPING_CALL_TO_ACTION_NEXT" = "Koppintson\na Következő elemre\na kezdéshez."; "TAP_BUTTON_TITLE" = "Koppintás"; "TOTAL_TAPS_LABEL" = "Összes koppintás"; -"TAPPING_INSTRUCTION" = "Két ujjal koppintson a gombokra olyan gyorsan, ahogy csak tud."; - +"TAPPING_INSTRUCTION" = "Két ujjal koppintson a gombokra olyan egyenletesen, ahogy csak tud."; +"TAPPING_INSTRUCTION_RIGHT" = "Koppintson a gombokra JOBB kézzel."; +"TAPPING_INSTRUCTION_LEFT" = "Koppintson a gombokra BAL kézzel."; +"TAPPING_SKIP_TITLE" = "Kéz kihagyása"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "Hang"; @@ -241,6 +273,9 @@ "AUDIO_INTENDED_USE" = "Ez a tevékenység kiértékeli a hangját, rögzítve, ahogy a telefon alján lévő mikrofonba beszél."; "AUDIO_TOO_LOUD_LABEL" = "Túl hangos"; "AUDIO_GENERIC_ERROR_LABEL" = "Nem sikerült hangot felvenni"; +"AUDIO_LEVEL_CHECK_LABEL" = "Kérjük, várjon, amíg ellenőrizzük a háttérzaj szintjét."; +"AUDIO_TOO_LOUD_MESSAGE" = "A környezeti zaj szinte túl magas a hangja felvételéhez. Kérjük, menjen csendesebb helyre, és próbálkozzon újra."; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "Koppintson a Következő elemre, amikor készen áll."; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "Hangaudiometria"; @@ -296,7 +331,7 @@ "TIMED_WALK_TITLE" = "Időre mért gyaloglás"; "TIMED_WALK_INTRO_DETAIL" = "Ez a tevékenység az alsó végtagok működését méri."; "TIMED_WALK_INTRO_2_TEXT_%@" = "Keressen olyan helyet, lehetőleg kültéren, ahol %@ ideig egyenesen tud gyalogolni olyan gyorsan, ahogy csak tud, de biztonságosan. Ne lassítson le, amíg el nem hagyta a célvonalat."; -"TIMED_WALK_INTRO_2_DETAIL" = "Koppintson\na Tovább elemre\na kezdéshez."; +"TIMED_WALK_INTRO_2_DETAIL" = "Koppintson\na Következő elemre\na kezdéshez."; "TIMED_WALK_FORM_TITLE" = "Segítőeszköz"; "TIMED_WALK_FORM_TEXT" = "Ugyanazt a segítőeszközt használja minden teszthez."; "TIMED_WALK_QUESTION_TEXT" = "Használ boka-járáskönnyítőt?"; @@ -321,7 +356,7 @@ "PAVSAT_INTRO_TEXT" = "Az Ütemes hallási és vizuális sorozatösszeadási teszt a hallási és vizuális információfeldolgozási sebességet és számítási képességet méri."; "PSAT_INTRO_TEXT_2_%@" = "%@ másodpercenként számjegyek jelennek meg.\nMinden új számjegyet adjon hozzá az előtte lévőhöz.\nFigyelem: Ne számítsa ki a teljes sorozat összegét, csak az utolsó két számjegy összegét."; "PSAT_CALL_TO_ACTION" = "A kezdéshez koppintson a Kezdés elemre."; -"PSAT_INITIAL_INSTRUCTION" = "Jegyezze meg ezt az első számkegyet."; +"PSAT_INITIAL_INSTRUCTION" = "Jegyezze meg ezt az első számjegyet."; "PSAT_INSTRUCTION" = "Adja hozzá ezt az új számjegyet az előzőhöz."; "PSAT_NO_DIGIT" = "-"; @@ -339,6 +374,48 @@ "HOLE_PEG_TEST_TEXT" = "Fogja meg a kört két ujjal."; "HOLE_PEG_TEST_TEXT_2" = "Emelje fel az ujjait a kör elhelyezéséhez."; +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "Remegési tevékenység"; +"TREMOR_TEST_INTRO_1_DETAIL" = "Ez a tevékenység a keze remegését méri különböző helyzetekben. Keressen egy olyan helyet, ahol kényelmesen le tud ülni a tevékenység idejére."; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "Tartsa a telefont a gyakrabban használt kezében, a képen látható módon."; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "Tartsa a telefont a JOBB kezében, a képen látható módon."; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "Tartsa a telefont a BAL kezében, a képen látható módon."; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "A rendszer fel fogja kérni a(z) %@ végrehajtására, miközben ül a telefonnal a kezében."; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "egy feladat"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "két feladat"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "három feladat"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "négy feladat"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "öt feladat"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "Koppintson a Következő elemre a folytatáshoz."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "Készüljön fel arra, hogy a telefont az ölében tartsa."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "Készüljön fel arra, hogy a telefont a BAL kezével az ölében tartsa."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "Készüljön fel arra, hogy a telefont a JOBB kezével az ölében tartsa."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "Tartsa az ölében a telefont %ld másodpercig."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "Most tartsa a telefont kinyújtott karral vállmagasságban."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "Most tartsa a telefont kinyújtott karral, BAL kézzel vállmagasságban."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "Most tartsa a telefont kinyújtott karral, JOBB kézzel vállmagasságban."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "Tartsa a telefont kinyújtott karral %ld másodpercig."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "Most tartsa a telefont behajlított könyökkel vállmagasságban."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "Most tartsa a telefont behajlított könyökkel, BAL kézzel vállmagasságban."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "Most tartsa a telefont behajlított könyökkel, JOBB kézzel vállmagasságban."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "Tartsa a telefont behajlított könyökkel %ld másodpercig."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "Most a könyökét behajlítva érintse többször az orrához a telefont."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "Most tartsa a telefont BAL kézzel, a könyökét behajlítva, és érintse többször az orrához a telefont."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "Most tartsa a telefont JOBB kézzel, a könyökét behajlítva, és érintse többször az orrához a telefont."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "Érintse a telefont az orrához %ld másodpercig."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "Forgassa a felemelt csuklóját (mintha integetne)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "Forgassa a felemelt BAL csuklóját a telefonnal a kezében (mintha integetne)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "Forgassa a felemelt JOBB csuklóját a telefonnal a kezében (mintha integetne)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "Forgassa a felemelt csuklóját %ld másodpercig."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "Most tegye át a telefont a BAL kezébe, és folytassa a következő feladattal."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "Most tegye át a telefont a JOBB kezébe, és folytassa a következő feladattal."; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "Folytatás a következő feladattal."; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "Tevékenység befejezve."; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "A rendszer fel fogja kérni a(z) %@ végrehajtására, miközben ül a telefonnal az egyik kezében, majd a másik kezében."; +"TREMOR_SKIP_LEFT_HAND" = "A BAL kezemmel nem tudom elvégezni ezt a feladatot."; +"TREMOR_SKIP_RIGHT_HAND" = "A JOBB kezemmel nem tudom elvégezni ezt a feladatot."; +"TREMOR_SKIP_NEITHER" = "Mindkét kézzel el tudom végezni ezt a feladatot."; + /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "A fájl nem hozható létre"; "ERROR_DATALOGGER_COULD_NOT_FREE_SPACE" = "Nem sikerült elég naplófájlt eltávolítani a küszöb eléréséhez"; @@ -378,6 +455,9 @@ "AX_IMAGE_CAPTURE_LABEL" = "Előnézet rögzítése"; "AX_IMAGE_CAPTURED_LABEL" = "Készített kép"; +"AX_VIDEO_CAPTURE_LABEL" = "Videorögzítés előnézete"; +"AX_VIDEO_CAPTURED_LABEL" = "Rögzített videó"; + "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "Nem helyezhető %@ méretű korong %@ méretű korongra"; "AX_TOWER_OF_HANOI_TARGET_DISK" = "Cél"; "AX_TOWER_OF_HANOI_TOWER" = "Torony"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "A következő méretű korongokat tárolja: %@"; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "Üres"; -"AX_GRAPH_RANGE_FORMAT" = "Tartomány ettől: %@ eddig: %@"; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "Tartomány ettől: %@ eddig: %@"; +"AX_GRAPH_STACK_PREFIX" = "Halom a következőkből:"; "AX_GRAPH_AND_SEPARATOR" = " és "; "AX_GRAPH_POINT_%@" = "Pont: %@"; diff --git a/ResearchKit/Localized/hu.lproj/locversion.plist b/ResearchKit/Localized/hu.lproj/locversion.plist index 6670f15a..d51d72eb 100644 --- a/ResearchKit/Localized/hu.lproj/locversion.plist +++ b/ResearchKit/Localized/hu.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale hu LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/id.lproj/ResearchKit.strings b/ResearchKit/Localized/id.lproj/ResearchKit.strings index 65caf897..3a2cce1d 100644 --- a/ResearchKit/Localized/id.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/id.lproj/ResearchKit.strings @@ -141,6 +141,7 @@ "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "Hanya karakter numerik yang diizinkan."; "PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "Indikator kemajuan entri kode sandi"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "%@ dari %@ digit dimasukkan"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "Lupa Kode Sandi?"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "Tidak dapat menambah item Rantai Kunci."; @@ -167,6 +168,11 @@ "BOOL_NO" = "Tidak"; "BOOL_YES" = "Ya"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "cm"; +"MEASURING_UNIT_FT" = "kaki"; +"MEASURING_UNIT_IN" = "inci"; + /* Default placeholders to request answers in a questionnaire. */ "PLACEHOLDER_TEXT_OR_NUMBER" = "Ketuk untuk menjawab"; "NULL_ANSWER" = "Pilih jawaban"; @@ -189,11 +195,15 @@ "BUTTON_OPTION_SAVE" = "Simpan untuk Nanti"; "BUTTON_OPTION_DISCARD" = "Hapus Hasil"; "BUTTON_OPTION_STOP_TASK" = "Akhiri Tugas"; +"BUTTON_SAVE" = "Simpan"; +"BUTTON_CLEAR_ANSWER" = "Bersihkan jawaban"; +"BUTTON_READ_ONLY_MODE" = "Jawaban ini tidak dapat dimodifikasi."; /* General active tasks. */ "COUNTDOWN_LABEL" = "Memulai aktivitas dalam"; "TASK_COMPLETE_TITLE" = "Aktivitas Selesai"; "TASK_COMPLETE_TEXT" = "Data Anda akan dianalisis dan Anda akan diberi tahu setelah hasil Anda siap."; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "Tersisa %@ detik."; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "Ambil Gambar"; @@ -203,6 +213,11 @@ "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "Tidak ada direktori output yang ditentukan untuk gambar yang diambil."; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "Gambar yang diambil tidak dapat disimpan."; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "Mulai Merekam"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "Berhenti Merekam"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "Ambil Ulang Video"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "Kebugaran"; "FITNESS_DISTANCE_TITLE_FORMAT" = "Jarak (%@)"; @@ -222,16 +237,33 @@ "WALK_RETURN_INSTRUCTION_FORMAT" = "Putar balik, dan kembali ke tempat Anda memulai."; "WALK_OUTBOUND_INSTRUCTION_FORMAT" = "Berjalan kaki hingga %ld langkah dalam garis lurus."; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "Cari tempat untuk dapat berjalan bolak-balik di jalur lurus dengan aman. Coba terus berjalan dengan berbelok di akhir jalur Anda, seolah-olah berjalan mengitari kerucut.\n\nSelanjutnya Anda akan diinstruksikan untuk berputar dalam lingkaran penuh, lalu tetap berdiri dengan lengan berada di samping dan kaki terbuka selebar bahu."; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "Ketuk Mulai saat Anda siap untuk memulai.\nLalu letakkan telepon Anda di saku atau tas dan ikuti instruksi audio."; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "Jalan bolak-balik di jalur lurus selama %@. Jalan dengan normal."; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "Berputar dalam lingkaran penuh lalu tetap berdiri selama %@."; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "Anda telah menyelesaikan aktivitas."; /* Tapping active task. */ "TAPPING_TASK_TITLE" = "Kecepatan Mengetuk"; +"TAPPING_TASK_TITLE_RIGHT" = "Tangan Kanan"; +"TAPPING_TASK_TITLE_LEFT" = "Tangan Kiri"; "TAPPING_INTRO_TEXT" = "Aktivitas ini mengukur kecepatan mengetuk Anda."; -"TAPPING_INTRO_TEXT_2_FORMAT" = "Letakkan telepon Anda di permukaan rata. Dua tombol akan muncul di layar Anda selama %@. Dengan menggunakan dua jari di tangan yang sama, ketuk tombol secara bergantian secepat Anda bisa."; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "Letakkan telepon Anda di permukaan datar."; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "Gunakan dua jari pada tangan yang sama untuk mengetuk tombol di layar secara bergantian."; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "Gunakan dua jari pada tangan kanan Anda untuk mengetuk tombol di layar secara bergantian."; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "Gunakan dua jari pada tangan kiri Anda untuk mengetuk tombol di layar secara bergantian."; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "Sekarang ulangi tes yang sama menggunakan tangan kanan."; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "Sekarang ulangi tes yang sama menggunakan tangan kiri."; +"TAPPING_INTRO_TEXT_2_FORMAT" = "Ketuk dengan satu jari, lalu jari lainnya. Sebisa mungkin, coba atur ketukan Anda agar seimbang. Terus mengetuk selama %@."; "TAPPING_CALL_TO_ACTION" = "Ketuk Mulai untuk memulai."; +"TAPPING_CALL_TO_ACTION_NEXT" = "Ketuk Berikutnya untuk memulai."; "TAP_BUTTON_TITLE" = "Ketuk"; "TOTAL_TAPS_LABEL" = "Total Ketukan"; -"TAPPING_INSTRUCTION" = "Ketuk tombol secepat Anda bisa menggunakan dua jari."; - +"TAPPING_INSTRUCTION" = "Ketuk tombol sekonsisten mungkin menggunakan dua jari."; +"TAPPING_INSTRUCTION_RIGHT" = "Ketuk tombol menggunakan tangan KANAN Anda."; +"TAPPING_INSTRUCTION_LEFT" = "Ketuk tombol menggunakan tangan KIRI Anda."; +"TAPPING_SKIP_TITLE" = "Lewati tangan Ini"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "Suara"; @@ -241,6 +273,9 @@ "AUDIO_INTENDED_USE" = "Tes ini mengevaluasi suara Anda dengan merekamnya saat Anda berbicara melalui mikrofon di bagian bawah telepon Anda."; "AUDIO_TOO_LOUD_LABEL" = "Terlalu Keras"; "AUDIO_GENERIC_ERROR_LABEL" = "Tidak dapat merekam audio"; +"AUDIO_LEVEL_CHECK_LABEL" = "Harap tunggu saat kami memeriksa level kebisingan latar belakang."; +"AUDIO_TOO_LOUD_MESSAGE" = "Level kebisingan di sekitar terlalu kencang untuk merekam suara Anda. Pindah ke tempat lain yang lebih hening dan coba lagi."; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "Ketuk Berikutnya saat sudah siap."; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "Audiometri Nada"; @@ -339,6 +374,48 @@ "HOLE_PEG_TEST_TEXT" = "Ambil sumbat dengan dua jari."; "HOLE_PEG_TEST_TEXT_2" = "Angkat jari untuk menjatuhkan sumbat."; +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "Aktivitas Tremor"; +"TREMOR_TEST_INTRO_1_DETAIL" = "Aktivitas ini mengukur tremor tangan Anda dalam berbagai posisi. Cari tempat yang dapat Anda gunakan untuk duduk dengan nyaman selama durasi aktivitas ini."; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "Genggam telepon di tangan yang terkena dampak lebih besar seperti yang ditampilkan dalam gambar di bawah."; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "Genggam telepon Anda di tangan KANAN seperti yang ditampilkan dalam gambar di bawah."; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "Genggam telepon Anda di tangan KIRI seperti yang ditampilkan dalam gambar di bawah."; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "Anda akan diminta untuk melakukan %@ saat duduk dengan telepon di tangan Anda."; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "sebuah tugas"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "dua tugas"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "tiga tugas"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "empat tugas"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "lima tugas"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "Ketuk berikutnya untuk melanjutkan."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "Bersiap untuk menggenggam telepon di pangkuan."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "Bersiap untuk menggenggam telepon di pangkuan dengan tangan KIRI."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "Bersiap untuk menggenggam telepon di pangkuan dengan tangan KANAN."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "Terus genggam telepon Anda di pangkuan selama %ld detik."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "Sekarang genggam telepon Anda dengan tangan terentang setinggi bahu."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "Sekarang genggam telepon Anda dengan tangan KIRI terentang setinggi bahu."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "Sekarang genggam telepon Anda dengan tangan KANAN terentang setinggi bahu."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "Terus genggam telepon Anda dengan tangan terentang selama %ld detik."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "Sekarang genggam telepon Anda setinggi bahu dengan siku ditekuk."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "Sekarang genggam telepon Anda dengan tangan KIRI setinggi bahu dengan siku ditekuk."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "Sekarang genggam telepon Anda dengan tangan KANAN setinggi bahu dengan siku ditekuk."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "Terus genggam telepon dengan siku ditekuk selama %ld detik"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "Sekarang siku tetap ditekuk, sentuhkan telepon ke hidung Anda berulang kali."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "Sekarang siku tetap ditekuk dengan telepon di tangan KIRI, sentuhkan telepon ke hidung Anda berulang kali."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "Sekarang siku tetap ditekuk dengan telepon di tangan KANAN, sentuhkan telepon ke hidung Anda berulang kali."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "Terus sentuhkan telepon ke hidung Anda selama %ld detik"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "Bersiap untuk melakukan lambaian tangan ratu (melambai dengan memutar pergelangan tangan)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "Bersiap untuk melakukan lambaian tangan ratu dengan telepon di tangan KIRI Anda (melambai dengan memutar pergelangan tangan)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "Bersiap untuk melakukan lambaian tangan ratu dengan telepon di tangan KANAN Anda (melambai dengan memutar pergelangan tangan)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "Terus lakukan lambaian tangan ratu selama %ld detik."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "Sekarang pindahkan telepon ke tangan KIRI dan lanjutkan ke tugas berikutnya."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "Sekarang pindahkan telepon ke tangan KANAN dan lanjutkan ke tugas berikutnya."; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "Lanjutkan ke tugas berikutnya."; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "Aktivitas selesai."; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "Anda akan diminta untuk melakukan %@ saat duduk dengan telepon di satu tangan lebih dahulu, lalu melakukan lagi dengan tangan lainnya."; +"TREMOR_SKIP_LEFT_HAND" = "Saya tidak dapat melakukan aktivitas ini dengan tangan KIRI."; +"TREMOR_SKIP_RIGHT_HAND" = "Saya tidak dapat melakukan aktivitas ini dengan tangan KANAN."; +"TREMOR_SKIP_NEITHER" = "Saya dapat melakukan aktivitas ini dengan kedua tangan."; + /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "Tidak dapat membuat file"; "ERROR_DATALOGGER_COULD_NOT_FREE_SPACE" = "Tidak dapat menghapus cukup file log untuk mencapai ambang"; @@ -378,6 +455,9 @@ "AX_IMAGE_CAPTURE_LABEL" = "Pratinjau gambar"; "AX_IMAGE_CAPTURED_LABEL" = "Gambar terambil"; +"AX_VIDEO_CAPTURE_LABEL" = "Pratinjau pengambilan video"; +"AX_VIDEO_CAPTURED_LABEL" = "Video terambil"; + "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "Tidak dapat meletakkan disk dengan ukuran %@ pada disk dengan ukuran %@"; "AX_TOWER_OF_HANOI_TARGET_DISK" = "Target"; "AX_TOWER_OF_HANOI_TOWER" = "Menara"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "Memiliki disk dengan ukuran %@"; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "Kosong"; -"AX_GRAPH_RANGE_FORMAT" = "Berkisar dari %@ hingga %@"; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "Berkisar dari %@ hingga %@"; +"AX_GRAPH_STACK_PREFIX" = "Tumpukan terdiri dari"; "AX_GRAPH_AND_SEPARATOR" = " dan "; "AX_GRAPH_POINT_%@" = "Poin: %@"; diff --git a/ResearchKit/Localized/id.lproj/locversion.plist b/ResearchKit/Localized/id.lproj/locversion.plist index 273df5fb..d7a8ab65 100644 --- a/ResearchKit/Localized/id.lproj/locversion.plist +++ b/ResearchKit/Localized/id.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale id LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/it.lproj/ResearchKit.strings b/ResearchKit/Localized/it.lproj/ResearchKit.strings index df2e2628..ec7070b5 100644 --- a/ResearchKit/Localized/it.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/it.lproj/ResearchKit.strings @@ -141,6 +141,7 @@ "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "Sono consentiti solo caratteri numerici."; "PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "Indicatore progresso inserimento codice"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "%@ di %@ cifre inserite"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "Hai dimenticato il codice?"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "Impossibile aggiungere l'elemento del portachiavi."; @@ -167,6 +168,11 @@ "BOOL_NO" = "No"; "BOOL_YES" = "Sì"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "cm"; +"MEASURING_UNIT_FT" = "piedi"; +"MEASURING_UNIT_IN" = "pollici"; + /* Default placeholders to request answers in a questionnaire. */ "PLACEHOLDER_TEXT_OR_NUMBER" = "Tocca per rispondere"; "NULL_ANSWER" = "Seleziona una risposta"; @@ -189,11 +195,15 @@ "BUTTON_OPTION_SAVE" = "Salva e continua in seguito"; "BUTTON_OPTION_DISCARD" = "Ignora i risultati"; "BUTTON_OPTION_STOP_TASK" = "Fine attività"; +"BUTTON_SAVE" = "Salva"; +"BUTTON_CLEAR_ANSWER" = "Cancella risposta"; +"BUTTON_READ_ONLY_MODE" = "La risposta non può essere modificata."; /* General active tasks. */ "COUNTDOWN_LABEL" = "Inizio attività tra"; -"TASK_COMPLETE_TITLE" = "Attività completa"; +"TASK_COMPLETE_TITLE" = "Attività completata"; "TASK_COMPLETE_TEXT" = "I dati verranno analizzati, riceverai una notifica quando i risultati saranno pronti."; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "%@ secondi rimanenti."; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "Scatta foto"; @@ -203,6 +213,11 @@ "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "Non è stata specificata nessuna directory di output per le immagini acquisite."; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "L'immagine acquisita non può essere salvata."; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "Avvia registrazione"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "Interrompi registrazione"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "Riacquisisci video"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "Forma fisica"; "FITNESS_DISTANCE_TITLE_FORMAT" = "Distanza (%@)"; @@ -222,16 +237,33 @@ "WALK_RETURN_INSTRUCTION_FORMAT" = "Girati e torna verso il punto in cui hai cominciato a camminare."; "WALK_OUTBOUND_INSTRUCTION_FORMAT" = "Fai fino a %ld passi in linea retta."; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "Trova un luogo dove puoi camminare in sicurezza avanti e indietro in linea retta. Cerca di camminare senza interruzione girandoti alla fine del percorso come se camminassi attorno a un cono.\n\nSuccessivamente ti verrà chiesto di girare in un cerchio completo, quindi di fermarti con le braccia lungo il corpo e i piedi circa alla larghezza delle spalle."; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "Tocca Inizia quando sei pronto a cominciare.\nQuindi posiziona il telefono in tasca o in borsa e segui le istruzioni audio."; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "Cammina avanti e indietro in linea retta per %@. Cammina come faresti normalmente."; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "Gira in un cerchio completo, quindi fermati per %@."; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "Hai completato l'attività."; /* Tapping active task. */ "TAPPING_TASK_TITLE" = "Velocità tocco"; +"TAPPING_TASK_TITLE_RIGHT" = "Mano destra"; +"TAPPING_TASK_TITLE_LEFT" = "Mano sinistra"; "TAPPING_INTRO_TEXT" = "L'attività misura la velocità dei tocchi che esegui."; -"TAPPING_INTRO_TEXT_2_FORMAT" = "Appoggia iPhone su una superficie piatta. Vedrai comparire due pulsanti per %@. Toccali in modo alternato il più velocemente possibile con due dita della stessa mano."; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "Posiziona il telefono su una superficie piana."; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "Utilizza due dita della stessa mano per toccare alternativamente i pulsanti sullo schermo."; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "Utilizza due dita della mano destra per toccare alternativamente i pulsanti sullo schermo."; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "Utilizza due dita della mano sinistra per toccare alternativamente i pulsanti sullo schermo."; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "Ora ripeti lo stesso test con la mano destra."; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "Ora ripeti lo stesso test con la mano sinistra."; +"TAPPING_INTRO_TEXT_2_FORMAT" = "Tocca con un dito, quindi con l'altro. Cerca di effettuare i tocchi con un ritmo più regolare possibile. Continua a toccare per %@."; "TAPPING_CALL_TO_ACTION" = "Tocca Inizia per cominciare."; +"TAPPING_CALL_TO_ACTION_NEXT" = "Tocca Avanti per iniziare."; "TAP_BUTTON_TITLE" = "Tocca"; "TOTAL_TAPS_LABEL" = "Totale tocchi"; -"TAPPING_INSTRUCTION" = "Tocca i pulsanti il più velocemente possibile usando due dita."; - +"TAPPING_INSTRUCTION" = "Tocca i pulsanti il più regolarmente possibile usando due dita."; +"TAPPING_INSTRUCTION_RIGHT" = "Tocca i pulsanti usando la mano DESTRA."; +"TAPPING_INSTRUCTION_LEFT" = "Tocca i pulsanti usando la mano SINISTRA."; +"TAPPING_SKIP_TITLE" = "Salta la mano"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "Voce"; @@ -241,6 +273,9 @@ "AUDIO_INTENDED_USE" = "L'attività valuta la tua voce registrandola tramite il microfono di iPhone."; "AUDIO_TOO_LOUD_LABEL" = "Volume troppo alto"; "AUDIO_GENERIC_ERROR_LABEL" = "Impossibile registrare l'audio"; +"AUDIO_LEVEL_CHECK_LABEL" = "Attendi la verifica del livello di rumore di sottofondo."; +"AUDIO_TOO_LOUD_MESSAGE" = "Il livello di rumore ambientale è troppo alto per registrare la tua voce. Spostati in un luogo più silenzioso e riprova."; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "Tocca Avanti quando sei pronto."; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "Audiometria tonale"; @@ -339,6 +374,48 @@ "HOLE_PEG_TEST_TEXT" = "Seleziona l'icona colorata utilizzando due dita."; "HOLE_PEG_TEST_TEXT_2" = "Solleva le dita per rilasciare l'icona colorata."; +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "Attività tremore"; +"TREMOR_TEST_INTRO_1_DETAIL" = "L'attività misura il tremore delle mani in varie posizioni. Trova un luogo dove puoi sederti comodamente per la durata dell'attività."; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "Tieni il telefono nella mano maggiormente interessata come mostrato nell'immagine sotto."; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "Tieni il telefono nella mano DESTRA come mostrato nell'immagine sotto."; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "Tieni il telefono nella mano SINISTRA come mostrato nell'immagine sotto."; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "Ti verrà richiesto di eseguire %@ mentre stai seduto con il telefono in mano."; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "un'attività"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "due attività"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "tre attività"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "quattro attività"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "cinque attività"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "Tocca Avanti per procedere."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "Preparati a tenere il telefono in grembo."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "Preparati a tenere il telefono in grembo con la mano SINISTRA."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "Preparati a tenere il telefono in grembo con la mano DESTRA."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "Continua a tenere il telefono in grembo per %ld secondi."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "Ora tieni il telefono con la mano distesa all'altezza della spalla."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "Ora tieni il telefono con la mano SINISTRA distesa all'altezza della spalla."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "Ora tieni il telefono con la mano DESTRA distesa all'altezza della spalla."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "Continua a tenere il telefono con la mano distesa per %ld secondi."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "Ora tieni il telefono all'altezza della spalla con il gomito piegato."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "Ora tieni il telefono con la mano SINISTRA all'altezza della spalla con il gomito piegato."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "Ora tieni il telefono con la mano DESTRA all'altezza della spalla con il gomito piegato."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "Continua a tenere il telefono con il gomito piegato per %ld secondi"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "Ora, tenendo il gomito piegato, tocca ripetutamente il telefono sul naso."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "Ora, tenendo il gomito piegato con il telefono nella mano SINISTRA, tocca ripetutamente il telefono sul naso."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "Ora, tenendo il gomito piegato con il telefono nella mano DESTRA, tocca ripetutamente il telefono sul naso."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "Continua a toccare il telefono sul naso per %ld secondi"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "Preparati a ruotare ripetutamente il polso a destra e a sinistra."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "Preparati a ruotare ripetutamente il polso a destra e a sinistra con la mano SINISTRA."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "Preparati a ruotare ripetutamente il polso a destra e a sinistra con la mano DESTRA."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "Continua a ruotare il polso a destra e a sinistra per %ld secondi."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "Ora passa il telefono alla mano SINISTRA e continua con l'attività successiva."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "Ora passa il telefono alla mano DESTRA e continua con l'attività successiva."; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "Continua con l'attività successiva."; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "Attività completata."; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "Ti verrà richiesto di eseguire %@ mentre stai seduto con il telefono prima in una mano, poi di nuovo nell'altra."; +"TREMOR_SKIP_LEFT_HAND" = "Non posso eseguire l'attività con la mano SINISTRA."; +"TREMOR_SKIP_RIGHT_HAND" = "Non posso eseguire l'attività con la mano DESTRA."; +"TREMOR_SKIP_NEITHER" = "Posso eseguire l'attività con entrambe le mani."; + /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "Impossibile creare file"; "ERROR_DATALOGGER_COULD_NOT_FREE_SPACE" = "Impossibile rimuovere file di log sufficienti per raggiungere la soglia"; @@ -378,6 +455,9 @@ "AX_IMAGE_CAPTURE_LABEL" = "Anteprima immagine"; "AX_IMAGE_CAPTURED_LABEL" = "Immagine scattata"; +"AX_VIDEO_CAPTURE_LABEL" = "Anteprima acquisizione video"; +"AX_VIDEO_CAPTURED_LABEL" = "Video acquisito"; + "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "Impossibile posizionare il disco di dimensione %@ sul disco di dimensione %@"; "AX_TOWER_OF_HANOI_TARGET_DISK" = "Destinazione"; "AX_TOWER_OF_HANOI_TOWER" = "Torre"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "Dimensioni dischi: %@"; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "Vuota"; -"AX_GRAPH_RANGE_FORMAT" = "Intervallo da %@ a %@"; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "Intervallo da %@ a %@"; +"AX_GRAPH_STACK_PREFIX" = "Pila composta da"; "AX_GRAPH_AND_SEPARATOR" = " e "; "AX_GRAPH_POINT_%@" = "Punto: %@"; diff --git a/ResearchKit/Localized/it.lproj/locversion.plist b/ResearchKit/Localized/it.lproj/locversion.plist index 0716a7ff..bd8f3a6e 100644 --- a/ResearchKit/Localized/it.lproj/locversion.plist +++ b/ResearchKit/Localized/it.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale it LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/ja.lproj/ResearchKit.strings b/ResearchKit/Localized/ja.lproj/ResearchKit.strings index 87b63c57..cdd6ad5a 100644 --- a/ResearchKit/Localized/ja.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/ja.lproj/ResearchKit.strings @@ -102,7 +102,7 @@ /* Registration step */ "EMAIL_FORM_ITEM_TITLE" = "メール"; -"EMAIL_FORM_ITEM_PLACEHOLDER" = "jappleseed@example.com"; +"EMAIL_FORM_ITEM_PLACEHOLDER" = "hiro_sato@example.com"; "PASSWORD_FORM_ITEM_TITLE" = "パスワード"; "PASSWORD_FORM_ITEM_PLACEHOLDER" = "パスワードを入力"; "CONFIRM_PASSWORD_FORM_ITEM_TITLE" = "確認"; @@ -141,6 +141,7 @@ "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "入力できるのは数字のみです。"; "PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "パスコード入力の進行状況インジケータ"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "%@/%@桁を入力しました"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "パスコードをお忘れですか?"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "キーチェーン項目を追加できませんでした。"; @@ -167,6 +168,11 @@ "BOOL_NO" = "いいえ"; "BOOL_YES" = "はい"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "cm"; +"MEASURING_UNIT_FT" = "ft"; +"MEASURING_UNIT_IN" = "in"; + /* Default placeholders to request answers in a questionnaire. */ "PLACEHOLDER_TEXT_OR_NUMBER" = "タップで回答"; "NULL_ANSWER" = "答えを選択してください"; @@ -189,11 +195,15 @@ "BUTTON_OPTION_SAVE" = "後で使用するために保存"; "BUTTON_OPTION_DISCARD" = "結果を破棄"; "BUTTON_OPTION_STOP_TASK" = "タスクを終了"; +"BUTTON_SAVE" = "保存"; +"BUTTON_CLEAR_ANSWER" = "答えを消去"; +"BUTTON_READ_ONLY_MODE" = "この答えは変更できません。"; /* General active tasks. */ "COUNTDOWN_LABEL" = "アクティビティ開始まで"; "TASK_COMPLETE_TITLE" = "アクティビティ完了"; "TASK_COMPLETE_TEXT" = "データは分析され、結果の準備ができると通知されます。"; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "残り%@秒です。"; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "イメージを取り込む"; @@ -203,6 +213,11 @@ "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "取り込んだイメージの出力ディレクトリが指定されていません。"; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "取り込んだイメージを保存できませんでした。"; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "録画を開始"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "録画を停止"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "再度ビデオを取り込む"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "体力"; "FITNESS_DISTANCE_TITLE_FORMAT" = "距離(%@)"; @@ -222,16 +237,33 @@ "WALK_RETURN_INSTRUCTION_FORMAT" = "後ろを向いて、元の場所まで歩いて戻ってください。"; "WALK_OUTBOUND_INSTRUCTION_FORMAT" = "まっすぐに%ld歩まで歩いてください。"; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "安全にまっすぐ行ったり来たり歩ける場所を見つけてください。進路の終わりまで来たら、コーンを回るように折り返して歩き続けます。\n\n次に、完全な円を描いて回るように指示されます。その後、両腕を脇につけ、足を肩幅くらいに開いてじっと立ってください。"; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "開始の準備ができたら、“開始”をタップしてください。\n次に、電話をポケットまたはバッグに入れて、音声による指示に従ってください。"; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "まっすぐ行ったり来たりして%@間歩きます。いつもと同じように歩いてください。"; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "完全な円を描いて歩いてから、%@間じっと立ってください。"; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "アクティビティが完了しました。"; /* Tapping active task. */ "TAPPING_TASK_TITLE" = "タップの速度"; +"TAPPING_TASK_TITLE_RIGHT" = "右手"; +"TAPPING_TASK_TITLE_LEFT" = "左手"; "TAPPING_INTRO_TEXT" = "このアクティビティでは、タップの速度を測定します。"; -"TAPPING_INTRO_TEXT_2_FORMAT" = "電話を平らな場所に置いてください。画面に2つのボタンが%@間表示されます。同じ手の2本の指を使って、これらのボタンをできるだけ速く、交互にタップしてください。"; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "電話を平らな面に置いてください。"; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "同じ手の2本の指を使って、画面上のボタンを交互にタップします。"; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "右手の2本の指を使って、画面上のボタンを交互にタップしてください。"; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "左手の2本の指を使って、画面上のボタンを交互にタップしてください。"; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "次に、右手で同じテストを繰り返します。"; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "次に、左手で同じテストを繰り返します。"; +"TAPPING_INTRO_TEXT_2_FORMAT" = "一方の指でタップしてから、他方の指でタップします。できるだけ一定の時間間隔でタップしてください。%@間タップし続けます。"; "TAPPING_CALL_TO_ACTION" = "始めるには、“開始”をタップしてください。"; +"TAPPING_CALL_TO_ACTION_NEXT" = "始めるには、“次へ”をタップしてください。"; "TAP_BUTTON_TITLE" = "タップ"; "TOTAL_TAPS_LABEL" = "合計タップ回数"; -"TAPPING_INSTRUCTION" = "2本の指を使ってできるだけ速くボタンをタップしてください。"; - +"TAPPING_INSTRUCTION" = "2本の指を使って、できるだけ一定の速度でボタンをタップしてください。"; +"TAPPING_INSTRUCTION_RIGHT" = "右手を使ってボタンをタップしてください。"; +"TAPPING_INSTRUCTION_LEFT" = "左手を使ってボタンをタップしてください。"; +"TAPPING_SKIP_TITLE" = "この手をスキップ"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "声"; @@ -241,6 +273,9 @@ "AUDIO_INTENDED_USE" = "このアクティビティでは、電話の下部にあるマイクで録音することで、あなたの声を評価します。"; "AUDIO_TOO_LOUD_LABEL" = "大きすぎる"; "AUDIO_GENERIC_ERROR_LABEL" = "声を録音できません"; +"AUDIO_LEVEL_CHECK_LABEL" = "背景ノイズのレベルを確認中です。しばらくお待ちください。"; +"AUDIO_TOO_LOUD_MESSAGE" = "周囲のノイズが大きすぎるため、声を録音できません。静かな場所に移動してやり直してください。"; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "準備ができたら“次へ”をタップしてください。"; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "聴力検査"; @@ -339,6 +374,48 @@ "HOLE_PEG_TEST_TEXT" = "2本の指で円をつまんでください。"; "HOLE_PEG_TEST_TEXT_2" = "指で円を持ち上げて移動させ落としてください。"; +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "震え測定アクティビティ"; +"TREMOR_TEST_INTRO_1_DETAIL" = "このアクティビティでは、さまざまな位置で手の震えを測定します。このアクティビティが終わるまで楽な姿勢で座っていられる場所を見つけてください。"; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "下の図のように、震えの大きい方の手で電話を持ってください。"; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "下の図のように、右手で電話を持ってください。"; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "下の図のように、左手で電話を持ってください。"; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "電話を手に持って座ったまま、%@を行うように求められます。"; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "1つのタスク"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "2つのタスク"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "3つのタスク"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "4つのタスク"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "5つのタスク"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "続けるには、“次へ”をタップします。"; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "電話を膝の上で持つ準備をしてください。"; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "左手を使って電話を膝の上で持つ準備をしてください。"; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "右手を使って電話を膝の上で持つ準備をしてください。"; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "電話を膝の上で%ld秒間持ち続けてください。"; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "次に、手を伸ばして電話を肩の高さに持ってください。"; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "次に、左手を伸ばして電話を肩の高さに持ってください。"; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "次に、右手を伸ばして電話を肩の高さに持ってください。"; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "手を伸ばして、%ld秒間電話を持ち続けてください。"; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "肘を曲げて、電話を肩の高さに持ってください。"; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "肘を曲げて、電話を左手で肩の高さに持ってください。"; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "肘を曲げて、電話を右手で肩の高さに持ってください。"; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "肘を曲げて%ld秒間電話を持ち続けてください。"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "次に、肘を曲げて電話で繰り返し鼻に触れてください。"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "次に、電話を左手に持って肘を曲げたまま、電話で繰り返し鼻に触れてください。"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "次に、電話を右手に持って肘を曲げたまま、電話で繰り返し鼻に触れてください。"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "電話で%ld秒間鼻に触れ続けてください。"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "手首を回すように手を振る準備をしてください。"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "電話を左手に持って手首を回すように手を振る準備をしてください。"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "電話を右手に持って手首を回すように手を振る準備をしてください。"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "%ld秒間、手を振り続けてください。"; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "電話を左手に持ち替えて、次のタスクに進んでください。"; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "電話を右手に持ち替えて、次のタスクに進んでください。"; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "次のタスクに進んでください。"; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "アクティビティが完了しました。"; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "最初に一方の手、次に他方の手で電話を持って座ったまま、%@を行うように求められます。"; +"TREMOR_SKIP_LEFT_HAND" = "左手ではこのアクティビティができません。"; +"TREMOR_SKIP_RIGHT_HAND" = "右手ではこのアクティビティができません。"; +"TREMOR_SKIP_NEITHER" = "どちらの手でもこのアクティビティができます。"; + /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "ファイルを作成できませんでした"; "ERROR_DATALOGGER_COULD_NOT_FREE_SPACE" = "しきい値に達するのに十分なログファイルを削除できませんでした"; @@ -378,6 +455,9 @@ "AX_IMAGE_CAPTURE_LABEL" = "プレビューを取り込む"; "AX_IMAGE_CAPTURED_LABEL" = "取り込んだイメージ"; +"AX_VIDEO_CAPTURE_LABEL" = "ビデオ取り込みのプレビュー"; +"AX_VIDEO_CAPTURED_LABEL" = "取り込んだビデオ"; + "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "サイズ%@の円盤をサイズ%@の円盤の上に置くことはできません"; "AX_TOWER_OF_HANOI_TARGET_DISK" = "ターゲット"; "AX_TOWER_OF_HANOI_TOWER" = "塔"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "%@のサイズの円盤があります"; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "空"; -"AX_GRAPH_RANGE_FORMAT" = "範囲%@〜%@"; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "範囲%@〜%@"; +"AX_GRAPH_STACK_PREFIX" = "次の内容のスタック:"; "AX_GRAPH_AND_SEPARATOR" = "と"; "AX_GRAPH_POINT_%@" = "ポイント: %@"; diff --git a/ResearchKit/Localized/ja.lproj/locversion.plist b/ResearchKit/Localized/ja.lproj/locversion.plist index ed91efea..e2c3f140 100644 --- a/ResearchKit/Localized/ja.lproj/locversion.plist +++ b/ResearchKit/Localized/ja.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale ja LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/ko.lproj/ResearchKit.strings b/ResearchKit/Localized/ko.lproj/ResearchKit.strings index e0bd30f8..faf0bc13 100644 --- a/ResearchKit/Localized/ko.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/ko.lproj/ResearchKit.strings @@ -141,6 +141,7 @@ "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "숫자만 허용됩니다."; "PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "암호 입력 진행 과정 표시기"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "%2$@개 중 %1$@개의 숫자가 입력됨"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "암호를 잊어버렸습니까?"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "키체인 항목을 추가할 수 없습니다."; @@ -167,6 +168,11 @@ "BOOL_NO" = "아니요"; "BOOL_YES" = "예"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "cm"; +"MEASURING_UNIT_FT" = "ft"; +"MEASURING_UNIT_IN" = "in"; + /* Default placeholders to request answers in a questionnaire. */ "PLACEHOLDER_TEXT_OR_NUMBER" = "탭하여 대답하기"; "NULL_ANSWER" = "대답 선택하기"; @@ -189,11 +195,15 @@ "BUTTON_OPTION_SAVE" = "나중을 위해 저장"; "BUTTON_OPTION_DISCARD" = "결과 삭제"; "BUTTON_OPTION_STOP_TASK" = "과제 종료"; +"BUTTON_SAVE" = "저장"; +"BUTTON_CLEAR_ANSWER" = "대답 지우기"; +"BUTTON_READ_ONLY_MODE" = "이 대답을 수정할 수 없습니다."; /* General active tasks. */ "COUNTDOWN_LABEL" = "실험 시작까지"; "TASK_COMPLETE_TITLE" = "실험 완료"; "TASK_COMPLETE_TEXT" = "데이터를 분석하여 결과가 준비되면 통보합니다."; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "%@초 남았습니다."; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "이미지 캡처"; @@ -203,6 +213,11 @@ "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "캡처한 이미지를 위한 출력 디렉토리가 지정되지 않았습니다."; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "캡처한 이미지를 저장할 수 없습니다."; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "녹화 시작"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "녹화 중단"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "비디오 다시 캡처"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "피트니스"; "FITNESS_DISTANCE_TITLE_FORMAT" = "거리(%@)"; @@ -222,16 +237,33 @@ "WALK_RETURN_INSTRUCTION_FORMAT" = "뒤로 돌아서 시작한 지점으로 되돌아가십시오."; "WALK_OUTBOUND_INSTRUCTION_FORMAT" = "일직선으로 최대 %ld보를 걸으십시오."; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "일직선으로 안전하게 왔다 갔다 할 수 있는 공간을 찾으십시오. 계속 걷다가 반환점에서 마치 원뿔형 도로 표지가 있는 것처럼 주변을 돌아서 되돌아갑니다.\n\n그런 다음, 원을 그리며 돌아서서 양팔을 옆구리에 대고 발은 어깨너비만큼 벌린 채 서 있으십시오."; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "시작할 준비가 되면 시작하기를 탭하십시오.\n그런 다음 전화기를 주머니나 가방에 넣고 오디오 지침을 따르십시오."; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "%@ 동안 일직선으로 왔다 갔다 걸으십시오. 평상시 걷는 것처럼 걸으면 됩니다."; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "원을 그리며 돌아선 다음 %@ 동안 가만히 서 있으십시오."; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "이 실험을 완료했습니다."; /* Tapping active task. */ "TAPPING_TASK_TITLE" = "탭하기 속도"; +"TAPPING_TASK_TITLE_RIGHT" = "오른손"; +"TAPPING_TASK_TITLE_LEFT" = "왼손"; "TAPPING_INTRO_TEXT" = "이 실험은 사용자의 탭하기 속도를 측정합니다."; -"TAPPING_INTRO_TEXT_2_FORMAT" = "전화를 평편한 바닥에 놓으십시오. 화면에 두 개의 버튼이 %@ 동안 나타납니다. 이 버튼을 같은 쪽 손의 두 손가락을 사용하여 최대한 빨리 교대로 탭하십시오."; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "전화기를 평평한 표면에 두십시오."; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "동일한 손의 두 손가락으로 화면의 버튼을 번갈아 탭하십시오."; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "오른손의 두 손가락으로 화면의 버튼을 번갈아 탭하십시오."; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "왼손의 두 손가락으로 화면의 버튼을 번갈아 탭하십시오."; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "이제 오른손으로 동일한 테스트를 반복하십시오."; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "이제 왼손으로 동일한 테스트를 반복하십시오."; +"TAPPING_INTRO_TEXT_2_FORMAT" = "한 손가락을 탭하고 다른 손가락을 탭하십시오. 탭 간격이 거의 없도록 연속으로 탭하십시오. %@를 계속 탭하십시오."; "TAPPING_CALL_TO_ACTION" = "시작하려면 시작하기를 탭하십시오."; +"TAPPING_CALL_TO_ACTION_NEXT" = "시작하려면 다음을 탭하십시오."; "TAP_BUTTON_TITLE" = "탭"; "TOTAL_TAPS_LABEL" = "탭한 총 횟수"; -"TAPPING_INSTRUCTION" = "두 손가락으로 최대한 빨리 버튼을 탭하십시오."; - +"TAPPING_INSTRUCTION" = "두 손가락으로 버튼을 빠르게 연속으로 탭하십시오."; +"TAPPING_INSTRUCTION_RIGHT" = "오른손으로 버튼을 탭하십시오."; +"TAPPING_INSTRUCTION_LEFT" = "왼손으로 버튼을 탭하십시오."; +"TAPPING_SKIP_TITLE" = "이 손 건너뛰기"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "음성"; @@ -241,6 +273,9 @@ "AUDIO_INTENDED_USE" = "이 실험은 전화 하단에 있는 마이크로 목소리를 녹음하여 사용자의 음성을 평가합니다."; "AUDIO_TOO_LOUD_LABEL" = "소리가 너무 큼"; "AUDIO_GENERIC_ERROR_LABEL" = "오디오를 녹음할 수 없습니다."; +"AUDIO_LEVEL_CHECK_LABEL" = "주변 소음 단계를 측정하는 동안 기다리십시오."; +"AUDIO_TOO_LOUD_MESSAGE" = "음성을 녹음하기에 주변 소음이 너무 큽니다. 좀 더 조용한 장소로 이동한 다음 다시 시도하십시오."; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "준비되면 다음을 탭하십시오."; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "순음 청력 검사"; @@ -339,6 +374,48 @@ "HOLE_PEG_TEST_TEXT" = "두 손가락을 사용하여 페그를 집으십시오."; "HOLE_PEG_TEST_TEXT_2" = "손가락을 떼어서 페그를 내려놓으십시오."; +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "손떨림 실험"; +"TREMOR_TEST_INTRO_1_DETAIL" = "이 실험은 여러 가지 상황에서 손떨림 정도를 측정합니다. 이 실험을 위해 편안하게 앉아있을 수 있는 장소로 이동하십시오."; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "아래 그림처럼 전화기를 더 자주 사용하는 손에 들고 있으십시오."; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "아래 그림처럼 전화기를 오른손에 들고 있으십시오."; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "아래 그림처럼 전화기를 왼손에 들고 있으십시오."; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "전화를 손에 든 채로 앉아있는 동안 %@를 수행해야 합니다."; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "한 건의 과제"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "두 건의 과제"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "세 건의 과제"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "네 건의 과제"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "다섯 건의 과제"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "다음을 탭하여 계속합니다."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "전화기를 무릎에 두는 동작을 준비하십시오."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "왼손으로 전화기를 쥐고 무릎에 두는 동작을 준비하십시오."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "오른손으로 전화기를 쥐고 무릎에 두는 동작을 준비하십시오."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "전화기를 %ld초 동안 무릎에 두십시오."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "이제 전화기를 어깨 높이로 들고 있으십시오."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "이제 전화기를 왼손에 어깨 높이로 들고 있으십시오."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "이제 전화기를 오른손에 어깨 높이로 들고 있으십시오."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "%ld초 동안 손을 내민 채로 전화기를 들고 있으십시오."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "이제 팔꿈치를 굽히고 전화기를 어깨 높이에 들고 있으십시오."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "이제 왼쪽 팔꿈치를 굽히고 왼손으로 전화기를 어깨 높이에 들고 있으십시오."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "이제 오른쪽 팔꿈치를 굽히고 오른손으로 전화기를 어깨 높이에 들고 있으십시오."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "%ld초 동안 팔꿈치를 굽힌 채로 전화기를 들고 있으십시오."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "이제 팔꿈치를 굽히고 전화기를 코에 반복적으로 대십시오."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "이제 왼쪽 팔꿈치를 굽히고 왼손으로 전화기를 든 다음 전화기를 코에 반복적으로 대십시오."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "이제 오른쪽 팔꿈치를 굽히고 오른손으로 전화기를 든 다음 전화기를 코에 반복적으로 대십시오."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "전화기를 %ld초 동안 코에 대고 있으십시오."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "반짝반짝 율동을 취할 준비를 하십시오."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "왼손으로 전화기를 들고 반짝반짝 율동을 취할 준비를 하십시오."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "오른손으로 전화기를 들고 반짝반짝 율동을 취할 준비를 하십시오."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "%ld초 동안 반짝반짝 율동을 수행하십시오."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "이제 전화기를 왼손으로 바꿔 들고 다음 과제를 진행하십시오."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "이제 전화기를 오른손으로 바꿔 들고 다음 과제를 진행하십시오."; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "다음 과제를 진행합니다."; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "실험이 완료되었습니다."; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "전화를 한 손에 먼저 들었다가 다른 손으로 들면서 %@를 수행해야 합니다."; +"TREMOR_SKIP_LEFT_HAND" = "저는 이 과제를 왼손으로 수행할 수 없습니다."; +"TREMOR_SKIP_RIGHT_HAND" = "저는 이 과제를 오른손으로 수행할 수 없습니다."; +"TREMOR_SKIP_NEITHER" = "저는 이 과제를 양손으로 수행할 수 있습니다."; + /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "파일을 생성할 수 없습니다."; "ERROR_DATALOGGER_COULD_NOT_FREE_SPACE" = "임계값에 이르기 위한 충분한 수의 로그 파일을 제거하는 데 실패했습니다."; @@ -378,6 +455,9 @@ "AX_IMAGE_CAPTURE_LABEL" = "캡처 미리보기"; "AX_IMAGE_CAPTURED_LABEL" = "캡처된 이미지"; +"AX_VIDEO_CAPTURE_LABEL" = "비디오 캡처 미리보기"; +"AX_VIDEO_CAPTURED_LABEL" = "캡처된 비디오"; + "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "크기가 %@인 디스크를 크기가 %@인 디스크 위에 놓을 수 없습니다."; "AX_TOWER_OF_HANOI_TARGET_DISK" = "대상"; "AX_TOWER_OF_HANOI_TOWER" = "탑"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "%@ 크기의 디스크가 있음"; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "비어 있음"; -"AX_GRAPH_RANGE_FORMAT" = "%@에서 %@까지의 범위"; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "%@에서 %@까지의 범위"; +"AX_GRAPH_STACK_PREFIX" = "다음으로 구성된 스택"; "AX_GRAPH_AND_SEPARATOR" = " 및 "; "AX_GRAPH_POINT_%@" = "포인트: %@"; diff --git a/ResearchKit/Localized/ko.lproj/locversion.plist b/ResearchKit/Localized/ko.lproj/locversion.plist index e2e07429..c27c24c4 100644 --- a/ResearchKit/Localized/ko.lproj/locversion.plist +++ b/ResearchKit/Localized/ko.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale ko LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/ms.lproj/ResearchKit.strings b/ResearchKit/Localized/ms.lproj/ResearchKit.strings index 2b53e8c1..48370f83 100644 --- a/ResearchKit/Localized/ms.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/ms.lproj/ResearchKit.strings @@ -53,21 +53,21 @@ "CONSENT_LEARN_MORE_TITLE" = "Ketahui Lebih Lanjut"; /* Consent section learn more */ -"LEARN_MORE_DATA_GATHERING" = "Ketahui lebih lanjut mengenai cara data dikumpulkan"; -"LEARN_MORE_DATA_USE" = "Ketahui lebih lanjut mengenai cara data digunakan"; -"LEARN_MORE_PRIVACY" = "Ketahui lebih lanjut mengenai cara privasi dan identiti anda dilindungi"; -"LEARN_MORE_WELCOME" = "Ketahui lebih lanjut mengenai kajian terlebih dahulu"; -"LEARN_MORE_STUDY_SURVEY" = "Ketahui lebih lanjut mengenai tinjauan kajian"; -"LEARN_MORE_TIME_COMMITMENT" = "Ketahui lebih lanjut mengenai impak kajian pada masa anda"; -"LEARN_MORE_TASKS" = "Ketahui lebih lanjut mengenai tugas yang terlibat"; -"LEARN_MORE_WITHDRAWING" = "Ketahui lebih lanjut mengenai menarik diri"; +"LEARN_MORE_DATA_GATHERING" = "Ketahui lebih lanjut tentang cara data dikumpulkan"; +"LEARN_MORE_DATA_USE" = "Ketahui lebih lanjut tentang cara data digunakan"; +"LEARN_MORE_PRIVACY" = "Ketahui lebih lanjut tentang cara privasi dan identiti anda dilindungi"; +"LEARN_MORE_WELCOME" = "Ketahui lebih lanjut tentang kajian terlebih dahulu"; +"LEARN_MORE_STUDY_SURVEY" = "Ketahui lebih lanjut tentang tinjauan kajian"; +"LEARN_MORE_TIME_COMMITMENT" = "Ketahui lebih lanjut tentang impak kajian pada masa anda"; +"LEARN_MORE_TASKS" = "Ketahui lebih lanjut tentang tugas yang terlibat"; +"LEARN_MORE_WITHDRAWING" = "Ketahui lebih lanjut tentang menarik diri"; /* Consent sharing step */ "CONSENT_SHARING_TITLE" = "Pilihan Perkongsian"; "CONSENT_SHARE_WIDELY_%@" = "Kongsi data saya dengan %@ dan penyelidik yang layak di seluruh dunia"; "CONSENT_SHARE_ONLY_%@" = "Kongsi data saya dengan %@ sahaja"; "CONSENT_SHARING_DESCRIPTION_%@" = "%@ akan menerima data kajian anda daripada penyertaan anda dalam kajian ini.\n\nBerkongsi data kajian berkod anda dengan lebih luas (tanpa maklumat seperti nama anda) mungkin memberi manfaat kepada penyelidikan ini dan penyelidikan masa hadapan."; -"LEARN_MORE_CONSENT_SHARING" = "Ketahui lebih lanjut mengenai perkongsian data"; +"LEARN_MORE_CONSENT_SHARING" = "Ketahui lebih lanjut tentang perkongsian data"; /* Lines beneath typewritten signatures on documents. Argument is the title of the signatory, e.g. "Participant's Signature" */ "CONSENT_DOC_LINE_PRINTED_NAME" = "Nama %@ (bertulis)"; @@ -89,9 +89,9 @@ /* Alerts for invalid location coordinates */ "LOCATION_QUESTION_PLACEHOLDER" = "Masukkan alamat"; "LOCATION_ERROR_TITLE" = "Tidak Menemui Alamat yang Ditentukan"; -"LOCATION_ERROR_MESSAGE_LOCATION_UNKNOWN" = "Tidak dapat menyelesaikan lokasi semasa anda. Sila taipkan alamat atau pergi ke lokasi dengan isyarat GPS yang lebih baik jika berkenaan."; +"LOCATION_ERROR_MESSAGE_LOCATION_UNKNOWN" = "Gagal menyelesaikan lokasi semasa anda. Sila taipkan alamat atau pergi ke lokasi dengan isyarat GPS yang lebih baik jika berkenaan."; "LOCATION_ERROR_MESSAGE_DENIED" = "Akses kepada perkhidmatan lokasi telah ditolak. Sila berikan aplikasi ini kebenaran untuk menggunakan perkhidmatan lokasi menerusi Seting."; -"LOCATION_ERROR_GEOCODE" = "Tidak dapat mencari hasil untuk alamat yang dimasukkan. Sila pastikan alamat adalah sah."; +"LOCATION_ERROR_GEOCODE" = "Gagal mencari hasil untuk alamat yang dimasukkan. Sila pastikan alamat adalah sah."; "LOCATION_ERROR_GEOCODE_NETWORK" = "Sama ada anda tidak disambungkan ke internet atau anda telah melebihi bilangan maksimum permintaan carian alamat. Jika anda tidak disambungkan ke internet, sila aktifkan Wi-Fi anda untuk menjawab soalan ini, langkau soalan ini jika butang langkau tersedia, atau kembali ke tinjauan apabila anda disambungkan ke internet. Sebaliknya, sila cuba lagi dalam masa beberapa minit."; /* Alert for exceeding length limit in text answer */ @@ -141,6 +141,7 @@ "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "Hanya aksara angka dibenarkan."; "PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "Penunjuk kemajuan entri kod laluan"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "%@ daripada %@ digit dimasukkan"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "Terlupa Kod Laluan?"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "Tidak dapat menambah item Rantai Kunci."; @@ -167,6 +168,11 @@ "BOOL_NO" = "Tidak"; "BOOL_YES" = "Ya"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "cm"; +"MEASURING_UNIT_FT" = "ka"; +"MEASURING_UNIT_IN" = "inci"; + /* Default placeholders to request answers in a questionnaire. */ "PLACEHOLDER_TEXT_OR_NUMBER" = "Ketik untuk jawab"; "NULL_ANSWER" = "Pilih jawapan"; @@ -189,11 +195,15 @@ "BUTTON_OPTION_SAVE" = "Simpan untuk Kemudian"; "BUTTON_OPTION_DISCARD" = "Buang Hasil"; "BUTTON_OPTION_STOP_TASK" = "Tamatkan Tugas"; +"BUTTON_SAVE" = "Simpan"; +"BUTTON_CLEAR_ANSWER" = "Kosongkan jawapan"; +"BUTTON_READ_ONLY_MODE" = "Jawapan ini tidak boleh diubah suai."; /* General active tasks. */ "COUNTDOWN_LABEL" = "Memulakan aktiviti dalam"; "TASK_COMPLETE_TITLE" = "Aktiviti Selesai"; "TASK_COMPLETE_TEXT" = "Data anda akan dianalisis dan anda akan dimaklumkan apabila keputusan anda tersedia."; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "Tinggal %@ saat."; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "Tangkap Imej"; @@ -203,6 +213,11 @@ "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "Tiada direktori output ditentukan untuk imej yang ditangkap."; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "Imej yang ditangkap tidak dapat disimpan."; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "Mula Merakam"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "Henti Merakam"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "Rakam Semula Video"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "Kecergasan"; "FITNESS_DISTANCE_TITLE_FORMAT" = "Jarak (%@)"; @@ -222,16 +237,33 @@ "WALK_RETURN_INSTRUCTION_FORMAT" = "Pusing dan berjalan balik ke tempat anda bermula."; "WALK_OUTBOUND_INSTRUCTION_FORMAT" = "Jalan sehingga %ld langkah dalam garis lurus."; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "Cari tempat di mana anda boleh berjalan mundar mandir dalam garis lurus. Cuba berjalan berterusan dengan berpusing di kedua penghujung laluan anda, seperti anda berjalan mengelilingi kon.\n\nSeterusnya anda akan diarahkan untuk berpusing dalam bulatan penuh, kemudian berdiri tegak dengan tangan anda di sisi anda dan kaki anda dibuka selebar bahu."; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "Ketik Mulakan apabila anda bersedia untuk bermula.\nKemudian letakkan telefon anda di dalam saku atau beg dan ikuti arahan audio."; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "Berjalan mundar mandir dalam garis lurus selama %@. Jalan seperti biasa anda lakukan."; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "Buat pusingan penuh dan kemudian berdiri tegak selama %@."; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "Anda telah melengkapkan aktiviti."; /* Tapping active task. */ "TAPPING_TASK_TITLE" = "Kelajuan Ketikan"; +"TAPPING_TASK_TITLE_RIGHT" = "Tangan Kanan"; +"TAPPING_TASK_TITLE_LEFT" = "Tangan Kiri"; "TAPPING_INTRO_TEXT" = "Aktiviti ini mengukur kelajuan mengetik anda."; -"TAPPING_INTRO_TEXT_2_FORMAT" = "Letakkan telefon anda pada permukaan rata. Dua butang akan muncul pada skrin anda selama %@. Menggunakan dua jari pada tangan yang sama, ketik butang berselang seli dengan kedua-dua jari secepat yang anda boleh."; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "Letakkan telefon anda di atas permukaan rata."; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "Gunakan dua jari pada tangan yang sama untuk mengetik butang pada skrin secara berselang-seli."; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "Gunakan dua jari pada tangan kanan anda untuk mengetik butang pada skrin secara berselang-seli."; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "Gunakan dua jari pada tangan kiri anda untuk mengetik butang pada skrin secara berselang-seli."; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "Sekarang ulang ujian yang sama menggunakan tangan kanan anda."; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "Sekarang ulang ujian yang sama menggunakan tangan kiri anda."; +"TAPPING_INTRO_TEXT_2_FORMAT" = "Ketik satu jari, kemudian ketik yang lain. Cuba mengetik dengan kadar yang sekata mungkin. Teruskan mengetik selama %@."; "TAPPING_CALL_TO_ACTION" = "Ketik Mulakan untuk memulakan."; +"TAPPING_CALL_TO_ACTION_NEXT" = "Ketik Seterusnya untuk bermula."; "TAP_BUTTON_TITLE" = "Ketik"; "TOTAL_TAPS_LABEL" = "Jumlah Ketikan"; -"TAPPING_INSTRUCTION" = "Ketik butang secepat yang anda boleh menggunakan dua jari."; - +"TAPPING_INSTRUCTION" = "Ketik butang sekonsisten yang anda boleh menggunakan dua jari."; +"TAPPING_INSTRUCTION_RIGHT" = "Ketik butang menggunakan tangan KANAN anda."; +"TAPPING_INSTRUCTION_LEFT" = "Ketik butang menggunakan tangan KIRI anda."; +"TAPPING_SKIP_TITLE" = "Langkau tangan ini"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "Suara"; @@ -240,7 +272,10 @@ "AUDIO_INTRO_TEXT" = "Tarik nafas panjang dan sebut “Aaaaah” ke dalam mikrofon selama yang anda boleh. Kekalkan kelantangan suara yang tetap agar bar audio kekal biru."; "AUDIO_INTENDED_USE" = "Aktiviti ini menilai suara anda dengan merakamnya menggunakan mikrofon di bahagian bawah telefon anda."; "AUDIO_TOO_LOUD_LABEL" = "Terlalu Kuat"; -"AUDIO_GENERIC_ERROR_LABEL" = "Tidak dapat merakam audio"; +"AUDIO_GENERIC_ERROR_LABEL" = "Gagal merakam audio"; +"AUDIO_LEVEL_CHECK_LABEL" = "Sila tunggu sementara kami memeriksa aras hingar latar belakang."; +"AUDIO_TOO_LOUD_MESSAGE" = "Aras hingar ambien terlalu bising untuk merakamkan suara anda. Sila pergi ke tempat yang lebih senyap dan cuba lagi."; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "Ketik Seterusnya apabila bersedia."; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "Audiometri Nada"; @@ -339,6 +374,48 @@ "HOLE_PEG_TEST_TEXT" = "Kutip pancang menggunakan dua jari."; "HOLE_PEG_TEST_TEXT_2" = "Angkat jari untuk menjatuhkan pancang."; +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "Aktiviti Getaran"; +"TREMOR_TEST_INTRO_1_DETAIL" = "Aktiviti ini mengukur getaran tangan anda dalam pelbagai posisi. Cari tempat di mana anda boleh duduk dengan selesa sepanjang tempoh aktiviti ini."; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "Pegang telefon di tangan anda yang lebih terjejas seperti yang ditunjukkan dalam imej di bawah."; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "Pegang telefon di tangan KANAN anda seperti yang ditunjukkan dalam imej di bawah."; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "Pegang telefon di tangan KIRI anda seperti yang ditunjukkan dalam imej di bawah."; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "Anda akan diminta untuk melakukan %@ sementara duduk dengan telefon di tangan anda."; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "satu tugas"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "dua tugas"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "tiga tugas"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "empat tugas"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "lima tugas"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "Ketik seterusnya untuk teruskan."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "Bersedia untuk memegang telefon anda di riba anda."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "Bersedia untuk memegang telefon anda di riba anda dengan tangan KIRI anda."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "Bersedia untuk memegang telefon anda di riba anda dengan tangan KANAN anda."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "Teruskan memegang telefon anda di riba anda selama %ld saat."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "Sekarang pegang telefon anda dengan tangan anda diluruskan pada ketinggian bahu."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "Sekarang pegang telefon anda dengan tangan KIRI anda diluruskan pada ketinggian bahu."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "Sekarang pegang telefon anda dengan tangan KANAN anda diluruskan pada ketinggian bahu."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "Teruskan memegang telefon anda dengan tangan anda diluruskan selama %ld saat."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "Sekarang pegang telefon anda pada ketinggian bahu dengan siku anda dibengkokkan."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "Sekarang pegang telefon anda dengan tangan KIRI anda pada ketinggian bahu dengan siku anda dibengkokkan."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "Sekarang pegang telefon anda dengan tangan KANAN anda pada ketinggian bahu dengan siku anda dibengkokkan."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "Teruskan memegang telefon anda dengan siku anda dibengkokkan selama %ld saat"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "Terus bengkokkan siku anda, sentuh telefon anda ke hidung anda berulang kali."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "Terus bengkokkan siku anda dengan telefon anda di tangan KIRI anda, sentuh telefon anda ke hidung anda berulang kali."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "Terus bengkokkan siku anda dengan telefon anda di tangan KANAN anda, sentuh telefon anda ke hidung anda berulang kali."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "Teruskan menyentuh telefon anda ke hidung anda selama %ld saat"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "Bersedia untuk melakukan lambaian ratu (lambai dengan memusingkan pergelangan tangan anda)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "Bersedia untuk melakukan lambaian ratu dengan telefon anda di tangan KIRI anda (lambai dengan memusingkan pergelangan tangan anda)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "Bersedia untuk melakukan lambaian ratu dengan telefon anda di tangan KANAN anda (lambai dengan memusingkan pergelangan tangan anda)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "Terus melakukan lambaian ratu untuk %ld saat."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "Sekarang tukar telefon ke tangan KIRI anda dan teruskan ke tugas seterusnya."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "Sekarang tukar telefon ke tangan KANAN anda dan teruskan ke tugas seterusnya."; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "Teruskan ke tugas seterusnya."; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "Aktiviti selesai."; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "Anda akan diminta untuk melakukan %@ sementara duduk dengan telefon di sebelah tangan dahulu, kemudian sekali lagi dengan tangan yang lain."; +"TREMOR_SKIP_LEFT_HAND" = "Saya tidak boleh laksanakan aktiviti ini menggunakan tangan KIRI saya."; +"TREMOR_SKIP_RIGHT_HAND" = "Saya tidak boleh laksanakan aktiviti ini menggunakan tangan KANAN saya."; +"TREMOR_SKIP_NEITHER" = "Saya boleh laksanakan aktiviti ini menggunakan kedua belah tangan."; + /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "Tidak dapat mencipta fail"; "ERROR_DATALOGGER_COULD_NOT_FREE_SPACE" = "Tidak dapat mengeluarkan fail log yang mencukupi untuk mencapai nilai ambang"; @@ -378,7 +455,10 @@ "AX_IMAGE_CAPTURE_LABEL" = "Pratonton tangkapan"; "AX_IMAGE_CAPTURED_LABEL" = "Imej ditangkap"; -"AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "Tidak dapat menempatkan cakera bersaiz %@ pada cakera bersaiz %@"; +"AX_VIDEO_CAPTURE_LABEL" = "Pratonton rakaman video"; +"AX_VIDEO_CAPTURED_LABEL" = "Video dirakam"; + +"AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "Gagal menempatkan cakera bersaiz %@ pada cakera bersaiz %@"; "AX_TOWER_OF_HANOI_TARGET_DISK" = "Sasaran"; "AX_TOWER_OF_HANOI_TOWER" = "Menara"; "AX_TOWER_OF_HANOI_PLACE_DISK" = "Dwiketik untuk menempatkan cakera"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "Mempunyai cakera bersaiz %@"; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "Kosong"; -"AX_GRAPH_RANGE_FORMAT" = "Julat daripada %@ hingga %@"; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "Julat daripada %@ hingga %@"; +"AX_GRAPH_STACK_PREFIX" = "Tindanan terdiri daripada"; "AX_GRAPH_AND_SEPARATOR" = " dan "; "AX_GRAPH_POINT_%@" = "Titik: %@"; diff --git a/ResearchKit/Localized/ms.lproj/locversion.plist b/ResearchKit/Localized/ms.lproj/locversion.plist index 4016f86b..18d9010c 100644 --- a/ResearchKit/Localized/ms.lproj/locversion.plist +++ b/ResearchKit/Localized/ms.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale ms LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/nl.lproj/ResearchKit.strings b/ResearchKit/Localized/nl.lproj/ResearchKit.strings index 4766345a..7015f9d6 100644 --- a/ResearchKit/Localized/nl.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/nl.lproj/ResearchKit.strings @@ -34,11 +34,11 @@ "CONSENT_NAME_FAMILY" = "Achternaam"; "CONSENT_NAME_PLACEHOLDER" = "Vereist"; "CONSENT_REVIEW_TITLE" = "Bekijk"; -"CONSENT_REVIEW_INSTRUCTION" = "Lees het formulier hieronder door en tik op 'Akkoord' als u gereed bent om verder te gaan."; +"CONSENT_REVIEW_INSTRUCTION" = "Lees het formulier hieronder door en tik op 'Akkoord' als je gereed bent om verder te gaan."; "CONSENT_REVIEW_ALERT_TITLE" = "Bekijk"; "CONSENT_SIGNATURE_TITLE" = "Handtekening"; -"CONSENT_SIGNATURE_INSTRUCTION" = "Onderteken met uw vinger op de onderstaande lijn."; -"CONSENT_SIGNATURE_PLACEHOLDER" = "Zet hier uw handtekening"; +"CONSENT_SIGNATURE_INSTRUCTION" = "Onderteken met je vinger op de onderstaande lijn."; +"CONSENT_SIGNATURE_PLACEHOLDER" = "Zet hier je handtekening"; "CONSENT_PAGE_NUMBER_FORMAT" = "Pagina %1$ld van %2$ld"; /* Consent section titles. */ @@ -55,18 +55,18 @@ /* Consent section learn more */ "LEARN_MORE_DATA_GATHERING" = "Meer informatie over het verzamelen van gegevens"; "LEARN_MORE_DATA_USE" = "Meer informatie over het gebruik van gegevens"; -"LEARN_MORE_PRIVACY" = "Meer informatie over de bescherming van uw privacy en identiteit"; +"LEARN_MORE_PRIVACY" = "Meer informatie over de bescherming van je privacy en identiteit"; "LEARN_MORE_WELCOME" = "Meer informatie over het onderzoek"; "LEARN_MORE_STUDY_SURVEY" = "Meer informatie over de onderzoeksenquête"; "LEARN_MORE_TIME_COMMITMENT" = "Meer informatie over hoe lang het onderzoek duurt"; -"LEARN_MORE_TASKS" = "Meer informatie over wat u moet doen"; +"LEARN_MORE_TASKS" = "Meer informatie over wat je moet doen"; "LEARN_MORE_WITHDRAWING" = "Meer informatie over afzien van deelname"; /* Consent sharing step */ "CONSENT_SHARING_TITLE" = "Opties voor delen"; "CONSENT_SHARE_WIDELY_%@" = "Deel mijn gegevens met %@ en gekwalificeerde onderzoekers wereldwijd"; "CONSENT_SHARE_ONLY_%@" = "Deel mijn gegevens alleen met %@"; -"CONSENT_SHARING_DESCRIPTION_%@" = "De resultaten van uw deelname aan dit onderzoek worden naar %@ gestuurd.\n\nDoor de gecodeerde onderzoeksgegevens met anderen te delen (zonder persoonlijke gegevens zoals uw naam) kunt u helpen om dit en toekomstig onderzoek te verbeteren."; +"CONSENT_SHARING_DESCRIPTION_%@" = "De resultaten van je deelname aan dit onderzoek worden naar %@ gestuurd.\n\nDoor de gecodeerde onderzoeksgegevens met anderen te delen (zonder persoonlijke gegevens zoals je naam) kun je helpen om dit en toekomstig onderzoek te verbeteren."; "LEARN_MORE_CONSENT_SHARING" = "Meer informatie over het delen van gegevens"; /* Lines beneath typewritten signatures on documents. Argument is the title of the signatory, e.g. "Participant's Signature" */ @@ -91,8 +91,8 @@ "LOCATION_ERROR_TITLE" = "Opgegeven adres niet gevonden"; "LOCATION_ERROR_MESSAGE_LOCATION_UNKNOWN" = "De huidige locatie kan niet worden bepaald. Typ een adres of ga indien nodig naar een plek met een beter GPS-signaal."; "LOCATION_ERROR_MESSAGE_DENIED" = "Toegang tot 'Locatievoorzieningen' is geweigerd. Ga naar Instellingen en geef deze app toestemming om 'Locatievoorzieningen' te gebruiken."; -"LOCATION_ERROR_GEOCODE" = "Het ingevoerde adres is niet gevonden. Zorg dat u een geldig adres invoert."; -"LOCATION_ERROR_GEOCODE_NETWORK" = "U bent niet verbonden met het internet of u hebt te vaak naar een adres gezocht. Zet om deze vraag te beantwoorden Wi‑Fi aan als u niet verbonden bent met het internet. U kunt deze vraag ook overslaan als er een knop 'Sla over' is of verdergaan met deze vragenlijst als de internetverbinding actief is. Of u kunt het over een paar minuten opnieuw proberen."; +"LOCATION_ERROR_GEOCODE" = "Het ingevoerde adres is niet gevonden. Zorg dat je een geldig adres invoert."; +"LOCATION_ERROR_GEOCODE_NETWORK" = "Je bent niet verbonden met het internet of je hebt te vaak naar een adres gezocht. Zet om deze vraag te beantwoorden Wi‑Fi aan als je niet verbonden bent met het internet. Je kunt deze vraag ook overslaan als er een knop 'Sla over' is of verdergaan met deze vragenlijst als de internetverbinding actief is. Of je kunt het over een paar minuten opnieuw proberen."; /* Alert for exceeding length limit in text answer */ "TEXT_ANSWER_EXCEEDING_MAX_LENGTH_ALERT_MESSAGE" = "Tekst overschrijdt maximale lengte: %@"; @@ -118,8 +118,8 @@ /* Verification step */ "VERIFICATION_NAV_TITLE" = "Verificatie"; -"VERIFICATION_STEP_TITLE" = "Verifieer uw e-mailadres"; -"RESEND_EMAIL_LABEL_MESSAGE" = "Tik op de koppeling hieronder als u geen verificatiemail hebt ontvangen en u deze opnieuw wilt laten versturen."; +"VERIFICATION_STEP_TITLE" = "Verifieer je e-mailadres"; +"RESEND_EMAIL_LABEL_MESSAGE" = "Tik op de koppeling hieronder als je geen verificatiemail hebt ontvangen en je deze opnieuw wilt laten versturen."; "RESEND_EMAIL_BUTTON_TITLE" = "Stuur controlemail opnieuw"; /* Login step */ @@ -131,9 +131,9 @@ "PASSCODE_CONFIRM_MESSAGE" = "Herhaal toegangscode"; "PASSCODE_SAVED_MESSAGE" = "Toegangscode bewaard"; "PASSCODE_AUTHENTICATED_MESSAGE" = "Toegangscode geverifieerd"; -"PASSCODE_OLD_ENTRY_MESSAGE" = "Voer uw oude toegangscode in"; -"PASSCODE_NEW_ENTRY_MESSAGE" = "Voer uw nieuwe toegangscode in"; -"PASSCODE_CONFIRM_NEW_ENTRY_MESSAGE" = "Herhaal uw nieuwe wachtwoord"; +"PASSCODE_OLD_ENTRY_MESSAGE" = "Voer je oude toegangscode in"; +"PASSCODE_NEW_ENTRY_MESSAGE" = "Voer je nieuwe toegangscode in"; +"PASSCODE_CONFIRM_NEW_ENTRY_MESSAGE" = "Herhaal je nieuwe wachtwoord"; "PASSCODE_INVALID_ALERT_TITLE" = "Toegangscode onjuist"; "PASSCODE_INVALID_ALERT_MESSAGE" = "De codes komen niet overeen. Probeer het opnieuw."; "PASSCODE_TOUCH_ID_MESSAGE" = "Log in met Touch ID"; @@ -141,6 +141,7 @@ "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "Alleen cijfertekens toegestaan."; "PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "Voortgangsindicator toegangscode-invoer"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "%@ van %@ cijfers ingevoerd"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "Toegangscode vergeten?"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "Sleutelhangeronderdeel kan niet worden toegevoegd."; @@ -167,6 +168,11 @@ "BOOL_NO" = "Nee"; "BOOL_YES" = "Ja"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "cm"; +"MEASURING_UNIT_FT" = "vt"; +"MEASURING_UNIT_IN" = "inch"; + /* Default placeholders to request answers in a questionnaire. */ "PLACEHOLDER_TEXT_OR_NUMBER" = "Tik om te antwoorden"; "NULL_ANSWER" = "Kies een antwoord"; @@ -189,72 +195,101 @@ "BUTTON_OPTION_SAVE" = "Bewaar voor later"; "BUTTON_OPTION_DISCARD" = "Wis resultaten"; "BUTTON_OPTION_STOP_TASK" = "Stop met taak"; +"BUTTON_SAVE" = "Bewaar"; +"BUTTON_CLEAR_ANSWER" = "Wis antwoord"; +"BUTTON_READ_ONLY_MODE" = "Dit antwoord kan niet worden gewijzigd."; /* General active tasks. */ "COUNTDOWN_LABEL" = "Activiteit begint over"; "TASK_COMPLETE_TITLE" = "Activiteit voltooid"; -"TASK_COMPLETE_TEXT" = "Uw gegevens worden geanalyseerd. U ontvangt bericht als de resultaten gereed zijn."; +"TASK_COMPLETE_TEXT" = "Je gegevens worden geanalyseerd. Je ontvangt bericht als de resultaten gereed zijn."; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "Nog %@ seconden."; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "Leg afbeelding vast"; "CAPTURE_BUTTON_RECAPTURE_IMAGE" = "Leg afbeelding opnieuw vast"; "CAPTURE_ERROR_CAMERA_NOT_FOUND" = "Geen camera gevonden. Deze stap kan niet worden voltooid."; -"CAPTURE_ERROR_NO_PERMISSIONS" = "Om deze stap te voltooien, moet u in Instellingen deze app toegang tot de camera geven."; +"CAPTURE_ERROR_NO_PERMISSIONS" = "Om deze stap te voltooien, moet je in Instellingen deze app toegang tot de camera geven."; "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "Er is geen uitvoermap voor vastgelegde afbeeldingen opgegeven."; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "De vastgelegde afbeelding kan niet worden bewaard."; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "Start opname"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "Stop opname"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "Leg video opnieuw vast"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "Conditie"; "FITNESS_DISTANCE_TITLE_FORMAT" = "Afstand (%@)"; "FITNESS_HEARTRATE_TITLE" = "Hartslag (spm)"; "FITNESS_SIT_INSTRUCTION_FORMAT" = "Ga %@ gemakkelijk zitten."; -"FITNESS_WALK_INSTRUCTION_FORMAT" = "Loop %@ zo snel als u kunt."; -"FITNESS_INTRO_TEXT_FORMAT" = "Tijdens deze activiteit wordt uw hartslag gemeten en wordt gekeken hoe ver u in %1$@ kunt lopen."; -"FITNESS_INTRO_2_TEXT_FORMAT" = "Loop buiten %1$@ zo snel als u kunt. Ga daarna gemakkelijk zitten en rust %2$@ uit. Tik op 'Start' om te beginnen."; +"FITNESS_WALK_INSTRUCTION_FORMAT" = "Loop %@ zo snel als je kunt."; +"FITNESS_INTRO_TEXT_FORMAT" = "Tijdens deze activiteit wordt je hartslag gemeten en wordt gekeken hoe ver je in %1$@ kunt lopen."; +"FITNESS_INTRO_2_TEXT_FORMAT" = "Loop buiten %1$@ zo snel als je kunt. Ga daarna gemakkelijk zitten en rust %2$@ uit. Tik op 'Start' om te beginnen."; /* Short walk active task. */ "WALK_TASK_TITLE" = "Tred en balans"; -"WALK_INTRO_TEXT" = "Tijdens deze activiteit worden uw tred en balans gemeten terwijl uw loopt en stilstaat. Ga niet verder als u niet veilig zelfstandig kunt lopen."; -"WALK_INTRO_2_TEXT_%ld" = "Zoek een plek waar u veilig en zelfstandig ongeveer %ld stappen in een rechte lijn kunt zetten."; -"WALK_INTRO_2_DETAIL" = "Stop uw iPhone in uw zak of tas en volg de audio-instructies."; +"WALK_INTRO_TEXT" = "Tijdens deze activiteit worden je tred en balans gemeten terwijl je loopt en stilstaat. Ga niet verder als je niet veilig zelfstandig kunt lopen."; +"WALK_INTRO_2_TEXT_%ld" = "Zoek een plek waar je veilig en zelfstandig ongeveer %ld stappen in een rechte lijn kunt zetten."; +"WALK_INTRO_2_DETAIL" = "Stop je iPhone in je zak of tas en volg de audio-instructies."; "WALK_STAND_VOICE_INSTRUCTION_FORMAT" = "Sta nu %@ lang stil."; "WALK_STAND_INSTRUCTION_FORMAT" = "Sta %@ stil."; "WALK_RETURN_INSTRUCTION_FORMAT" = "Draai om en loop terug naar het beginpunt."; "WALK_OUTBOUND_INSTRUCTION_FORMAT" = "Zet maximaal %ld stappen in een rechte lijn."; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "Zoek een plek waar je veilig in een rechte lijn heen en weer kunt lopen. Maak aan de einden van de looproute een bocht (alsof je om een pylon heenloopt) zodat je niet hoeft te stoppen.\n\nDaarna wordt je gevraagd om één keer om je as te draaien en vervolgens om stil te staan met de armen langs je lichaam en je voeten uit elkaar op schouderbreedte."; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "Tik op 'Start' als je klaar bent om te beginnen.\nStop de telefoon vervolgens in je zak of tas en volg de audio-instructies."; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "Loop %@ in een rechte lijn heen en weer. Loop zoals je altijd loopt."; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "Draai één keer om je as en sta vervolgens %@ stil."; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "Je hebt de activiteit voltooid."; /* Tapping active task. */ "TAPPING_TASK_TITLE" = "Tiksnelheid"; -"TAPPING_INTRO_TEXT" = "Tijdens deze activiteit wordt de snelheid waarmee u tikt gemeten."; -"TAPPING_INTRO_TEXT_2_FORMAT" = "Leg uw telefoon op een vlakke ondergrond. Er verschijnen %@ lang twee knoppen op het scherm. Tik zo snel mogelijk afwisselend met twee vingers van dezelfde hand op de knoppen."; +"TAPPING_TASK_TITLE_RIGHT" = "Rechterhand"; +"TAPPING_TASK_TITLE_LEFT" = "Linkerhand"; +"TAPPING_INTRO_TEXT" = "Tijdens deze activiteit wordt de snelheid waarmee je tikt gemeten."; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "Plaats de telefoon op een egaal oppervlak."; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "Tik met twee vingers van dezelfde hand beurtelings op de knoppen op het scherm."; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "Tik met twee vingers van je rechterhand beurtelings op de knoppen op het scherm."; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "Tik met twee vingers van je linkerhand beurtelings op de knoppen op het scherm."; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "Voer nu dezelfde test uit met je rechterhand."; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "Voer nu dezelfde test uit met je linkerhand."; +"TAPPING_INTRO_TEXT_2_FORMAT" = "Tik eerst met de ene vinger en dan met de andere. Probeer zo gelijkmatig mogelijk te tikken. Ga %@ door met tikken."; "TAPPING_CALL_TO_ACTION" = "Tik op 'Start' om te beginnen."; +"TAPPING_CALL_TO_ACTION_NEXT" = "Tik op 'Volgende' om te beginnen."; "TAP_BUTTON_TITLE" = "Tik"; "TOTAL_TAPS_LABEL" = "Totaal aantal tikken"; -"TAPPING_INSTRUCTION" = "Tik zo snel mogelijk afwisselend met twee vingers op de knoppen."; - +"TAPPING_INSTRUCTION" = "Tik met twee vingers zo gelijkmatig mogelijk op de knoppen."; +"TAPPING_INSTRUCTION_RIGHT" = "Tik op de knoppen met de vingers van je RECHTERHAND."; +"TAPPING_INSTRUCTION_LEFT" = "Tik op de knoppen met de vingers van je LINKERHAND."; +"TAPPING_SKIP_TITLE" = "Sla deze hand over"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "Stem"; "AUDIO_CALL_TO_ACTION" = "Tik op 'Start' om te beginnen."; "AUDIO_INSTRUCTION" = "Zeg zo lang mogelijk 'aaaaah' in de microfoon."; "AUDIO_INTRO_TEXT" = "Haal diep adem en zeg zo lang mogelijk 'aaaaah' in de microfoon. Houd daarbij dezelfde geluidssterkte aan zodat de audiobalken blauw blijven."; -"AUDIO_INTENDED_USE" = "Tijdens deze activiteit wordt uw stemgeluid gemeten door dit op te nemen met de microfoon aan de onderkant van uw telefoon."; +"AUDIO_INTENDED_USE" = "Tijdens deze activiteit wordt je stemgeluid gemeten door dit op te nemen met de microfoon aan de onderkant van je telefoon."; "AUDIO_TOO_LOUD_LABEL" = "Te hard"; "AUDIO_GENERIC_ERROR_LABEL" = "Geluid opnemen niet mogelijk"; +"AUDIO_LEVEL_CHECK_LABEL" = "Even geduld. Het achtergrondgeluid wordt gecontroleerd."; +"AUDIO_TOO_LOUD_MESSAGE" = "Er is te veel omgevingsgeluid om je stem op te nemen. Ga naar een stillere plek en probeer het opnieuw."; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "Tik op 'Volgende' als je klaar bent."; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "Toonaudiometrie"; -"TONE_AUDIOMETRY_INTENDED_USE" = "Met deze activiteit wordt gemeten of u verschillende geluiden kunt horen."; -"TONE_AUDIOMETRY_INTRO_TEXT" = "Sluit om te beginnen uw koptelefoon aan en zet deze op."; +"TONE_AUDIOMETRY_INTENDED_USE" = "Met deze activiteit wordt gemeten of je verschillende geluiden kunt horen."; +"TONE_AUDIOMETRY_INTRO_TEXT" = "Sluit om te beginnen je koptelefoon aan en zet deze op."; "TONE_AUDIOMETRY_CALL_TO_ACTION" = "Tik op 'Start' om te beginnen."; -"TONE_AUDIOMETRY_PREP_TEXT" = "U moet nu een toon horen. Pas het volume aan met de knoppen aan de zijkant van uw apparaat.\n\nTik op de knop wanneer u klaar bent om te beginnen."; -"TONE_AUDIOMETRY_INSTRUCTION" = "Tik op de knop telkens wanneer u een geluid begint te horen."; +"TONE_AUDIOMETRY_PREP_TEXT" = "Je moet nu een toon horen. Pas het volume aan met de knoppen aan de zijkant van je apparaat.\n\nTik op de knop wanneer je klaar bent om te beginnen."; +"TONE_AUDIOMETRY_INSTRUCTION" = "Tik op de knop telkens wanneer je een geluid begint te horen."; "TONE_LABEL_%@_LEFT" = "%@ Hz, links"; "TONE_LABEL_%@_RIGHT" = "%@ Hz, rechts"; /* Spatial span memory active task. */ "SPATIAL_SPAN_MEMORY_TITLE" = "Ruimtelijk geheugen"; -"SPATIAL_SPAN_MEMORY_INTRO_TEXT_%@" = "Tijdens deze activiteit wordt uw ruimtelijk kortetermijngeheugen gemeten door u de volgorde waarin %@ oplichten te laten herhalen."; +"SPATIAL_SPAN_MEMORY_INTRO_TEXT_%@" = "Tijdens deze activiteit wordt je ruimtelijk kortetermijngeheugen gemeten door je de volgorde waarin %@ oplichten te laten herhalen."; "SPATIAL_SPAN_MEMORY_TARGET_PLURAL" = "bloemen"; "SPATIAL_SPAN_MEMORY_TARGET_STANDALONE" = "bloemen"; "SPATIAL_SPAN_MEMORY_INTRO_2_TEXT_%@" = "Een aantal van de %@ licht een voor een op. Tik op die %@ in dezelfde volgorde als waarin ze oplichtten."; @@ -270,22 +305,22 @@ "MEMORY_GAME_FAILED_TITLE" = "Probeer het opnieuw"; "MEMORY_GAME_FAILED_MESSAGE" = "Het is niet helemaal gelukt dit keer. Tik op 'Volgende' om verder te gaan."; "MEMORY_GAME_TIMEOUT_TITLE" = "De tijd is om"; -"MEMORY_GAME_TIMEOUT_MESSAGE" = "U hebt het niet binnen de tijd gehaald.\nTik op 'Volgende' om verder te gaan."; +"MEMORY_GAME_TIMEOUT_MESSAGE" = "Je hebt het niet binnen de tijd gehaald.\nTik op 'Volgende' om verder te gaan."; "MEMORY_GAME_COMPLETE" = "Spel voltooid"; "MEMORY_GAME_PAUSED_TITLE" = "Pauze"; "MEMORY_GAME_PAUSED_MESSAGE" = "Tik op 'Ga door' om verder te gaan"; /* Reaction time active task. */ "REACTION_TIME_TASK_TITLE" = "Reactietijd"; -"REACTION_TIME_TASK_INTENDED_USE" = "Met deze activiteit wordt gekeken hoe snel u op een visuele aanwijzing reageert."; -"REACTION_TIME_TASK_INTRO_TEXT_FORMAT" = "Schud het apparaat in een willekeurige richting zodra de blauwe stip op het scherm verschijnt. U wordt gevraagd om dit %D keer te doen."; +"REACTION_TIME_TASK_INTENDED_USE" = "Met deze activiteit wordt gekeken hoe snel je op een visuele aanwijzing reageert."; +"REACTION_TIME_TASK_INTRO_TEXT_FORMAT" = "Schud het apparaat in een willekeurige richting zodra de blauwe stip op het scherm verschijnt. Je wordt gevraagd om dit %D keer te doen."; "REACTION_TIME_TASK_CALL_TO_ACTION" = "Tik op 'Start' om te beginnen."; "REACTION_TIME_TASK_ATTEMPTS_FORMAT" = "Poging %@ van %@"; "REACTION_TIME_TASK_ACTIVE_STEP_TITLE" = "Schud het apparaat snel heen en weer als de blauwe cirkel verschijnt"; /* Tower of Hanoi active task */ "TOWER_OF_HANOI_TASK_TITLE" = "Torens van Hanoi"; -"TOWER_OF_HANOI_TASK_INTENDED_USE" = "Met deze activiteit wordt gekeken hoe goed u puzzels kunt oplossen."; +"TOWER_OF_HANOI_TASK_INTENDED_USE" = "Met deze activiteit wordt gekeken hoe goed je puzzels kunt oplossen."; "TOWER_OF_HANOI_TASK_INTRO_TEXT" = "Verplaats de hele stapel in zo min mogelijk stappen naar het gemarkeerde platform."; "TOWER_OF_HANOI_TASK_TASK_CALL_TO_ACTION" = "Tik op 'Start' om te beginnen"; "TOWER_OF_HANOI_TASK_ACTIVE_STEP_INTRO_TEXT" = "Los de puzzel op"; @@ -294,13 +329,13 @@ /* Timed walk active task. */ "TIMED_WALK_TITLE" = "Lopen met tijdmeting"; -"TIMED_WALK_INTRO_DETAIL" = "Met deze activiteit wordt het functioneren van uw onderlichaam gemeten."; -"TIMED_WALK_INTRO_2_TEXT_%@" = "Zoek een plek, bij voorkeur buiten, waar u veilig zo snel mogelijk ongeveer %@ in een rechte lijn kunt lopen. Vertraag uw tempo niet totdat u voorbij de eindstreep bent."; +"TIMED_WALK_INTRO_DETAIL" = "Met deze activiteit wordt het functioneren van je onderlichaam gemeten."; +"TIMED_WALK_INTRO_2_TEXT_%@" = "Zoek een plek, bij voorkeur buiten, waar je veilig zo snel mogelijk ongeveer %@ in een rechte lijn kunt lopen. Vertraag je tempo niet totdat je voorbij de eindstreep bent."; "TIMED_WALK_INTRO_2_DETAIL" = "Tik op 'Volgende' om te beginnen."; "TIMED_WALK_FORM_TITLE" = "Loophulpmiddel"; "TIMED_WALK_FORM_TEXT" = "Gebruik hetzelfde hulpmiddel voor elke test."; -"TIMED_WALK_QUESTION_TEXT" = "Draagt u een enkel-voetorthese?"; -"TIMED_WALK_QUESTION_2_TITLE" = "Gebruikt u een loophulpmiddel?"; +"TIMED_WALK_QUESTION_TEXT" = "Draag je een enkel-voetorthese?"; +"TIMED_WALK_QUESTION_2_TITLE" = "Gebruik je een loophulpmiddel?"; "TIMED_WALK_QUESTION_2_TEXT" = "Tik hier om een antwoord te kiezen."; "TIMED_WALK_QUESTION_2_CHOICE" = "Geen"; "TIMED_WALK_QUESTION_2_CHOICE_2" = "Eén wandelstok"; @@ -310,16 +345,16 @@ "TIMED_WALK_QUESTION_2_CHOICE_6" = "Looprek/Rollator"; "TIMED_WALK_INSTRUCTION_%@" = "Loop max. %@ in een rechte lijn."; "TIMED_WALK_INSTRUCTION_2" = "Draai om en loop terug naar het beginpunt."; -"TIMED_WALK_INSTRUCTION_TEXT" = "Tik op 'Gereed' als u klaar bent."; +"TIMED_WALK_INSTRUCTION_TEXT" = "Tik op 'Gereed' als je klaar bent."; /* PSAT active task. */ "PASAT_TITLE" = "PASAT"; "PVSAT_TITLE" = "PVSAT"; "PAVSAT_TITLE" = "PAVSAT"; -"PASAT_INTRO_TEXT" = "Met de PASAT (een stapsgewijze auditieve seriële opteltest) wordt gemeten hoe snel u hoorbare informatie verwerkt en hoe goed u kunt rekenen."; -"PVSAT_INTRO_TEXT" = "Met de PVSAT (een stapsgewijze visuele seriële opteltest) wordt gemeten hoe snel u zichtbare informatie verwerkt en hoe goed u kunt rekenen."; -"PAVSAT_INTRO_TEXT" = "Met de PAVSAT (een stapsgewijze auditieve en visuele seriële opteltest) wordt gemeten hoe snel u hoorbare en zichtbare informatie verwerkt en hoe goed u kunt rekenen."; -"PSAT_INTRO_TEXT_2_%@" = "Elke %@ seconden ziet en/of hoort u een cijfer.\nU moet elk nieuw cijfer optellen bij het vorige cijfer.\nLet op: u moet niet het totaal van alle cijfers berekenen, maar alleen de som van de laatste twee cijfers."; +"PASAT_INTRO_TEXT" = "Met de PASAT (een stapsgewijze auditieve seriële opteltest) wordt gemeten hoe snel je hoorbare informatie verwerkt en hoe goed je kunt rekenen."; +"PVSAT_INTRO_TEXT" = "Met de PVSAT (een stapsgewijze visuele seriële opteltest) wordt gemeten hoe snel je zichtbare informatie verwerkt en hoe goed je kunt rekenen."; +"PAVSAT_INTRO_TEXT" = "Met de PAVSAT (een stapsgewijze auditieve en visuele seriële opteltest) wordt gemeten hoe snel je hoorbare en zichtbare informatie verwerkt en hoe goed je kunt rekenen."; +"PSAT_INTRO_TEXT_2_%@" = "Elke %@ seconden ziet en/of hoor je een cijfer.\nJe moet elk nieuw cijfer optellen bij het vorige cijfer.\nLet op: je moet niet het totaal van alle cijfers berekenen, maar alleen de som van de laatste twee cijfers."; "PSAT_CALL_TO_ACTION" = "Tik op 'Start' om te beginnen."; "PSAT_INITIAL_INSTRUCTION" = "Onthoud dit eerste cijfer."; "PSAT_INSTRUCTION" = "Tel dit nieuwe cijfer op bij het vorige."; @@ -327,24 +362,66 @@ /* Hole peg test active task. */ "HOLE_PEG_TEST_TITLE_%@" = "%@-schijventest"; -"HOLE_PEG_TEST_INTRO_TEXT_%@" = "Tijdens deze activiteit meet u het functioneren van uw bovenste ledematen door een schijfje in een cirkel te plaatsen. Dit moet u %@ keer doen."; -"HOLE_PEG_TEST_INTRO_TEXT_2_LEFT_HAND_FIRST_%@" = "Zowel uw linker- als rechterhand wordt getest.\nU moet het schijfje zo snel mogelijk oppakken en in de cirkel plaatsen. Nadat u dit %@ keer hebt gedaan, moet u het schijfje %@ keer weer weghalen."; -"HOLE_PEG_TEST_INTRO_TEXT_2_RIGHT_HAND_FIRST_%@" = "Zowel uw rechter- als linkerhand wordt getest.\nU moet het schijfje zo snel mogelijk oppakken en in de cirkel plaatsen. Nadat u dit %@ keer hebt gedaan, moet u het schijfje %@ keer weer weghalen."; +"HOLE_PEG_TEST_INTRO_TEXT_%@" = "Tijdens deze activiteit mee je het functioneren van je bovenste ledematen door een schijfje in een cirkel te plaatsen. Dit moet je %@ keer doen."; +"HOLE_PEG_TEST_INTRO_TEXT_2_LEFT_HAND_FIRST_%@" = "Zowel je linker- als rechterhand wordt getest.\nJe moet het schijfje zo snel mogelijk oppakken en in de cirkel plaatsen. Nadat je dit %@ keer hebt gedaan, moet je het schijfje %@ keer weer weghalen."; +"HOLE_PEG_TEST_INTRO_TEXT_2_RIGHT_HAND_FIRST_%@" = "Zowel je rechter- als linkerhand wordt getest.\nJe moet het schijfje zo snel mogelijk oppakken en in de cirkel plaatsen. Nadat je dit %@ keer hebt gedaan, moet je het schijfje %@ keer weer weghalen."; "HOLE_PEG_TEST_CALL_TO_ACTION" = "Tik op 'Start' om te beginnen."; -"HOLE_PEG_TEST_PLACE_INSTRUCTION_LEFT_HAND" = "Plaats met uw linkerhand het schijfje in de cirkel."; -"HOLE_PEG_TEST_PLACE_INSTRUCTION_RIGHT_HAND" = "Plaats met uw rechterhand het schijfje in de cirkel."; -"HOLE_PEG_TEST_REMOVE_INSTRUCTION_LEFT_HAND" = "Plaats met uw linkerhand het schijfje achter de lijn."; -"HOLE_PEG_TEST_REMOVE_INSTRUCTION_RIGHT_HAND" = "Plaats met uw rechterhand het schijfje achter de lijn."; +"HOLE_PEG_TEST_PLACE_INSTRUCTION_LEFT_HAND" = "Plaats met je linkerhand het schijfje in de cirkel."; +"HOLE_PEG_TEST_PLACE_INSTRUCTION_RIGHT_HAND" = "Plaats met je rechterhand het schijfje in de cirkel."; +"HOLE_PEG_TEST_REMOVE_INSTRUCTION_LEFT_HAND" = "Plaats met je linkerhand het schijfje achter de lijn."; +"HOLE_PEG_TEST_REMOVE_INSTRUCTION_RIGHT_HAND" = "Plaats met je rechterhand het schijfje achter de lijn."; "HOLE_PEG_TEST_TEXT" = "Pak het schijfje op met twee vingers."; -"HOLE_PEG_TEST_TEXT_2" = "Til uw vingers op om het schijfje los te laten."; +"HOLE_PEG_TEST_TEXT_2" = "Til je vingers op om het schijfje los te laten."; + +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "Trillingsactiviteit"; +"TREMOR_TEST_INTRO_1_DETAIL" = "Met deze activiteit wordt gemeten hoe sterk je handen trillen in verschillende posities. Ga naar een plek waar je comfortabel kunt zitten gedurende deze activiteit."; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "Houd de telefoon in de hand waarvan je de meeste last heeft, zoals hieronder afgebeeld."; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "Houd de telefoon in je RECHTERHAND, zoals hieronder afgebeeld."; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "Houd de telefoon in je LINKERHAND, zoals hieronder afgebeeld."; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "Je wordt gevraagd om %@ zittend uit te voeren met de telefoon in je hand."; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "een taak"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "twee taken"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "drie taken"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "vier taken"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "vijf taken"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "Tik op 'Volgende' om door te gaan."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "Bereid je voor om de telefoon in je schoot te houden."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "Bereid je voor om de telefoon in je schoot te houden met je LINKERHAND."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "Bereid je voor om de telefoon in je schoot te houden met je RECHTERHAND."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "Houd de telefoon %ld seconden vast in je schoot."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "Houd nu de telefoon op schouderhoogte in je uitgestoken hand."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "Houd nu de telefoon op schouderhoogte in je uitgestoken LINKERHAND."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "Houd nu de telefoon op schouderhoogte in je uitgestoken RECHTERHAND."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "Houd de telefoon %ld seconden vast in je uitgestoken hand."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "Houd nu de telefoon op schouderhoogte terwijl je je elleboog gebogen houdt."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "Houd nu de telefoon op schouderhoogte in je LINKERHAND terwijl je je elleboog gebogen houdt."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "Houd nu de telefoon op schouderhoogte in je RECHTERHAND terwijl je je elleboog gebogen houdt."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "Houd de telefoon %ld seconden vast terwijl je je elleboog gebogen houdt"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "Raak nu je neus herhaaldelijk aan met de telefoon terwijl je je elleboog gebogen houdt."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "Houd nu de telefoon in je LINKERHAND en raak je neus herhaaldelijk aan met de telefoon terwijl je je elleboog gebogen houdt."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "Houd nu de telefoon in je RECHTERHAND en raak je neus herhaaldelijk aan met de telefoon terwijl je je elleboog gebogen houdt."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "Raak %ld seconden je neus aan met de telefoon"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "Bereid je voor om te wuiven vanuit de pols."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "Bereid je voor om te wuiven vanuit de pols met de telefoon in je LINKERHAND."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "Bereid je voor om te wuiven vanuit de pols met de telefoon in je RECHTERHAND."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "Wuif %ld seconden vanuit de pols."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "Neem de telefoon nu in je LINKERHAND en ga door met de volgende taak."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "Neem de telefoon nu in je RECHTERHAND en ga door met de volgende taak."; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "Ga door naar de volgende taak."; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "Activiteit voltooid."; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "Je wordt gevraagd om %@ zittend uit te voeren met de telefoon in de ene hand en daarna opnieuw met de telefoon in de andere hand."; +"TREMOR_SKIP_LEFT_HAND" = "Ik kan deze activiteit niet met mijn LINKERHAND uitvoeren."; +"TREMOR_SKIP_RIGHT_HAND" = "Ik kan deze activiteit niet met mijn RECHTERHAND uitvoeren."; +"TREMOR_SKIP_NEITHER" = "Ik kan deze activiteit met beide handen uitvoeren."; /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "Bestand aanmaken mislukt"; "ERROR_DATALOGGER_COULD_NOT_FREE_SPACE" = "Er kunnen niet genoeg logbestanden worden verwijderd om de drempel te halen"; "ERROR_DATALOGGER_SET_ATTRIBUTE" = "Fout bij kenmerk instellen"; "ERROR_DATALOGGER_COULD_NOT_MAORK" = "Bestand niet gemarkeerd als verwijderd (niet gemarkeerd als geüpload)"; -"ERROR_DATALOGGER_MULTIPLE" = "Meerder fouten bij logbestanden verwijderen"; +"ERROR_DATALOGGER_MULTIPLE" = "Meerdere fouten bij logbestanden verwijderen"; "ERROR_RECORDER_NO_DATA" = "Geen verzamelde gegevens gevonden."; "ERROR_RECORDER_NO_OUTPUT_DIRECTORY" = "Geen uitvoerdirectory opgegeven"; @@ -357,7 +434,7 @@ "AX_IMAGE_ILLUSTRATION" = "Afbeelding van %@"; "AX_SIGNVIEW_LABEL" = "Veld voor handtekening"; -"AX_SIGNVIEW_HINT" = "Beweeg uw vinger over het scherm om uw handtekening te zetten"; +"AX_SIGNVIEW_HINT" = "Beweeg je vinger over het scherm om je handtekening te zetten"; "AX_SIGNVIEW_SIGNED" = "Ondertekend"; "AX_SIGNVIEW_UNSIGNED" = "Niet ondertekend"; @@ -378,6 +455,9 @@ "AX_IMAGE_CAPTURE_LABEL" = "Voorvertoning opname"; "AX_IMAGE_CAPTURED_LABEL" = "Vastgelegde afbeelding"; +"AX_VIDEO_CAPTURE_LABEL" = "Voorvertoning video-opname"; +"AX_VIDEO_CAPTURED_LABEL" = "Vastgelegde video"; + "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "De schijf met grootte %@ kan niet op de schijf met grootte %@ worden geplaatst."; "AX_TOWER_OF_HANOI_TARGET_DISK" = "Doel"; "AX_TOWER_OF_HANOI_TOWER" = "Toren"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "Heeft schijf met groottes %@"; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "Leeg"; -"AX_GRAPH_RANGE_FORMAT" = "Bereik van %@ tot %@"; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "Bereik van %@ tot %@"; +"AX_GRAPH_STACK_PREFIX" = "Stack bestaat uit"; "AX_GRAPH_AND_SEPARATOR" = " en "; "AX_GRAPH_POINT_%@" = "Punt: %@"; diff --git a/ResearchKit/Localized/nl.lproj/locversion.plist b/ResearchKit/Localized/nl.lproj/locversion.plist index 3e6f8aa1..4088b17e 100644 --- a/ResearchKit/Localized/nl.lproj/locversion.plist +++ b/ResearchKit/Localized/nl.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale nl LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/no.lproj/ResearchKit.strings b/ResearchKit/Localized/no.lproj/ResearchKit.strings index 274553ae..4f60bdda 100644 --- a/ResearchKit/Localized/no.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/no.lproj/ResearchKit.strings @@ -141,6 +141,7 @@ "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "Kun numeriske tegn er tillatt."; "PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "Framdriftsindikator for inntasting av kode"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "%@ av %@ sifre oppgitt"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "Glemt koden?"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "Kunne ikke legge til nøkkelringobjekt."; @@ -167,6 +168,11 @@ "BOOL_NO" = "Nei"; "BOOL_YES" = "Ja"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "cm"; +"MEASURING_UNIT_FT" = "fot"; +"MEASURING_UNIT_IN" = "to"; + /* Default placeholders to request answers in a questionnaire. */ "PLACEHOLDER_TEXT_OR_NUMBER" = "Trykk for å svare"; "NULL_ANSWER" = "Velg et svar"; @@ -189,11 +195,15 @@ "BUTTON_OPTION_SAVE" = "Spar til senere"; "BUTTON_OPTION_DISCARD" = "Forkast resultater"; "BUTTON_OPTION_STOP_TASK" = "Avslutt oppgave"; +"BUTTON_SAVE" = "Arkiver"; +"BUTTON_CLEAR_ANSWER" = "Fjern svar"; +"BUTTON_READ_ONLY_MODE" = "Dette svaret kan ikke endres."; /* General active tasks. */ "COUNTDOWN_LABEL" = "Starter aktivitet om"; "TASK_COMPLETE_TITLE" = "Aktivitet fullført"; "TASK_COMPLETE_TEXT" = "Dataene vil bli analysert, og du blir varslet når resultatene er klare."; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "%@ sekunder gjenstår."; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "Ta bilde"; @@ -203,6 +213,11 @@ "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "Du har ikke angitt en katalog for bildene du tar."; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "Bildet kunne ikke arkiveres."; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "Start opptak"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "Stopp opptak"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "Spill inn video på nytt"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "Kondisjon"; "FITNESS_DISTANCE_TITLE_FORMAT" = "Strekning (%@)"; @@ -222,16 +237,33 @@ "WALK_RETURN_INSTRUCTION_FORMAT" = "Snu og gå tilbake der du startet."; "WALK_OUTBOUND_INSTRUCTION_FORMAT" = "Gå opptil %ld skritt i rett linje."; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "Finn et sted hvor du trygt kan gå fram og tilbake i en rett linje. Prøv å gå kontinuerlig når du skal snu, som om du skal gå rundt en kjegle.\n\nDu vil bli deretter bedt om å snu deg helt rundt og stå helt stille med armene ned langs siden og føttene med en skulderbreddes avstand."; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "Trykk på Kom i gang når du er klar til å starte.\nPlasser deretter telefonen i en lomme eller veske, og følg lydinstruksjonene."; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "Gå fram og tilbake i en rett linje i %@. Gå så normalt så mulig."; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "Snu deg helt rundt og stå stille i %@."; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "Du har fullført aktiviteten."; /* Tapping active task. */ "TAPPING_TASK_TITLE" = "Trykkhastighet"; +"TAPPING_TASK_TITLE_RIGHT" = "Høyre hånd"; +"TAPPING_TASK_TITLE_LEFT" = "Venstre hånd"; "TAPPING_INTRO_TEXT" = "Denne aktiviteten måler trykkhastigheten din."; -"TAPPING_INTRO_TEXT_2_FORMAT" = "Legg telefonen på et flatt underlag. To knapper vises på skjermen i %@. Bruk to fingre på samme hånd og trykk vekselvis på knappene så fort du kan."; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "Plasser telefonen på en flat overflate."; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "Bruk to fingre på samme hånd til å trykke vekselvis på knappene på skjermen."; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "Bruk to fingre på høyre hånd til å trykke vekselvis på knappene på skjermen."; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "Bruk to fingre på venstre hånd til å trykke vekselvis på knappene på skjermen."; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "Gjør den samme testen med høyre hånd."; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "Gjør den samme testen med venstre hånd."; +"TAPPING_INTRO_TEXT_2_FORMAT" = "Trykk med én finger, og deretter den andre. Veksle mellom knappene i jevne intervaller. Fortsett å trykke i %@."; "TAPPING_CALL_TO_ACTION" = "Trykk på Start for å begynne."; +"TAPPING_CALL_TO_ACTION_NEXT" = "Trykk på Neste for å begynne."; "TAP_BUTTON_TITLE" = "Trykk"; "TOTAL_TAPS_LABEL" = "Trykk totalt"; -"TAPPING_INSTRUCTION" = "Trykk på knappene så fort du kan med to fingre."; - +"TAPPING_INSTRUCTION" = "Trykk på knappene så jevnt som du klarer, med to fingre."; +"TAPPING_INSTRUCTION_RIGHT" = "Trykk på knappene med din HØYRE hånd."; +"TAPPING_INSTRUCTION_LEFT" = "Trykk på knappene med din VENSTRE hånd."; +"TAPPING_SKIP_TITLE" = "Utelat denne hånden"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "Stemme"; @@ -241,6 +273,9 @@ "AUDIO_INTENDED_USE" = "Aktiviteten vil evaluere stemmen din ved å ta den opp i mikrofonen i nedre kant av telefonen."; "AUDIO_TOO_LOUD_LABEL" = "For høyt"; "AUDIO_GENERIC_ERROR_LABEL" = "Kan ikke ta opp lyd"; +"AUDIO_LEVEL_CHECK_LABEL" = "Vent mens vi kontrollerer støynivået i bakgrunnen."; +"AUDIO_TOO_LOUD_MESSAGE" = "Støynivået fra omgivelsene er for høyt til å gjøre opptak av stemmen din. Gå til et sted mindre støy, og prøv igjen."; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "Trykk på Neste når du er klar."; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "Toneaudiometri"; @@ -339,6 +374,48 @@ "HOLE_PEG_TEST_TEXT" = "Bruk to fingre til å løfte opp pluggen."; "HOLE_PEG_TEST_TEXT_2" = "Løft fingrene for å slippe pluggen."; +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "Skjelving – aktivitet"; +"TREMOR_TEST_INTRO_1_DETAIL" = "Denne aktiviteten måler skjelving i hendene dine i forskjellige posisjoner. Finn et sted hvor du kan sitte i ro i løpet av denne aktiviteten."; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "Hold telefonen i hånden som er hardest rammet, som vist i bildet nedenfor."; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "Hold telefonen i din HØYRE hånd som vist i bildet nedenfor."; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "Hold telefonen i din VENSTRE hånd som vist i bildet nedenfor."; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "Du vil bli bedt om å utføre %@ mens du sitter med telefonen i den ene hånden."; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "en oppgave"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "to oppgaver"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "tre oppgaver"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "fire oppgaver"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "fem oppgaver"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "Trykk på Neste for å gå videre."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "Forbered deg på å holde telefonen i fanget."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "Forbered deg på å holde telefonen i fanget med VENSTRE hånd."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "Forbered deg på å holde telefonen i fanget med HØYRE hånd."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "Hold telefonen i fanget i %ld sekunder."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "Hold telefonen med utstrakt hånd i skulderhøyde."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "Hold telefonen med VENSTRE hånd utstrakt i skulderhøyde."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "Hold telefonen med HØYRE hånd utstrakt i skulderhøyde."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "Hold telefonen med utstrakt hånd i %ld sekunder."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "Hold telefonen i skulderhøyde med albuen bøyd."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "Hold telefonen med VENSTRE hånd i skulderhøyde med albuen bøyd."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "Hold telefonen med HØYRE hånd i skulderhøyde med albuen bøyd."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "Hold telefonen med albuen bøyd i %ld sekunder"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "Hold albuen bøyd, og trykk telefonen mot nesen gjentatte ganger."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "Hold albuen bøyd med telefonen i VENSTRE hånd, og trykk telefonen mot nesen gjentatte ganger."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "Hold albuen bøyd med telefonen i HØYRE hånd, og trykk telefonen mot nesen gjentatte ganger."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "Hold telefonen mot nesen i %ld sekunder"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "Forbered deg på å vinke som en dronning (vink ved å vri på håndleddet)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "Forbered deg på å vinke som en dronning med telefonen i VENSTRE hånd (vink ved å vri på håndleddet)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "Forbered deg på å vinke som en dronning med telefonen i HØYRE hånd (vink ved å vri på håndleddet)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "Vink som en dronning i %ld sekunder."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "Flytt telefonen til VENSTRE hånd, og fortsett oppgaven."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "Flytt telefonen til HØYRE hånd, og fortsett oppgaven."; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "Fortsett til neste oppgave."; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "Aktivitet fullført."; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "Du vil bli bedt om å utføre %@ mens du sitter med telefonen i den ene hånden, og deretter igjen med den andre hånden."; +"TREMOR_SKIP_LEFT_HAND" = "Jeg kan ikke utføre denne aktiviteten med min VENSTRE hånd."; +"TREMOR_SKIP_RIGHT_HAND" = "Jeg kan ikke utføre denne aktiviteten med min HØYRE hånd."; +"TREMOR_SKIP_NEITHER" = "Jeg kan utføre denne aktiviteten med begge hender."; + /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "Kunne ikke opprette fil"; "ERROR_DATALOGGER_COULD_NOT_FREE_SPACE" = "Kunne ikke fjerne nok loggfiler til å nå grensen"; @@ -378,6 +455,9 @@ "AX_IMAGE_CAPTURE_LABEL" = "Forhåndsvisning av bilde"; "AX_IMAGE_CAPTURED_LABEL" = "Tatt bilde"; +"AX_VIDEO_CAPTURE_LABEL" = "Forhåndsvisning av videoopptak"; +"AX_VIDEO_CAPTURED_LABEL" = "Innspilt video"; + "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "Kan ikke plassere skive med størrelse %@ på skive med størrelse %@"; "AX_TOWER_OF_HANOI_TARGET_DISK" = "Mål"; "AX_TOWER_OF_HANOI_TOWER" = "Tårn"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "Har skive med størrelse %@"; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "Tom"; -"AX_GRAPH_RANGE_FORMAT" = "Område fra %@ til %@"; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "Område fra %@ til %@"; +"AX_GRAPH_STACK_PREFIX" = "Stabel bestående av"; "AX_GRAPH_AND_SEPARATOR" = " og "; "AX_GRAPH_POINT_%@" = "Punkt: %@"; diff --git a/ResearchKit/Localized/no.lproj/locversion.plist b/ResearchKit/Localized/no.lproj/locversion.plist index 5042878c..49428b20 100644 --- a/ResearchKit/Localized/no.lproj/locversion.plist +++ b/ResearchKit/Localized/no.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale no LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/pl.lproj/ResearchKit.strings b/ResearchKit/Localized/pl.lproj/ResearchKit.strings index 802579ed..0805fb82 100644 --- a/ResearchKit/Localized/pl.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/pl.lproj/ResearchKit.strings @@ -141,6 +141,7 @@ "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "Dozwolone są tylko znaki numeryczne."; "PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "Wskaźnik postępu podawania kodu"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "Liczba wprowadzonych cyfr: %@ z %@"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "Nie pamiętasz kodu?"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "Nie można było dodać rzeczy pęku kluczy."; @@ -167,6 +168,11 @@ "BOOL_NO" = "Nie"; "BOOL_YES" = "Tak"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "cm"; +"MEASURING_UNIT_FT" = "ft"; +"MEASURING_UNIT_IN" = "cale"; + /* Default placeholders to request answers in a questionnaire. */ "PLACEHOLDER_TEXT_OR_NUMBER" = "Stuknij, aby odpowiedzieć"; "NULL_ANSWER" = "Wybierz odpowiedź"; @@ -189,11 +195,15 @@ "BUTTON_OPTION_SAVE" = "Zachowaj na później"; "BUTTON_OPTION_DISCARD" = "Odrzuć wyniki"; "BUTTON_OPTION_STOP_TASK" = "Zakończ zadanie"; +"BUTTON_SAVE" = "Zachowaj"; +"BUTTON_CLEAR_ANSWER" = "Wymaż odpowiedź"; +"BUTTON_READ_ONLY_MODE" = "Nie można modyfikować tej odpowiedzi."; /* General active tasks. */ "COUNTDOWN_LABEL" = "Początek ćwiczenia za"; "TASK_COMPLETE_TITLE" = "Ćwiczenie zakończone"; "TASK_COMPLETE_TEXT" = "Twoje dane zostaną przeanalizowane i otrzymasz powiadomienie o wynikach."; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "Pozostało: %@ s."; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "Zarejestruj obraz"; @@ -203,6 +213,11 @@ "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "Nie wskazano katalogu wyjściowego dla zarejestrowanych obrazów."; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "Nie można było zachować zarejestrowanego obrazu."; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "Rozpocznij nagrywanie"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "Zatrzymaj nagrywanie"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "Zarejestruj wideo ponownie"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "Sprawność"; "FITNESS_DISTANCE_TITLE_FORMAT" = "Dystans (%@)"; @@ -222,16 +237,33 @@ "WALK_RETURN_INSTRUCTION_FORMAT" = "Odwróć się i przejdź do miejsca startu."; "WALK_OUTBOUND_INSTRUCTION_FORMAT" = "Idź prosto i zatrzymaj się po maksymalnie %ld krokach."; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "Znajdź miejsce, w którym możesz bezpiecznie chodzić w tę i z powrotem w linii prostej. Próbuj chodzić w sposób ciągły, zawracając na końcach tak, jak robi się to wokół słupka.\n\nNastępnie wykonasz pełny obrót i staniesz z rękoma ułożonymi wzdłuż ciała i stopami rozstawionymi do szerokości ramion."; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "Aby rozpocząć, stuknij w Start.\nNastępnie umieść telefon w kieszeni lub torbie i postępuj zgodnie z instrukcjami dźwiękowymi."; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "Chodź zwykłym krokiem w tę i z powrotem w linii prostej przez %@."; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "Wykonaj pełny obrót i stój bez ruchu przez %@."; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "Ćwiczenie zostało ukończone."; /* Tapping active task. */ "TAPPING_TASK_TITLE" = "Szybkość stukania"; +"TAPPING_TASK_TITLE_RIGHT" = "Prawa ręka"; +"TAPPING_TASK_TITLE_LEFT" = "Lewa ręka"; "TAPPING_INTRO_TEXT" = "To ćwiczenie ocenia Twoją szybkość stukania."; -"TAPPING_INTRO_TEXT_2_FORMAT" = "Połóż telefon na płaskiej powierzchni. Przez %@ na ekranie będą wyświetlane dwa przyciski. Używając dwóch palców tej samej ręki stukaj w nie na przemian jak najszybciej potrafisz."; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "Połóż telefon na płaskiej powierzchni."; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "Naprzemiennie stukaj w przyciski na ekranie dwoma palcami tej samej ręki."; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "Naprzemiennie stukaj w przyciski na ekranie dwoma palcami prawej ręki."; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "Naprzemiennie stukaj w przyciski na ekranie dwoma palcami lewej ręki."; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "Teraz wykonaj to ćwiczenie prawą ręką."; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "Teraz wykonaj to ćwiczenie lewą ręką."; +"TAPPING_INTRO_TEXT_2_FORMAT" = "Stukaj na zmianę jednym i drugim palcem. Próbuj stukać możliwie miarowo. Stukaj przez %@."; "TAPPING_CALL_TO_ACTION" = "Aby rozpocząć, stuknij w Start."; +"TAPPING_CALL_TO_ACTION_NEXT" = "Aby rozpocząć, stuknij w Dalej."; "TAP_BUTTON_TITLE" = "Stuknij"; "TOTAL_TAPS_LABEL" = "Liczba stuknięć"; -"TAPPING_INSTRUCTION" = "Stukaj w przyciski dwoma palcami jak najszybciej potrafisz."; - +"TAPPING_INSTRUCTION" = "Stukaj w przyciski dwoma palcami możliwie miarowo."; +"TAPPING_INSTRUCTION_RIGHT" = "Stukaj w przyciski PRAWĄ ręką."; +"TAPPING_INSTRUCTION_LEFT" = "Stukaj w przyciski LEWĄ ręką."; +"TAPPING_SKIP_TITLE" = "Pomiń tę rękę"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "Głos"; @@ -241,6 +273,9 @@ "AUDIO_INTENDED_USE" = "To ćwiczenie ocenia Twój głos, nagrywając go przy użyciu mikrofonu znajdującego się u dołu telefonu."; "AUDIO_TOO_LOUD_LABEL" = "Zbyt głośno"; "AUDIO_GENERIC_ERROR_LABEL" = "Nie można nagrać dźwięku"; +"AUDIO_LEVEL_CHECK_LABEL" = "Czekaj, sprawdzamy poziom szumu tła."; +"AUDIO_TOO_LOUD_MESSAGE" = "Szum otoczenia jest zbyt głośny, aby nagrać Twój głos. Przenieś się w cichsze miejsce i spróbuj ponownie."; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "Aby rozpocząć, stuknij w Dalej."; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "Audiometria tonalna"; @@ -339,6 +374,48 @@ "HOLE_PEG_TEST_TEXT" = "Podnieś „kołek” dwoma palcami."; "HOLE_PEG_TEST_TEXT_2" = "Unieś palce, aby upuścić „kołek”."; +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "Ćwiczenie oceniające drżenie rąk"; +"TREMOR_TEST_INTRO_1_DETAIL" = "To ćwiczenie ocenia drżenie rąk w różnych pozycjach. Na czas tego ćwiczenia znajdź miejsce, w którym możesz wygodnie siedzieć."; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "Trzymaj telefon w bardziej drżącej ręce, tak jak na obrazku poniżej."; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "Trzymaj telefon w PRAWEJ ręce, tak jak na obrazku poniżej."; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "Trzymaj telefon w LEWEJ ręce, tak jak na obrazku poniżej."; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "Wykonasz %@ w pozycji siedzącej, trzymając telefon w ręce."; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "zadanie"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "dwa zadania"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "trzy zadania"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "cztery zadania"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "pięć zadań"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "Aby kontynuować, stuknij w Dalej."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "Przygotuj się do trzymania telefonu na kolanach."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "Przygotuj się do trzymania telefonu na kolanach LEWĄ ręką."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "Przygotuj się do trzymania telefonu na kolanach PRAWĄ ręką."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "Trzymaj telefon na kolanach przez %ld s."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "Teraz trzymaj telefon w wyciągniętej ręce na wysokości barku."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "Teraz trzymaj telefon w wyciągniętej LEWEJ ręce na wysokości barku."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "Teraz trzymaj telefon w wyciągniętej PRAWEJ ręce na wysokości barku."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "Trzymaj telefon w wyciągniętej ręce przez %ld s."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "Teraz trzymaj telefon w ręce ugiętej w łokciu na wysokości barku."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "Teraz trzymaj telefon w LEWEJ ręce ugiętej w łokciu na wysokości barku."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "Teraz trzymaj telefon w PRAWEJ ręce ugiętej w łokciu na wysokości barku."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "Trzymaj telefon w ręce zgiętej w łokciu przez %ld s"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "Teraz, trzymając telefon w ręce zgiętej w łokciu, dotknij nim nosa i powtarzaj tę czynność."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "Teraz, trzymając telefon w LEWEJ ręce zgiętej w łokciu, dotknij nim nosa i powtarzaj tę czynność."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "Teraz, trzymając telefon w PRAWEJ ręce zgiętej w łokciu, dotknij nim nosa i powtarzaj tę czynność."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "Dotykaj telefonem nosa przez %ld s"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "Przygotuj się do machania dłonią, zginając rękę w nadgarstku."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "Przygotuj się do machania LEWĄ dłonią, zginając rękę w nadgarstku."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "Przygotuj się do machania PRAWĄ dłonią, zginając rękę w nadgarstku."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "Unieś rękę i machaj dłonią, zginając rękę w nadgarstku, przez %ld s."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "Teraz przełóż telefon do LEWEJ ręki i przejdź do następnego zadania."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "Teraz przełóż telefon do PRAWEJ ręki i przejdź do następnego zadania."; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "Przejdź do następnego zadania."; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "Ćwiczenie ukończone."; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "Wykonasz %@ w pozycji siedzącej z telefonem w jednej ręce, a następnie w drugiej."; +"TREMOR_SKIP_LEFT_HAND" = "Nie mogę wykonywać tego ćwiczenia LEWĄ ręką."; +"TREMOR_SKIP_RIGHT_HAND" = "Nie mogę wykonywać tego ćwiczenia PRAWĄ ręką."; +"TREMOR_SKIP_NEITHER" = "Mogę wykonywać to ćwiczenie obiema rękami."; + /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "Nie można było utworzyć pliku"; "ERROR_DATALOGGER_COULD_NOT_FREE_SPACE" = "Nie można było usunąć liczby plików dzienników pozwalającej na osiągnięcie progu"; @@ -378,6 +455,9 @@ "AX_IMAGE_CAPTURE_LABEL" = "Zarejestruj podgląd"; "AX_IMAGE_CAPTURED_LABEL" = "Zarejestrowany obraz"; +"AX_VIDEO_CAPTURE_LABEL" = "Podgląd rejestracji wideo"; +"AX_VIDEO_CAPTURED_LABEL" = "Zarejestrowane wideo"; + "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "Nie można umieścić dysku o rozmiarze %@ na dysku o rozmiarze %@"; "AX_TOWER_OF_HANOI_TARGET_DISK" = "Krążek docelowy"; "AX_TOWER_OF_HANOI_TOWER" = "Wieża"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "Zawiera krążki o rozmiarach %@"; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "Pusta"; -"AX_GRAPH_RANGE_FORMAT" = "Zakres %@–%@"; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "Zakres %@–%@"; +"AX_GRAPH_STACK_PREFIX" = "Stos złożony z"; "AX_GRAPH_AND_SEPARATOR" = " i "; "AX_GRAPH_POINT_%@" = "Punkt: %@"; diff --git a/ResearchKit/Localized/pl.lproj/locversion.plist b/ResearchKit/Localized/pl.lproj/locversion.plist index e03ae9c3..137a97b7 100644 --- a/ResearchKit/Localized/pl.lproj/locversion.plist +++ b/ResearchKit/Localized/pl.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale pl LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/pt.lproj/ResearchKit.strings b/ResearchKit/Localized/pt.lproj/ResearchKit.strings index 1fe898e5..c7beef27 100644 --- a/ResearchKit/Localized/pt.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/pt.lproj/ResearchKit.strings @@ -141,6 +141,7 @@ "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "Apenas caracteres numéricos são permitidos."; "PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "Indicador de progresso de inserção de código"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "Você digitou %@ de %@ dígitos"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "Esqueceu o Código?"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "Não foi possível adicionar a chave."; @@ -167,6 +168,11 @@ "BOOL_NO" = "Não"; "BOOL_YES" = "Sim"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "cm"; +"MEASURING_UNIT_FT" = "pés"; +"MEASURING_UNIT_IN" = "pol"; + /* Default placeholders to request answers in a questionnaire. */ "PLACEHOLDER_TEXT_OR_NUMBER" = "Toque para responder"; "NULL_ANSWER" = "Selecione uma resposta"; @@ -189,11 +195,15 @@ "BUTTON_OPTION_SAVE" = "Salvar para Mais Tarde"; "BUTTON_OPTION_DISCARD" = "Descartar Resultados"; "BUTTON_OPTION_STOP_TASK" = "Finalizar Tarefa"; +"BUTTON_SAVE" = "Salvar"; +"BUTTON_CLEAR_ANSWER" = "Limpar resposta"; +"BUTTON_READ_ONLY_MODE" = "Esta resposta não pode ser modificada."; /* General active tasks. */ "COUNTDOWN_LABEL" = "Iniciando atividade em"; "TASK_COMPLETE_TITLE" = "Atividade Concluída"; "TASK_COMPLETE_TEXT" = "Seus dados serão analisados e você será notificado quando os resultados estiverem prontos."; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "%@ segundos restantes."; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "Capturar Imagem"; @@ -203,6 +213,11 @@ "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "Não foi especificado um diretório de saída para imagens capturadas."; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "A imagem capturada não pôde ser salva."; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "Iniciar Gravação"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "Parar Gravação"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "Recapturar Vídeo"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "Condicionamento Físico"; "FITNESS_DISTANCE_TITLE_FORMAT" = "Distância (%@)"; @@ -222,16 +237,33 @@ "WALK_RETURN_INSTRUCTION_FORMAT" = "Vire-se e volte para o local onde você começou."; "WALK_OUTBOUND_INSTRUCTION_FORMAT" = "Dê até %ld passos em linha reta."; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "Encontre um local onde você possa andar para a frente e para trás em linha reta com segurança. Tente andar continuamente, virando ao final do caminho, como se estivesse dando a volta em um cone.\n\nA seguir, você será instruído a virar em um círculo completo e ficar parado com os braços ao lado do corpo e os pés separados pela distância entre os ombros."; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "Toque em Iniciar quando estiver pronto.\nColoque o telefone em um bolso ou bolsa e siga as instruções de áudio."; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "Ande para a frente e para trás em linha reta por %@. Ande normalmente."; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "Vire em um círculo completo e fique parado por %@."; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "Você concluiu a atividade."; /* Tapping active task. */ "TAPPING_TASK_TITLE" = "Velocidade de Toque"; +"TAPPING_TASK_TITLE_RIGHT" = "Mão Direita"; +"TAPPING_TASK_TITLE_LEFT" = "Mão Esquerda"; "TAPPING_INTRO_TEXT" = "Esta atividade mede a sua velocidade de toque."; -"TAPPING_INTRO_TEXT_2_FORMAT" = "Coloque o telefone sob uma superfície plana. Dois botões aparecerão na tela por %@. Com dois dedos da mesma mão, toque nos botões alternadamente o mais rápido que conseguir."; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "Coloque o telefone em uma superfície plana."; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "Use dois dedos da mesma mão para tocar nos botões da tela alternadamente."; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "Use dois dedos da mão direita para tocar nos botões da tela alternadamente."; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "Use dois dedos da mão esquerda para tocar nos botões da tela alternadamente."; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "Agora repita o mesmo teste com a mão direita."; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "Agora repita o mesmo teste com a mão esquerda."; +"TAPPING_INTRO_TEXT_2_FORMAT" = "Toque um dedo e depois o outro. Tente manter o ritmo dos toques o mais constante possível. Continue tocando por %@."; "TAPPING_CALL_TO_ACTION" = "Toque em Iniciar para começar."; +"TAPPING_CALL_TO_ACTION_NEXT" = "Toque em Seguinte para começar."; "TAP_BUTTON_TITLE" = "Toque"; "TOTAL_TAPS_LABEL" = "Total de Toques"; -"TAPPING_INSTRUCTION" = "Toque nos botões o mais rápido que conseguir usando dois dedos."; - +"TAPPING_INSTRUCTION" = "Toque nos botões com o máximo de consistência que puder usando dois dedos."; +"TAPPING_INSTRUCTION_RIGHT" = "Toque nos botões usando a mão DIREITA."; +"TAPPING_INSTRUCTION_LEFT" = "Toque nos botões usando a mão ESQUERDA."; +"TAPPING_SKIP_TITLE" = "Ignorar esta mão"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "Voz"; @@ -241,6 +273,9 @@ "AUDIO_INTENDED_USE" = "Esta atividade avalia a sua voz gravando-a com o microfone na parte inferior do telefone."; "AUDIO_TOO_LOUD_LABEL" = "Alto Demais"; "AUDIO_GENERIC_ERROR_LABEL" = "Não foi possível gravar áudio"; +"AUDIO_LEVEL_CHECK_LABEL" = "Aguarde a verificação do nível de ruído de fundo."; +"AUDIO_TOO_LOUD_MESSAGE" = "O nível de ruído ambiente está muito alto para gravar a sua voz. Vá até um local mais silencioso e tente novamente."; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "Toque em Seguinte quando pronto."; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "Audiometria Tonal"; @@ -339,6 +374,48 @@ "HOLE_PEG_TEST_TEXT" = "Pegue o círculo usando dois dedos."; "HOLE_PEG_TEST_TEXT_2" = "Tire o dedo da tela para largar o círculo."; +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "Atividade de Tremor"; +"TREMOR_TEST_INTRO_1_DETAIL" = "Esta atividade mede o tremor das mãos em várias posições. Encontre um local onde você possa se sentar confortavelmente durante esta atividade."; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "Segure o telefone na mão mais afetada, conforme mostrado na imagem abaixo."; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "Segure o telefone na mão DIREITA, conforme mostrado na imagem abaixo."; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "Segure o telefone na mão ESQUERDA, conforme mostrado na imagem abaixo."; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "Você será solicitado a realizar %@ sentado com o telefone na mão."; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "uma tarefa"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "duas tarefas"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "três tarefas"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "quatro tarefas"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "cinco tarefas"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "Toque em Seguinte para prosseguir."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "Prepare-se para segurar o telefone na perna."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "Prepare-se para segurar o telefone na perna com a mão ESQUERDA."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "Prepare-se para segurar o telefone na perna com a mão DIREITA."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "Continue segurando o telefone na perna por %ld segundos."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "Agora segure o telefone com a mão estendida na altura do ombro."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "Agora segure o telefone com a mão ESQUERDA estendida na altura do ombro."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "Agora segure o telefone com a mão DIREITA estendida na altura do ombro."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "Continue segurando o telefone com a mão estendida por %ld segundos."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "Agora segure o telefone na altura do ombro com o cotovelo dobrado."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "Agora segure o telefone com a mão ESQUERDA na altura do ombro com o cotovelo dobrado."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "Agora segure o telefone com a mão DIREITA na altura do ombro com o cotovelo dobrado."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "Continue segurando o telefone com o cotovelo dobrado por %ld segundos"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "Agora, mantendo o cotovelo dobrado, toque o telefone no nariz repetidamente."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "Agora, mantendo o cotovelo dobrado e com o telefone na mão ESQUERDA, toque o telefone no nariz repetidamente."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "Agora, mantendo o cotovelo dobrado e com o telefone na mão DIREITA, toque o telefone no nariz repetidamente."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "Continue tocando o telefone no nariz por %ld segundos"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "Prepare-se para fazer um aceno como da rainha (acene virando o pulso)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "Prepare-se para fazer um aceno como da rainha com o telefone na mão ESQUERDA (acene virando o pulso)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "Prepare-se para fazer um aceno como da rainha com o telefone na mão DIREITA (acene virando o pulso)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "Continue fazendo um aceno como da rainha por %ld segundos."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "Agora passe o telefone para a mão ESQUERDA e continue para a tarefa seguinte."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "Agora passe o telefone para a mão DIREITA e continue para a tarefa seguinte."; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "Continue para a tarefa seguinte."; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "Atividade concluída."; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "Você será solicitado a realizar %@ sentado com o telefone em uma das mãos e, depois, na outra."; +"TREMOR_SKIP_LEFT_HAND" = "Não posso realizar esta atividade com a mão ESQUERDA."; +"TREMOR_SKIP_RIGHT_HAND" = "Não posso realizar esta atividade com a mão DIREITA."; +"TREMOR_SKIP_NEITHER" = "Posso realizar esta atividade com ambas as mãos."; + /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "Não foi possível criar o arquivo"; "ERROR_DATALOGGER_COULD_NOT_FREE_SPACE" = "Não foi possível remover arquivos de registro suficientes para alcançar o limite"; @@ -378,6 +455,9 @@ "AX_IMAGE_CAPTURE_LABEL" = "Pré-visualização da captura"; "AX_IMAGE_CAPTURED_LABEL" = "Imagem capturada"; +"AX_VIDEO_CAPTURE_LABEL" = "Pré-visualização da captura de vídeo"; +"AX_VIDEO_CAPTURED_LABEL" = "Vídeo capturado"; + "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "Não pôde colocar o disco com %@ de tamanho no disco com %@ de tamanho"; "AX_TOWER_OF_HANOI_TARGET_DISK" = "Destino"; "AX_TOWER_OF_HANOI_TOWER" = "Torre"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "Tem disco com tamanhos %@"; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "Esvaziar"; -"AX_GRAPH_RANGE_FORMAT" = "Varia entre %@ e %@"; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "Varia entre %@ e %@"; +"AX_GRAPH_STACK_PREFIX" = "Pilha composta de"; "AX_GRAPH_AND_SEPARATOR" = " e "; "AX_GRAPH_POINT_%@" = "Ponto: %@"; diff --git a/ResearchKit/Localized/pt.lproj/locversion.plist b/ResearchKit/Localized/pt.lproj/locversion.plist index 41e47d21..48643fd6 100644 --- a/ResearchKit/Localized/pt.lproj/locversion.plist +++ b/ResearchKit/Localized/pt.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale pt LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/pt_PT.lproj/ResearchKit.strings b/ResearchKit/Localized/pt_PT.lproj/ResearchKit.strings index ba18fc76..b67bf182 100644 --- a/ResearchKit/Localized/pt_PT.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/pt_PT.lproj/ResearchKit.strings @@ -141,6 +141,7 @@ "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "Só são permitidos caracteres numéricos."; "PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "Indicador de progresso de introdução do código"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "%@ de %@ dígitos introduzidos"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "Não se lembra do código?"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "Não foi possível adicionar elemento do Porta‑chaves."; @@ -167,6 +168,11 @@ "BOOL_NO" = "Não"; "BOOL_YES" = "Sim"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "cm"; +"MEASURING_UNIT_FT" = "pés"; +"MEASURING_UNIT_IN" = "in"; + /* Default placeholders to request answers in a questionnaire. */ "PLACEHOLDER_TEXT_OR_NUMBER" = "Toque para responder"; "NULL_ANSWER" = "Selecione uma resposta"; @@ -189,11 +195,15 @@ "BUTTON_OPTION_SAVE" = "Guardar para depois"; "BUTTON_OPTION_DISCARD" = "Não usar os resultados"; "BUTTON_OPTION_STOP_TASK" = "Terminar tarefa"; +"BUTTON_SAVE" = "Guardar"; +"BUTTON_CLEAR_ANSWER" = "Limpar resposta"; +"BUTTON_READ_ONLY_MODE" = "Esta resposta não pode ser alterada."; /* General active tasks. */ -"COUNTDOWN_LABEL" = "Iniciar teste daqui a"; +"COUNTDOWN_LABEL" = "Iniciar exercício daqui a"; "TASK_COMPLETE_TITLE" = "Exercício concluído"; "TASK_COMPLETE_TEXT" = "Os seus dados serão analisados e receberá um aviso quando os resultados estiverem disponíveis."; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "Faltam %@ segundos."; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "Capturar imagem"; @@ -203,6 +213,11 @@ "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "Não foi especificado nenhum diretório de saída para as imagens capturadas."; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "Não foi possível guardar a imagem capturada."; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "Iniciar gravação"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "Parar gravação"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "Voltar a filmar"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "Fitness"; "FITNESS_DISTANCE_TITLE_FORMAT" = "Distância (%@)"; @@ -222,16 +237,33 @@ "WALK_RETURN_INSTRUCTION_FORMAT" = "Dê meia‑volta e ande de volta ao ponto de partida."; "WALK_OUTBOUND_INSTRUCTION_FORMAT" = "Dê até %ld passos em linha reta."; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "Escolha um sítio onde possa andar em segurança, para trás e para frente em linha reta. Tente andar sem parar, dando a volta no final do percurso como se estivesse a andar à volta de um cone.\n\nDepois, ser‑lhe‑à pedido que se vire, dando uma volta completa, e que permaneça imóvel, com os braços ao logo do corpo e os pés afastados à largura dos ombros."; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "Quando estiver pronto(a), toque em Começar.\nDepois, coloque o telefone no bolso ou na carteira e siga as instruções."; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "Ande em linha reta, para trás e para frente, durante %@. Ande normalmente."; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "Rode dando uma volta completa e, depois, permaneça imóvel durante %@."; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "Concluiu este exercício."; /* Tapping active task. */ "TAPPING_TASK_TITLE" = "Velocidade de toque"; +"TAPPING_TASK_TITLE_RIGHT" = "Mão direita"; +"TAPPING_TASK_TITLE_LEFT" = "Mão esquerda"; "TAPPING_INTRO_TEXT" = "Este exercício mede a sua velocidade de toque."; -"TAPPING_INTRO_TEXT_2_FORMAT" = "Coloque o telefone numa superfície plana. Verá aparecer no ecrã dois botões durante %@. Com dois dedos da mesma mão, toque alternadamente nos botões o mais depressa que puder."; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "Coloque o telefone numa superfície plana."; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "Com dois dedos da mesma mão, toque alternadamente nos botões no ecrã."; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "Com dois dedos da mão direita, toque alternadamente nos botões no ecrã."; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "Com dois dedos da mão esquerda, toque alternadamente nos botões no ecrã."; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "Agora repita o mesmo teste com a mão direita."; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "Agora repita o mesmo teste com a mão esquerda."; +"TAPPING_INTRO_TEXT_2_FORMAT" = "Toque com um dedo e depois com o outro. Tente fazer com que os toques sejam o mais regulares possível. Continue a tocar durante %@."; "TAPPING_CALL_TO_ACTION" = "Para iniciar, toque em Começar."; +"TAPPING_CALL_TO_ACTION_NEXT" = "Toque em Seguinte para começar."; "TAP_BUTTON_TITLE" = "Toque"; "TOTAL_TAPS_LABEL" = "Total de toques"; -"TAPPING_INSTRUCTION" = "Com dois dedos, toque nos botões o mais depressa que puder."; - +"TAPPING_INSTRUCTION" = "Com dois dedos, toque nos botões o mais regularmente que puder."; +"TAPPING_INSTRUCTION_RIGHT" = "Com a mão DIREITA, toque nos botões."; +"TAPPING_INSTRUCTION_LEFT" = "Com a mão ESQUERDA, toque nos botões."; +"TAPPING_SKIP_TITLE" = "Não testar esta mão"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "Voz"; @@ -241,10 +273,13 @@ "AUDIO_INTENDED_USE" = "Este exercício avalia a sua voz, gravando‑a através do microfone na parte inferior do telefone."; "AUDIO_TOO_LOUD_LABEL" = "Demasiado alto"; "AUDIO_GENERIC_ERROR_LABEL" = "Não é possível gravar áudio"; +"AUDIO_LEVEL_CHECK_LABEL" = "Aguarde enquanto verificamos o nível de ruído de fundo."; +"AUDIO_TOO_LOUD_MESSAGE" = "O nível de ruído ambiente é demasiado elevado para gravar a sua voz. Desloque‑se para um local menos ruidoso e volte a tentar."; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "Quando estiver pronto(a), toque em Seguinte."; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "Audiometria de tom"; -"TONE_AUDIOMETRY_INTENDED_USE" = "Esta atividade mede a sua capacidade de ouvir sons diferentes."; +"TONE_AUDIOMETRY_INTENDED_USE" = "Este exercício mede a sua capacidade de ouvir sons diferentes."; "TONE_AUDIOMETRY_INTRO_TEXT" = "Antes de começar, ligue os auscultadores e coloque-os na cabeça."; "TONE_AUDIOMETRY_CALL_TO_ACTION" = "Para iniciar, toque em Começar."; "TONE_AUDIOMETRY_PREP_TEXT" = "Deve ouvir um som agora. Ajuste o volume usando os controlos na parte lateral do dispositivo.\n\nToque no botão quando estiver pronto para começar."; @@ -277,7 +312,7 @@ /* Reaction time active task. */ "REACTION_TIME_TASK_TITLE" = "Tempo de reação"; -"REACTION_TIME_TASK_INTENDED_USE" = "Esta atividade avalia o seu tempo de resposta a uma pista visual."; +"REACTION_TIME_TASK_INTENDED_USE" = "Este exercício avalia o seu tempo de resposta a uma pista visual."; "REACTION_TIME_TASK_INTRO_TEXT_FORMAT" = "Agite o dispositivo em qualquer direção assim que o ponto azul aparecer no ecrã. Ser-lhe-á pedido para fazer isto %D vezes."; "REACTION_TIME_TASK_CALL_TO_ACTION" = "Para iniciar, toque em Começar."; "REACTION_TIME_TASK_ATTEMPTS_FORMAT" = "Tentativa %@ de %@"; @@ -294,7 +329,7 @@ /* Timed walk active task. */ "TIMED_WALK_TITLE" = "Caminhada temporizada"; -"TIMED_WALK_INTRO_DETAIL" = "Esta atividade mede a função das suas extremidades inferiores."; +"TIMED_WALK_INTRO_DETAIL" = "Este exercício mede a função das suas extremidades inferiores."; "TIMED_WALK_INTRO_2_TEXT_%@" = "Encontre um lugar, preferencialmente no exterior, onde possa caminhar cerca de %@ em linha reta o mais rapidamente possível, mas em segurança. Não abrande até ultrapassar a meta."; "TIMED_WALK_INTRO_2_DETAIL" = "Toque em Seguinte para começar."; "TIMED_WALK_FORM_TITLE" = "Dispositivo auxiliar"; @@ -339,6 +374,48 @@ "HOLE_PEG_TEST_TEXT" = "Apanhe o círculo com dois dedos."; "HOLE_PEG_TEST_TEXT_2" = "Levante os dedos para largar o círculo."; +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "Tremor"; +"TREMOR_TEST_INTRO_1_DETAIL" = "Este exercício mede o tremor das mãos em várias posições. Durante todo o exercício, é importante manter‑se confortavelmente sentado(a)."; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "Segure no telefone (como mostra a imagem abaixo) com a mão mais afetada."; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "Segure no telefone (como mostra a imagem abaixo) com a mão DIREITA."; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "Segure no telefone (como mostra a imagem abaixo) com a mão ESQUERDA."; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "Ser‑lhe‑à pedido que efetue %@, na posição sentada, com o telefone na mão."; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "uma tarefa"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "duas tarefas"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "três tarefas"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "quatro tarefas"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "cinco tarefas"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "Toque em Seguinte para continuar."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "Prepare‑se para segurar no telefone no colo."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "Prepare‑se para segurar no telefone no colo, com a mão ESQUERDA."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "Prepare‑se para segurar no telefone no colo, com a mão DIREITA."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "Continue com o telefone no colo durante %ld segundos."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "Agora segure no telefone com o braço estendido à altura do ombro."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "Agora segure no telefone com a mão ESQUERDA, com o braço estendido à altura do ombro."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "Agora segure no telefone com a mão DIREITA, com o braço estendido à altura do ombro."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "Continue a segurar no telefone com o braço estendido durante %ld segundos."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "Agora segure no telefone à altura do ombro, com o cotovelo dobrado."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "Agora, segure no telefone com a mão ESQUERDA e, com o cotovelo dobrado, levante o braço à altura do ombro."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "Agora, segure no telefone com a mão DIREITA e, com o cotovelo dobrado, levante o braço à altura do ombro."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "Continue a segurar no telefone com o cotovelo dobrado durante %ld segundos."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "Agora, mantendo o cotovelo dobrado, toque repetidamente no nariz com o telefone."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "Agora, com a mão ESQUERDA e mantendo o cotovelo dobrado, toque repetidamente no nariz com o telefone."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "Agora, com a mão DIREITA e mantendo o cotovelo dobrado, toque repetidamente no nariz com o telefone."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "Continue a tocar com o telefone no nariz durante %ld segundos."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "Prepare‑se para acenar (rodando o pulso com a mão levantada)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "Prepare‑se para acenar com o telefone na mão ESQUERDA (rodando o pulso com a mão levantada)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "Prepare‑se para acenar com o telefone na mão DIREITA (rodando o pulso com a mão levantada)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "Continue a acenar com a mão durante %ld segundos."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "Agora mude o telefone para a mão ESQUERDA e passe à tarefa seguinte."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "Agora mude o telefone para a mão DIREITA e passe à tarefa seguinte."; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "Passar à tarefa seguinte."; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "Exercício concluído."; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "Ser‑lhe‑à pedido que efetue %@, na posição sentada, primeiro com o telefone numa mão e, depois, na outra."; +"TREMOR_SKIP_LEFT_HAND" = "Não consigo fazer este exercício com a mão ESQUERDA."; +"TREMOR_SKIP_RIGHT_HAND" = "Não consigo fazer este exercício com a mão DIREITA."; +"TREMOR_SKIP_NEITHER" = "Consigo fazer este exercício com ambas as mãos."; + /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "Não foi possível criar ficheiro"; "ERROR_DATALOGGER_COULD_NOT_FREE_SPACE" = "Não foi possível remover ficheiros de registo suficientes para atingir o limite."; @@ -378,6 +455,9 @@ "AX_IMAGE_CAPTURE_LABEL" = "Pré‑visualização da captura"; "AX_IMAGE_CAPTURED_LABEL" = "Imagem capturada"; +"AX_VIDEO_CAPTURE_LABEL" = "Pré‑visualização de vídeo"; +"AX_VIDEO_CAPTURED_LABEL" = "vídeo filmado"; + "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "Impossível colocar o disco com tamanho %@ no disco com tamanho %@"; "AX_TOWER_OF_HANOI_TARGET_DISK" = "Destino"; "AX_TOWER_OF_HANOI_TOWER" = "Torre"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "Tem disco com tamanhos %@"; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "Vazio"; -"AX_GRAPH_RANGE_FORMAT" = "Intervalo de %@ a %@"; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "Intervalo de %@ a %@"; +"AX_GRAPH_STACK_PREFIX" = "Pilha composta por"; "AX_GRAPH_AND_SEPARATOR" = " e "; "AX_GRAPH_POINT_%@" = "Ponto: %@"; diff --git a/ResearchKit/Localized/pt_PT.lproj/locversion.plist b/ResearchKit/Localized/pt_PT.lproj/locversion.plist index 0b48f52b..4e004b86 100644 --- a/ResearchKit/Localized/pt_PT.lproj/locversion.plist +++ b/ResearchKit/Localized/pt_PT.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale pt_PT LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/ro.lproj/ResearchKit.strings b/ResearchKit/Localized/ro.lproj/ResearchKit.strings index 6b193d5d..12bda8af 100644 --- a/ResearchKit/Localized/ro.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/ro.lproj/ResearchKit.strings @@ -120,7 +120,7 @@ "VERIFICATION_NAV_TITLE" = "Verificare"; "VERIFICATION_STEP_TITLE" = "Verificați-vă e‑mailul"; "RESEND_EMAIL_LABEL_MESSAGE" = "Apăsați pe linkul de mai jos dacă nu ați primit un e‑mail de verificare și ați dori retrimiterea acestuia."; -"RESEND_EMAIL_BUTTON_TITLE" = "Retrimite e‑mailul de verificare"; +"RESEND_EMAIL_BUTTON_TITLE" = "Retrimiteți e‑mailul de verificare"; /* Login step */ "LOGIN_CONTINUE_BUTTON_TITLE" = "Login"; @@ -141,6 +141,7 @@ "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "Sunt permise doar caractere numerice."; "PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "Indicator de progres pentru introducerea codului"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "%@ din %@ cifre introduse"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "Ați uitat codul de acces?"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "Imposibil de adăugat articolul din portchei."; @@ -167,6 +168,11 @@ "BOOL_NO" = "Nu"; "BOOL_YES" = "Da"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "cm"; +"MEASURING_UNIT_FT" = "ft"; +"MEASURING_UNIT_IN" = "in"; + /* Default placeholders to request answers in a questionnaire. */ "PLACEHOLDER_TEXT_OR_NUMBER" = "Apăsați pentru a răspunde"; "NULL_ANSWER" = "Selectați un răspuns"; @@ -189,11 +195,15 @@ "BUTTON_OPTION_SAVE" = "Salvați pentru mai târziu"; "BUTTON_OPTION_DISCARD" = "Abandonați rezultatele"; "BUTTON_OPTION_STOP_TASK" = "Încheiați sarcina"; +"BUTTON_SAVE" = "Salvați"; +"BUTTON_CLEAR_ANSWER" = "Degajați răspunsul"; +"BUTTON_READ_ONLY_MODE" = "Acest răspuns nu poate fi modificat."; /* General active tasks. */ "COUNTDOWN_LABEL" = "Activitatea începe peste"; "TASK_COMPLETE_TITLE" = "Activitate finalizată"; "TASK_COMPLETE_TEXT" = "Datele dvs. vor fi analizate și veți primi o notificare atunci când rezultatele vor fi disponibile."; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "timp rămas: %@ secunde."; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "Capturați imaginea"; @@ -203,6 +213,11 @@ "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "Nu a fost specificat un director de ieșire pentru imaginile capturate."; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "Imaginea capturată nu a putut fi salvată."; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "Porniți înregistrarea"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "Opriți înregistrarea"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "Recapturați clipul video"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "Fitness"; "FITNESS_DISTANCE_TITLE_FORMAT" = "Distanță (%@)"; @@ -222,16 +237,33 @@ "WALK_RETURN_INSTRUCTION_FORMAT" = "Întorceți-vă și mergeți înapoi la locul de pornire."; "WALK_OUTBOUND_INSTRUCTION_FORMAT" = "Mergeți până la %ld pași în linie dreaptă."; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "Găsiți un loc unde să puteți merge în siguranță pe un traseu, înainte și înapoi, în linie dreaptă. Încercați să mergeți continuu, întorcându‑vă la capătul traseului ca și cum ați ocoli un jalon.\n\nÎn continuare, vi se va solicita să vă întoarceți descriind un cerc complet, apoi să stați în repaus cu brațele întinse și picioarele depărtate la o distanță aproximativ egală cu lățimea umerilor."; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "Apăsați “Start” când sunteți gata să începeți.\nPuneți apoi telefonul în buzunar sau în geantă și urmați instrucțiunile audio."; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "Mergeți înainte și înapoi în linie dreaptă timp de %@. Mergeți așa cum o ați face‑o în mod normal."; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "Întoarceți‑vă descriind un cerc complet, apoi stați în repaus timp de %@."; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "Ați finalizat activitatea."; /* Tapping active task. */ "TAPPING_TASK_TITLE" = "Viteză de apăsare"; +"TAPPING_TASK_TITLE_RIGHT" = "Mâna dreaptă"; +"TAPPING_TASK_TITLE_LEFT" = "Mâna stângă"; "TAPPING_INTRO_TEXT" = "Această activitate vă măsoară viteza de apăsare cu degetele."; -"TAPPING_INTRO_TEXT_2_FORMAT" = "Așezați-vă telefonul pe o suprafață plată. Pe ecran vor apărea două butoane timp de %@. Folosind două degete de la aceeași mână, apăsați pe rând butoanele cât de repede puteți."; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "Puneți‑vă telefonul pe o suprafață plată."; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "Folosiți două degete de la aceeași mână pentru a apăsa alternativ butoanele de pe ecran."; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "Folosiți două degete de la mâna dreaptă pentru a apăsa alternativ butoanele de pe ecran."; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "Folosiți două degete de la mâna stângă pentru a apăsa alternativ butoanele de pe ecran."; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "Acum, repetați același test folosind mâna dreaptă."; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "Acum, repetați același test folosind mâna stângă."; +"TAPPING_INTRO_TEXT_2_FORMAT" = "Apăsați cu un deget, apoi cu celălalt. Încercați ca apăsările să se succeadă cât regulat cu putință. Continuați să apăsați timp de %@."; "TAPPING_CALL_TO_ACTION" = "Apăsați “Start” pentru a începe."; +"TAPPING_CALL_TO_ACTION_NEXT" = "Apăsați “Înainte” pentru a începe."; "TAP_BUTTON_TITLE" = "Apăsați"; "TOTAL_TAPS_LABEL" = "Total apăsări"; -"TAPPING_INSTRUCTION" = "Apăsați butoanele cât de repede puteți folosind două degete."; - +"TAPPING_INSTRUCTION" = "Apăsați butoanele cât de consecvent puteți folosind două degete."; +"TAPPING_INSTRUCTION_RIGHT" = "Apăsați butoanele folosind mâna DREAPTĂ."; +"TAPPING_INSTRUCTION_LEFT" = "Apăsați butoanele folosind mâna STÂNGĂ."; +"TAPPING_SKIP_TITLE" = "Omiteți această mână"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "Voce"; @@ -241,11 +273,14 @@ "AUDIO_INTENDED_USE" = "Această activitate vă evaluează vocea prin înregistrarea acesteia cu microfonul din partea de jos a telefonului dvs."; "AUDIO_TOO_LOUD_LABEL" = "Prea tare"; "AUDIO_GENERIC_ERROR_LABEL" = "Imposibil de înregistrat audio"; +"AUDIO_LEVEL_CHECK_LABEL" = "Așteptați să se verifice nivel zgomotului de fundal."; +"AUDIO_TOO_LOUD_MESSAGE" = "Nivelul zgomotului ambiental este prea puternic pentru a vă înregistra vocea. Mutați‑vă într‑un loc mai liniștit și reîncercați."; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "Apăsați “Înainte” când sunteți gata."; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "Audiometrie tonală"; "TONE_AUDIOMETRY_INTENDED_USE" = "Această activitate vă măsoară capacitatea de a auzi diferite sunete."; -"TONE_AUDIOMETRY_INTRO_TEXT" = "Înainte de a începe, conectați căștile și puneți-le pe cap."; +"TONE_AUDIOMETRY_INTRO_TEXT" = "Înainte de a începe, conectați și puneți‑vă căștile."; "TONE_AUDIOMETRY_CALL_TO_ACTION" = "Apăsați “Start” pentru a începe."; "TONE_AUDIOMETRY_PREP_TEXT" = "Ar trebui să auziți un ton acum. Reglați volumul folosind comenzile de pe partea laterală a dispozitivului.\n\nApăsați butonul când sunteți gata să începeți."; "TONE_AUDIOMETRY_INSTRUCTION" = "Apăsați butonul de fiecare dată când începeți să auziți un sunet."; @@ -339,6 +374,48 @@ "HOLE_PEG_TEST_TEXT" = "Ridicați cercul folosind două degete."; "HOLE_PEG_TEST_TEXT_2" = "Ridicați degetele pentru a elibera cercul."; +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "Activitate referitoare la tremor"; +"TREMOR_TEST_INTRO_1_DETAIL" = "Această activitate vă măsoară tremorul mâinilor în diverse poziții. Găsiți un loc unde să puteți sta confortabil pe durata activității."; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "Țineți telefonul în mâna mai afectată, ca în imaginea de mai jos."; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "Țineți telefonul în mâna DREAPTĂ, ca în imaginea de mai jos."; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "Țineți telefonul în mâna STÂNGĂ, ca în imaginea de mai jos."; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "Vi se va solicita să efectuați %@ stând cu telefonul în mână."; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "o sarcină"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "două sarcini"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "trei sarcini"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "patru sarcini"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "cinci sarcini"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "Apăsați “Înainte” pentru a continua."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "Pregătiți‑vă să țineți telefonul pe genunchi."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "Pregătiți‑vă să țineți telefonul pe genunchi cu mâna STÂNGĂ."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "Pregătiți‑vă să țineți telefonul pe genunchi cu mâna DREAPTĂ."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "Continuați să țineți telefonul pe genunchi timp de %ld secunde."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "Acum, țineți telefonul cu mâna întinsă la înălțimea umărului."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "Acum, țineți telefonul cu mâna STÂNGĂ întinsă la înălțimea umărului."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "Acum, țineți telefonul cu mâna DREAPTĂ întinsă la înălțimea umărului."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "Continuați să țineți telefonul cu mâna întinsă timp de %ld secunde."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "Acum, țineți telefonul la înălțimea umărului, cu cotul îndoit."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "Acum, țineți telefonul cu mâna STÂNGĂ la înălțimea umărului, cu cotul îndoit."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "Acum, țineți telefonul cu mâna DREAPTĂ la înălțimea umărului, cu cotul îndoit."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "Continuați să țineți telefonul cu cotul îndoit timp de %ld secunde."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "Acum, ținându‑vă cotul îndoit, atingeți‑vă nasul cu telefonul în mod repetat."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "Acum, ținându‑vă telefonul în mâna STÂNGĂ cu cotul îndoit, atingeți‑vă nasul cu telefonul în mod repetat."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "Acum, ținându‑vă telefonul în mâna DREAPTĂ cu cotul îndoit, atingeți‑vă nasul cu telefonul în mod repetat."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "Continuați să vă atingeți nasul cu telefonul timp de %ld secunde."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "Pregătiți‑vă să fluturați mâna, răsucind din încheietură."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "Pregătiți‑vă să fluturați mâna STÂNGĂ, ținând telefonul în aceasta și răsucind din încheietură."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "Pregătiți‑vă să fluturați mâna DREAPTĂ, ținând telefonul în aceasta și răsucind din încheietură."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "Continuați să fluturați mâna timp de %ld secunde."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "Acum, treceți telefonul în mâna STÂNGĂ și continuați cu sarcina următoare."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "Acum, treceți telefonul în mâna DREAPTĂ și continuați cu sarcina următoare."; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "Continuați cu sarcina următoare."; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "Activitate finalizată."; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "Vi se va solicita să efectuați %@ stând mai întâi cu telefonul într‑o mână, apoi în cealaltă."; +"TREMOR_SKIP_LEFT_HAND" = "Nu pot efectua această activitate cu mâna STÂNGĂ."; +"TREMOR_SKIP_RIGHT_HAND" = "Nu pot efectua această activitate cu mâna DREAPTĂ."; +"TREMOR_SKIP_NEITHER" = "Pot efectua această activitate cu ambele mâini."; + /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "Fișierul nu a putut fi creat"; "ERROR_DATALOGGER_COULD_NOT_FREE_SPACE" = "Nu au putut fi eliminate suficiente fișiere jurnal pentru atingerea pragului admis"; @@ -378,6 +455,9 @@ "AX_IMAGE_CAPTURE_LABEL" = "Previzualizare captură"; "AX_IMAGE_CAPTURED_LABEL" = "Imagine capturată"; +"AX_VIDEO_CAPTURE_LABEL" = "Previzualizare captură video"; +"AX_VIDEO_CAPTURED_LABEL" = "Clip video capturat"; + "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "Nu se poate plasa un disc de mărimea %@ pe un disc de mărimea %@"; "AX_TOWER_OF_HANOI_TARGET_DISK" = "Țintă"; "AX_TOWER_OF_HANOI_TOWER" = "Turn"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "Are disc de mărime %@"; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "Gol"; -"AX_GRAPH_RANGE_FORMAT" = "Interval de la %@ la %@"; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "Interval de la %@ la %@"; +"AX_GRAPH_STACK_PREFIX" = "Stiva compusă din"; "AX_GRAPH_AND_SEPARATOR" = " și "; "AX_GRAPH_POINT_%@" = "Punctul: %@"; diff --git a/ResearchKit/Localized/ro.lproj/locversion.plist b/ResearchKit/Localized/ro.lproj/locversion.plist index 6a843622..512a5013 100644 --- a/ResearchKit/Localized/ro.lproj/locversion.plist +++ b/ResearchKit/Localized/ro.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale ro LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/ru.lproj/ResearchKit.strings b/ResearchKit/Localized/ru.lproj/ResearchKit.strings index 7f2e0d5c..056a3e62 100644 --- a/ResearchKit/Localized/ru.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/ru.lproj/ResearchKit.strings @@ -141,6 +141,7 @@ "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "Можно использовать только цифры."; "PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "Индикатор хода ввода код‑пароля"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "Введено цифр: %@ из %@"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "Забыли код‑пароль?"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "Не удалось добавить объект связки ключей."; @@ -167,6 +168,11 @@ "BOOL_NO" = "Нет"; "BOOL_YES" = "Да"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "см"; +"MEASURING_UNIT_FT" = "фт"; +"MEASURING_UNIT_IN" = "дюйм."; + /* Default placeholders to request answers in a questionnaire. */ "PLACEHOLDER_TEXT_OR_NUMBER" = "Коснитесь, чтобы ответить"; "NULL_ANSWER" = "Выберите ответ"; @@ -189,11 +195,15 @@ "BUTTON_OPTION_SAVE" = "Сохранить на потом"; "BUTTON_OPTION_DISCARD" = "Сбросить результаты"; "BUTTON_OPTION_STOP_TASK" = "Завершить"; +"BUTTON_SAVE" = "Сохранить"; +"BUTTON_CLEAR_ANSWER" = "Очистить ответ"; +"BUTTON_READ_ONLY_MODE" = "Этот ответ нельзя изменить."; /* General active tasks. */ -"COUNTDOWN_LABEL" = "Упражнение начинается через"; -"TASK_COMPLETE_TITLE" = "Упражнение завершено"; +"COUNTDOWN_LABEL" = "Задача начинается через"; +"TASK_COMPLETE_TITLE" = "Задача выполнена"; "TASK_COMPLETE_TEXT" = "Данные будут проанализированы. Вы получите уведомление, когда результаты будут готовы."; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "Осталось %@ с."; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "Захват изображения"; @@ -203,18 +213,23 @@ "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "Не указана папка для сохранения полученных изображений."; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "Не удается сохранить полученное изображение."; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "Начать запись"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "Остановить запись"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "Снять видео еще раз"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "Выносливость"; "FITNESS_DISTANCE_TITLE_FORMAT" = "Расстояние (%@)"; "FITNESS_HEARTRATE_TITLE" = "Пульс (уд/мин)"; "FITNESS_SIT_INSTRUCTION_FORMAT" = "Сядьте поудобнее и сидите: %@."; "FITNESS_WALK_INSTRUCTION_FORMAT" = "Идите с максимальной скоростью: %@."; -"FITNESS_INTRO_TEXT_FORMAT" = "Во время этого упражнения программа следит за частотой Вашего пульса и измеряет, какое расстояние Вы можете пройти за: %1$@."; +"FITNESS_INTRO_TEXT_FORMAT" = "Во время выполнения этой задачи программа следит за частотой Вашего пульса и измеряет расстояние, которое Вы пройдете за %1$@."; "FITNESS_INTRO_2_TEXT_FORMAT" = "Идите по улице с максимальной скоростью: %1$@. После этого удобно сядьте и отдыхайте: %2$@. Коснитесь «Начать», чтобы приступить."; /* Short walk active task. */ "WALK_TASK_TITLE" = "Координация движений"; -"WALK_INTRO_TEXT" = "В этом упражнении проверяется координация движений при ходьбе и в положении стоя. Не выполняйте это упражнение, если Вы не можете передвигаться без посторонней помощи."; +"WALK_INTRO_TEXT" = "В этой задаче проверяется координация движений при ходьбе и в положении стоя. Не выполняйте эту задачу, если Вы не можете передвигаться без посторонней помощи."; "WALK_INTRO_2_TEXT_%ld" = "Найдите место, где Вы можете безопасно пройти %ld шагов по прямой линии без посторонней помощи."; "WALK_INTRO_2_DETAIL" = "Поместите телефон в карман или сумку и следуйте звуковым указаниям."; "WALK_STAND_VOICE_INSTRUCTION_FORMAT" = "Теперь стойте спокойно: %@."; @@ -222,29 +237,49 @@ "WALK_RETURN_INSTRUCTION_FORMAT" = "Развернитесь и пройдите до исходного местоположения."; "WALK_OUTBOUND_INSTRUCTION_FORMAT" = "Пройдите прямо %ld шагов."; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "Найдите место, где бы Вы могли ходить по прямой линии в обоих направлениях. Постарайтесь идти непрерывно, разворачиваясь на концах линии так, как будто обходите острый угол.\n\nЗатем Вы получите указание развернуться на 360 градусов и стоять спокойно, опустив руки вдоль тела и выставив ноги на ширине плеч."; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "Коснитесь «Начать», когда будете готовы приступить к выполнению задания.\nЗатем положите телефон в карман или сумку и следуйте звуковым указаниям."; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "Походите по прямой вперед и назад в течение %@. Идите нормальной походкой."; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "Развернитесь на 360 градусов и стойте спокойно %@."; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "Вы выполнили задачу."; /* Tapping active task. */ "TAPPING_TASK_TITLE" = "Скорость касания"; -"TAPPING_INTRO_TEXT" = "В этом упражнении оценивается скорость касания пальцами."; -"TAPPING_INTRO_TEXT_2_FORMAT" = "Положите телефон на ровную поверхность. На экране появятся две кнопки и будут отображаться: %@. Двумя пальцами одной руки попеременно касайтесь этих кнопок как можно быстрее."; +"TAPPING_TASK_TITLE_RIGHT" = "Правая рука"; +"TAPPING_TASK_TITLE_LEFT" = "Левая рука"; +"TAPPING_INTRO_TEXT" = "В этой задаче оценивается скорость касания пальцами."; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "Положите телефон на ровную поверхность."; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "Двумя пальцами одной руки попеременно касайтесь появляющихся кнопок на экране."; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "Двумя пальцами правой руки попеременно касайтесь появляющихся кнопок на экране."; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "Двумя пальцами левой руки попеременно касайтесь появляющихся кнопок на экране."; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "Теперь повторите это упражнение правой рукой."; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "Теперь повторите это упражнение левой рукой."; +"TAPPING_INTRO_TEXT_2_FORMAT" = "Коснитесь одним пальцем, затем другим. Старайтесь, чтобы касания были максимально регулярными. Продолжайте в течение %@."; "TAPPING_CALL_TO_ACTION" = "Чтобы приступить, коснитесь «Начать»."; +"TAPPING_CALL_TO_ACTION_NEXT" = "Чтобы начать, коснитесь «Далее»."; "TAP_BUTTON_TITLE" = "Коснитесь"; "TOTAL_TAPS_LABEL" = "Всего касаний"; -"TAPPING_INSTRUCTION" = "Касайтесь кнопок двумя пальцами как можно быстрее."; - +"TAPPING_INSTRUCTION" = "Касайтесь кнопок двумя пальцами с одинаковой скоростью."; +"TAPPING_INSTRUCTION_RIGHT" = "Касайтесь кнопок пальцами ПРАВОЙ руки."; +"TAPPING_INSTRUCTION_LEFT" = "Касайтесь кнопок пальцами ЛЕВОЙ руки."; +"TAPPING_SKIP_TITLE" = "Пропустить эту руку"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "Голос"; "AUDIO_CALL_TO_ACTION" = "Чтобы приступить, коснитесь «Начать»."; "AUDIO_INSTRUCTION" = "Произносите «Ааааа» в микрофон как можно дольше."; "AUDIO_INTRO_TEXT" = "Сделайте глубокий вдох и произнесите «Ааааа» в микрофон как можно дольше. Сохраняйте такую громкость голоса, чтобы полоски звука на диаграмме оставались синими."; -"AUDIO_INTENDED_USE" = "Во время этого упражнения программа записывает Вашу речь через микрофон телефона и затем оценивает характеристики Вашего голоса."; +"AUDIO_INTENDED_USE" = "Во время выполнения этой задачи программа записывает Вашу речь через микрофон телефона и затем оценивает характеристики Вашего голоса."; "AUDIO_TOO_LOUD_LABEL" = "Слишком громко"; "AUDIO_GENERIC_ERROR_LABEL" = "Не удается записать аудио."; +"AUDIO_LEVEL_CHECK_LABEL" = "Подождите, пока устройство измерит уровень фонового шума."; +"AUDIO_TOO_LOUD_MESSAGE" = "Уровень фонового шума слишком большой и не позволяет записать Ваш голос. Найдите более тихое место и повторите попытку."; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "Коснитесь «Далее», когда будете готовы."; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "Аудиометрия"; -"TONE_AUDIOMETRY_INTENDED_USE" = "В этом упражнении оценивается Ваша способность слышать различные звуки."; +"TONE_AUDIOMETRY_INTENDED_USE" = "В этой задаче оценивается Ваша способность слышать различные звуки."; "TONE_AUDIOMETRY_INTRO_TEXT" = "Перед началом подключите наушники и наденьте их."; "TONE_AUDIOMETRY_CALL_TO_ACTION" = "Чтобы приступить, коснитесь «Начать»."; "TONE_AUDIOMETRY_PREP_TEXT" = "Сейчас Вы услышите звук. Настройте громкость с помощью регулятора на боковой панели устройства.\n\nКоснитесь кнопки, когда будете готовы."; @@ -254,7 +289,7 @@ /* Spatial span memory active task. */ "SPATIAL_SPAN_MEMORY_TITLE" = "Пространственная память"; -"SPATIAL_SPAN_MEMORY_INTRO_TEXT_%@" = "Во время этого упражнения оцениваются возможности Вашей кратковременной пространственной памяти. Программа попросит Вас повторить последовательность, в которой подсвечиваются %@."; +"SPATIAL_SPAN_MEMORY_INTRO_TEXT_%@" = "Во время выполнения этой задачи оцениваются возможности Вашей кратковременной пространственной памяти. Программа попросит Вас повторить последовательность, в которой подсвечиваются %@."; "SPATIAL_SPAN_MEMORY_TARGET_PLURAL" = "цветы"; "SPATIAL_SPAN_MEMORY_TARGET_STANDALONE" = "цветы"; "SPATIAL_SPAN_MEMORY_INTRO_2_TEXT_%@" = "Некоторые %@ будут подсвечиваться поочередно в определенном порядке. Коснитесь этих %@ в том же порядке."; @@ -277,7 +312,7 @@ /* Reaction time active task. */ "REACTION_TIME_TASK_TITLE" = "Время реакции"; -"REACTION_TIME_TASK_INTENDED_USE" = "В этом упражнении измеряется время реакции на визуальный сигнал."; +"REACTION_TIME_TASK_INTENDED_USE" = "В этой задаче измеряется время реакции на визуальный сигнал."; "REACTION_TIME_TASK_INTRO_TEXT_FORMAT" = "Как только на экране появится синяя точка, встряхните устройство в любом направлении. Количество повторений этого задания: %D."; "REACTION_TIME_TASK_CALL_TO_ACTION" = "Чтобы приступить, коснитесь «Начать»."; "REACTION_TIME_TASK_ATTEMPTS_FORMAT" = "Попытка %@ из %@"; @@ -285,7 +320,7 @@ /* Tower of Hanoi active task */ "TOWER_OF_HANOI_TASK_TITLE" = "Ханойская башня"; -"TOWER_OF_HANOI_TASK_INTENDED_USE" = "В этом упражнении проверяется способность решать задачи."; +"TOWER_OF_HANOI_TASK_INTENDED_USE" = "В этой задаче проверяется способность решать сложные вопросы."; "TOWER_OF_HANOI_TASK_INTRO_TEXT" = "Переместите всю стопку на отмеченное цветом место за наименьшее число ходов."; "TOWER_OF_HANOI_TASK_TASK_CALL_TO_ACTION" = "Чтобы приступить, коснитесь «Начать»"; "TOWER_OF_HANOI_TASK_ACTIVE_STEP_INTRO_TEXT" = "Решить задачу"; @@ -294,7 +329,7 @@ /* Timed walk active task. */ "TIMED_WALK_TITLE" = "Ходьба на время"; -"TIMED_WALK_INTRO_DETAIL" = "В этом упражнении проверяется работоспособность нижних конечностей."; +"TIMED_WALK_INTRO_DETAIL" = "В этой задаче проверяется работоспособность нижних конечностей."; "TIMED_WALK_INTRO_2_TEXT_%@" = "Найдите место, предпочтительно снаружи, где Вы смогли бы безопасно идти %@ по прямой линии с максимальной скоростью. Не замедляйте шаг, пока не дойдете до финиша."; "TIMED_WALK_INTRO_2_DETAIL" = "Чтобы начать, коснитесь «Далее»."; "TIMED_WALK_FORM_TITLE" = "Вспомогательные приспособления"; @@ -327,7 +362,7 @@ /* Hole peg test active task. */ "HOLE_PEG_TEST_TITLE_%@" = "Тест «Вставляем %@ колышков»"; -"HOLE_PEG_TEST_INTRO_TEXT_%@" = "В этом упражнении проверяется работоспособность верхних конечностей. Вам предложат поместить колышек в лунку %@ раз(а)."; +"HOLE_PEG_TEST_INTRO_TEXT_%@" = "В этой задаче проверяется работоспособность верхних конечностей. Вам предложат поместить колышек в лунку %@ раз(а)."; "HOLE_PEG_TEST_INTRO_TEXT_2_LEFT_HAND_FIRST_%@" = "Проверены будут обе руки: левая и правая.\nВам потребуется поднять колышек как можно быстрее, поместить его в лунку, а затем, повторив упражнение %@ раз(а), удалить его снова %@ раз(а)."; "HOLE_PEG_TEST_INTRO_TEXT_2_RIGHT_HAND_FIRST_%@" = "Проверены будут обе руки: правая и левая.\nВам потребуется поднять колышек как можно быстрее, поместить его в лунку, а затем, повторив упражнение %@ раз(а), удалить его снова %@ раз(а)."; @@ -339,6 +374,48 @@ "HOLE_PEG_TEST_TEXT" = "Поднимите колышек двумя пальцами."; "HOLE_PEG_TEST_TEXT_2" = "Приподнимите пальцы, чтобы бросить колышек."; +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "Измерение дрожания рук"; +"TREMOR_TEST_INTRO_1_DETAIL" = "В этой задаче измеряется величина дрожания рук в различных положения. Найдите место, где бы Вы могли сидеть спокойно во время выполнения задачи."; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "Держите телефон рукой с более выраженными симптомами, как показано на изображении ниже."; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "Держите телефон ПРАВОЙ рукой, как показано на изображении ниже."; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "Держите телефон ЛЕВОЙ рукой, как показано на изображении ниже."; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "Вам нужно будет выполнить %@ в сидячем положении, держа телефон в руке."; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "одно задание"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "два задания"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "три задания"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "четыре задания"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "пять заданий"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "Коснитесь «Далее», чтобы продолжить."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "Приготовьтесь держать телефон на коленях."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "Приготовьтесь держать телефон на коленях в ЛЕВОЙ руке."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "Приготовьтесь держать телефон на коленях в ПРАВОЙ руке."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "Держите телефон на коленях в течение %ld с."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "Теперь держите телефон в вытянутой руке на уровне плеч."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "Теперь держите телефон в вытянутой ЛЕВОЙ руке на уровне плеч."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "Теперь держите телефон в вытянутой ПРАВОЙ руке на уровне плеч."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "Удерживайте телефон в вытянутой руке в течение %ld с."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "Теперь держите телефон в согнутой в локте руке на уровне плеч."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "Теперь держите телефон в согнутой в локте ЛЕВОЙ руке на уровне плеч."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "Теперь держите телефон в согнутой в локте ПРАВОЙ руке на уровне плеч."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "Удерживайте телефон в руке, согнутой в локте, в течение %ld с."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "Теперь держите телефон в согнутой в локте руке и несколько раз коснитесь им своего носа."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "Теперь держите телефон в согнутой в локте ЛЕВОЙ руке и несколько раз коснитесь им своего носа."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "Теперь держите телефон в согнутой в локте ПРАВОЙ руке и несколько раз коснитесь им своего носа."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "Касайтесь телефоном своего носа в течение %ld с."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "Подготовьтесь выполнить махание рукой (сгибая руку в запястье)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "Подготовьтесь выполнить махание ЛЕВОЙ рукой, держа в ней телефон (сгибая руку в запястье)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "Подготовьтесь выполнить махание ПРАВОЙ рукой, держа в ней телефон (сгибая руку в запястье)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "Продолжайте махать рукой в течение %ld с."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "Теперь возьмите телефон ЛЕВОЙ рукой и перейдите к следующему заданию."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "Теперь возьмите телефон ПРАВОЙ рукой и перейдите к следующему заданию."; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "Перейдите к следующему заданию."; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "Задача выполнена."; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "Вам нужно будет выполнить %@ в сидячем положении, держа телефон сначала в одной руке, затем в другой."; +"TREMOR_SKIP_LEFT_HAND" = "Я не могу выполнить эту задачу ЛЕВОЙ рукой."; +"TREMOR_SKIP_RIGHT_HAND" = "Я не могу выполнить эту задачу ПРАВОЙ рукой."; +"TREMOR_SKIP_NEITHER" = "Я могу выполнить эту задачу обеими руками."; + /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "Не удалось создать файл"; "ERROR_DATALOGGER_COULD_NOT_FREE_SPACE" = "Не удалось удалить файлы журналов, чтобы освободить достаточно места"; @@ -378,6 +455,9 @@ "AX_IMAGE_CAPTURE_LABEL" = "Просмотр изображения"; "AX_IMAGE_CAPTURED_LABEL" = "Отснятое изображение"; +"AX_VIDEO_CAPTURE_LABEL" = "Просмотр записанного видео"; +"AX_VIDEO_CAPTURED_LABEL" = "Снятое видео"; + "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "Нельзя положить кольцо размера %@ на кольцо размера %@"; "AX_TOWER_OF_HANOI_TARGET_DISK" = "Цель"; "AX_TOWER_OF_HANOI_TOWER" = "Башня"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "Содержит кольцо размеров: %@"; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "Пусто"; -"AX_GRAPH_RANGE_FORMAT" = "Диапазон от %@ до %@"; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "Диапазон от %@ до %@"; +"AX_GRAPH_STACK_PREFIX" = "Стопка из"; "AX_GRAPH_AND_SEPARATOR" = " и "; "AX_GRAPH_POINT_%@" = "Точка: %d"; diff --git a/ResearchKit/Localized/ru.lproj/locversion.plist b/ResearchKit/Localized/ru.lproj/locversion.plist index 47041a13..27734eb7 100644 --- a/ResearchKit/Localized/ru.lproj/locversion.plist +++ b/ResearchKit/Localized/ru.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale ru LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/sk.lproj/ResearchKit.strings b/ResearchKit/Localized/sk.lproj/ResearchKit.strings index ce61b86f..df0e2075 100644 --- a/ResearchKit/Localized/sk.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/sk.lproj/ResearchKit.strings @@ -127,20 +127,21 @@ "FORGOT_PASSWORD_BUTTON_TITLE" = "Zabudli ste heslo?"; /* Passcode step */ -"PASSCODE_PROMPT_MESSAGE" = "Zadajte heslo"; -"PASSCODE_CONFIRM_MESSAGE" = "Potvrďte heslo"; -"PASSCODE_SAVED_MESSAGE" = "Heslo uložené"; -"PASSCODE_AUTHENTICATED_MESSAGE" = "Heslo autentifikované"; -"PASSCODE_OLD_ENTRY_MESSAGE" = "Zadajte staré heslo"; -"PASSCODE_NEW_ENTRY_MESSAGE" = "Zadajte nové heslo"; -"PASSCODE_CONFIRM_NEW_ENTRY_MESSAGE" = "Potvrďte nové heslo"; -"PASSCODE_INVALID_ALERT_TITLE" = "Nesprávne heslo"; -"PASSCODE_INVALID_ALERT_MESSAGE" = "Heslá sa nezhodujú. Skúste to znovu."; +"PASSCODE_PROMPT_MESSAGE" = "Zadajte kód"; +"PASSCODE_CONFIRM_MESSAGE" = "Potvrďte kód"; +"PASSCODE_SAVED_MESSAGE" = "Kód uložený"; +"PASSCODE_AUTHENTICATED_MESSAGE" = "Kód autentifikovaný"; +"PASSCODE_OLD_ENTRY_MESSAGE" = "Zadajte starý kód"; +"PASSCODE_NEW_ENTRY_MESSAGE" = "Zadajte nový kód"; +"PASSCODE_CONFIRM_NEW_ENTRY_MESSAGE" = "Potvrďte nový kód"; +"PASSCODE_INVALID_ALERT_TITLE" = "Nesprávny kód"; +"PASSCODE_INVALID_ALERT_MESSAGE" = "Kódy sa nezhodujú. Skúste to znovu."; "PASSCODE_TOUCH_ID_MESSAGE" = "Autentifikujte sa pomocou Touch ID"; "PASSCODE_TOUCH_ID_ERROR_ALERT_TITLE" = "Chyba Touch ID"; "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "Povolené sú len číselné znaky."; -"PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "Indikátor priebehu zadávania hesla"; +"PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "Indikátor priebehu zadávania kódu"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "Zadané číslice: %@ z %@"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "Zabudli ste kód?"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "Nepodarilo sa pridať položku kľúčenky."; @@ -167,6 +168,11 @@ "BOOL_NO" = "Nie"; "BOOL_YES" = "Áno"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "cm"; +"MEASURING_UNIT_FT" = "ft"; +"MEASURING_UNIT_IN" = "in"; + /* Default placeholders to request answers in a questionnaire. */ "PLACEHOLDER_TEXT_OR_NUMBER" = "Klepnutím odpovedajte"; "NULL_ANSWER" = "Vyberte odpoveď"; @@ -189,11 +195,15 @@ "BUTTON_OPTION_SAVE" = "Uložiť na neskôr"; "BUTTON_OPTION_DISCARD" = "Zahodiť výsledky"; "BUTTON_OPTION_STOP_TASK" = "Ukončiť úlohu"; +"BUTTON_SAVE" = "Uložiť"; +"BUTTON_CLEAR_ANSWER" = "Vyčistiť odpoveď"; +"BUTTON_READ_ONLY_MODE" = "Túto odpoveď nie je možné upraviť."; /* General active tasks. */ "COUNTDOWN_LABEL" = "Aktivita sa spustí o"; "TASK_COMPLETE_TITLE" = "Aktivita dokončená"; "TASK_COMPLETE_TEXT" = "Vaše dáta budú analyzované a na výsledky budete upozornení po ich vyhodnotení."; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "Zostáva %@ s."; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "Zachytiť obrázok"; @@ -203,6 +213,11 @@ "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "Pre zachytené obrázky nebol uvedený žiadny cieľový priečinok."; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "Zachytený obrázok sa nepodarilo uložiť."; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "Spustiť nahrávanie"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "Zastaviť nahrávanie"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "Znovu zachytiť video"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "Kondícia"; "FITNESS_DISTANCE_TITLE_FORMAT" = "Vzdialenosť (%@)"; @@ -222,16 +237,33 @@ "WALK_RETURN_INSTRUCTION_FORMAT" = "Otočte sa a choďte späť na miesto, kde ste začali."; "WALK_OUTBOUND_INSTRUCTION_FORMAT" = "Prejdite rovno %ld krokov"; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "Nájdite si miesto, kde môžete bezpečne chodiť po priamke tam a naspäť. Skúste kráčať plynule a na konci sa otočiť, ako keby ste obchádzali kužeľ.\n\nV ďalšom kroku budete požiadaní o otočenie na mieste o 360 stupňov a následné státie v pokoji s pripaženými rukami a chodidlami na šírku ramien."; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "Keď ste pripravení, klepnite na Začať.\nPotom si vložte telefón do vrecka alebo tašky a nasledujte zvukové pokyny."; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "Kráčajte tam a naspäť po priamke po dobu %@. Chôdza by mala byť prirodzená."; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "Otočte sa o 360 stupňov a ostaňte stáť po dobu %@."; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "Dokončili ste aktivitu."; /* Tapping active task. */ "TAPPING_TASK_TITLE" = "Rýchlosť klepania"; +"TAPPING_TASK_TITLE_RIGHT" = "Pravá ruka"; +"TAPPING_TASK_TITLE_LEFT" = "Ľavá ruka"; "TAPPING_INTRO_TEXT" = "Táto aktivita zmeria rýchlosť klepania."; -"TAPPING_INTRO_TEXT_2_FORMAT" = "Položte telefón na rovný povrch. Na obrazovke sa na %@ zobrazia dve tlačidlá. Striedavo dvoma prstami jednej ruky na tieto tlačidlá čo najrýchlejšie klepte."; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "Položte telefón na vodorovnú plochu."; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "Pomocou dvoch prstov rovnakej ruky striedavo klepte na tlačidlá na obrazovke."; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "Pomocou dvoch prstov pravej ruky striedavo klepte na tlačidlá na obrazovke."; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "Pomocou dvoch prstov ľavej ruky striedavo klepte na tlačidlá na obrazovke."; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "Zopakujte tento test pomocou pravej ruky."; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "Zopakujte tento test pomocou ľavej ruky."; +"TAPPING_INTRO_TEXT_2_FORMAT" = "Klepnite najprv jedným prstom a potom druhým prstom. Skúste klepnutia načasovať tak, aby boli čo najviac pravidelné. Klepte po dobu %@."; "TAPPING_CALL_TO_ACTION" = "Začnite klepnutím na Začať."; +"TAPPING_CALL_TO_ACTION_NEXT" = "Pre spustenie klepnite na Ďalej."; "TAP_BUTTON_TITLE" = "Klepnite"; "TOTAL_TAPS_LABEL" = "Celkom klepnutí"; -"TAPPING_INSTRUCTION" = "Čo najrýchlejšie klepte na tlačidlá dvomi prstami."; - +"TAPPING_INSTRUCTION" = "Pravidelne klepte na tlačidlá dvomi prstami."; +"TAPPING_INSTRUCTION_RIGHT" = "Klepte na tlačidlá pomocou PRAVEJ ruky."; +"TAPPING_INSTRUCTION_LEFT" = "Klepte na tlačidlá pomocou ĽAVEJ ruky."; +"TAPPING_SKIP_TITLE" = "Preskočiť túto ruku"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "Hlas"; @@ -241,6 +273,9 @@ "AUDIO_INTENDED_USE" = "Táto aktivita vyhodnotí váš hlas, ktorý nahráte pomocou mikrofónu na spodku telefónu."; "AUDIO_TOO_LOUD_LABEL" = "Príliš nahlas"; "AUDIO_GENERIC_ERROR_LABEL" = "Nie je možné nahrať zvuk"; +"AUDIO_LEVEL_CHECK_LABEL" = "Počkajte na dokončenie merania úrovne hluku pozadia."; +"AUDIO_TOO_LOUD_MESSAGE" = "Úroveň hluku okolitého prostredia je príliš vysoká na nahrávanie hlasu. Presuňte sa na tichšie miesto a skúste to znovu."; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "Keď ste pripravení, klepnite na Ďalej."; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "Tónová audiometria"; @@ -339,6 +374,48 @@ "HOLE_PEG_TEST_TEXT" = "Zdvihnite kolík dvomi prstami."; "HOLE_PEG_TEST_TEXT_2" = "Nadvihnutím prstov pustite kolík."; +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "Trasenie rúk"; +"TREMOR_TEST_INTRO_1_DETAIL" = "Táto aktivita zmeria trasenie rúk v rôznych polohách. Po celý čas by ste mali pohodlne sedieť."; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "Držte telefón v ruke, ktorá je viac postihnutá, ako na obrázku nižšie."; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "Držte telefón v PRAVEJ ruke, ako na obrázku nižšie."; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "Držte telefón v ĽAVEJ ruke, ako na obrázku nižšie."; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "Budete požiadaní o vykonanie %@. Po celý čas budete sedieť s telefónom v ruke."; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "jednej úlohy"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "dvoch úloh"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "troch úloh"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "štyroch úloh"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "piatich úloh"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "Ak chcete pokračovať, klepnite na Ďalej."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "Pripravte sa na držanie telefónu v ruke."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "Pripravte sa na držanie telefónu v ĽAVEJ ruke."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "Pripravte sa na držanie telefónu v PRAVEJ ruke."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "Držte telefón v ruke po dobu %ld s."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "Držte telefón vo vystretej ruke vo výške ramien."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "Držte telefón vo vystretej ĽAVEJ ruke vo výške ramien."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "Držte telefón vo vystretej PRAVEJ ruke vo výške ramien."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "Držte telefón vo vystretej ruke po dobu %ld s."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "Držte telefón v ruke s pokrčeným lakťom vo výške ramien."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "Držte telefón v ĽAVEJ ruke s pokrčeným lakťom vo výške ramien."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "Držte telefón v PRAVEJ ruke s pokrčeným lakťom vo výške ramien."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "Držte telefón v ruke s pokrčeným lakťom po dobu %ld s."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "S pokrčeným lakťom sa opakovane dotýkajte nosa telefónom."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "S pokrčeným lakťom a telefónom v ĽAVEJ ruke sa opakovane dotýkajte nosa telefónom."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "S pokrčeným lakťom a telefónom v PRAVEJ ruke sa opakovane dotýkajte nosa telefónom."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "Dotýkajte sa nosa telefónom po dobu %ld s."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "Pripravte sa na mávanie, ako keď máva kráľovná (mávajte otáčaním zápästia)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "Pripravte sa na mávanie, ako keď máva kráľovná, s telefónom v ĽAVEJ ruke (mávajte otáčaním zápästia)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "Pripravte sa na mávanie, ako keď máva kráľovná, s telefónom v PRAVEJ ruke (mávajte otáčaním zápästia)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "Mávajte ako kráľovná po dobu %ld s."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "Uchopte telefón do ĽAVEJ ruky a pokračujte na ďalšiu úlohu."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "Uchopte telefón do PRAVEJ ruky a pokračujte na ďalšiu úlohu."; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "Pokračujte na ďalšiu úlohu."; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "Aktivita dokončená."; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "Budete požiadaní o vykonanie %@. Po celý čas budete sedieť s telefónom najprv v jednej a potom v druhej ruke."; +"TREMOR_SKIP_LEFT_HAND" = "Túto aktivitu nedokážem vykonať pomocou ĽAVEJ ruky."; +"TREMOR_SKIP_RIGHT_HAND" = "Túto aktivitu nedokážem vykonať pomocou PRAVEJ ruky."; +"TREMOR_SKIP_NEITHER" = "Túto aktivitu dokážem vykonať pomocou oboch rúk."; + /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "Nepodarilo sa vytvoriť súbor"; "ERROR_DATALOGGER_COULD_NOT_FREE_SPACE" = "Nepodarilo odstrániť dostatok súborov záznamov pre dosiahnutie prahovej hodnoty"; @@ -378,6 +455,9 @@ "AX_IMAGE_CAPTURE_LABEL" = "Náhľad"; "AX_IMAGE_CAPTURED_LABEL" = "Zachytený obrázok"; +"AX_VIDEO_CAPTURE_LABEL" = "Náhľad zachytávaného videa"; +"AX_VIDEO_CAPTURED_LABEL" = "Zachytené video"; + "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "Kotúč veľkosti %@ nie je možné umiestniť na kotúč veľkosti %@"; "AX_TOWER_OF_HANOI_TARGET_DISK" = "Cieľ"; "AX_TOWER_OF_HANOI_TOWER" = "Veža"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "Obsahuje kotúče o veľkostiach %@"; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "Prázdne"; -"AX_GRAPH_RANGE_FORMAT" = "Rozsah od %@ do %@"; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "Rozsah od %@ do %@"; +"AX_GRAPH_STACK_PREFIX" = "Pyramída pozostáva z"; "AX_GRAPH_AND_SEPARATOR" = " a "; "AX_GRAPH_POINT_%@" = "Bod: %@"; diff --git a/ResearchKit/Localized/sk.lproj/locversion.plist b/ResearchKit/Localized/sk.lproj/locversion.plist index a24db785..da119bbb 100644 --- a/ResearchKit/Localized/sk.lproj/locversion.plist +++ b/ResearchKit/Localized/sk.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale sk LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/sv.lproj/ResearchKit.strings b/ResearchKit/Localized/sv.lproj/ResearchKit.strings index aa1e6bd1..48cbe3c0 100644 --- a/ResearchKit/Localized/sv.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/sv.lproj/ResearchKit.strings @@ -118,7 +118,7 @@ /* Verification step */ "VERIFICATION_NAV_TITLE" = "Verifiering"; -"VERIFICATION_STEP_TITLE" = "Bekräfta ditt e-brev"; +"VERIFICATION_STEP_TITLE" = "Bekräfta din e-postadress"; "RESEND_EMAIL_LABEL_MESSAGE" = "Tryck på länken nedan om du inte fick något bekräftelsebrev och vill att det skickas på nytt."; "RESEND_EMAIL_BUTTON_TITLE" = "Skicka bekräftelsebrev igen"; @@ -141,6 +141,7 @@ "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "Endast numeriska tecken tillåts."; "PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "Förloppsindikator för angivande av lösenkod"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "%@ av %@ siffror angivna"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "Glömt lösenkoden?"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "Kunde inte lägga till nyckelringsobjekt."; @@ -167,6 +168,11 @@ "BOOL_NO" = "Nej"; "BOOL_YES" = "Ja"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "cm"; +"MEASURING_UNIT_FT" = "fot"; +"MEASURING_UNIT_IN" = "tum"; + /* Default placeholders to request answers in a questionnaire. */ "PLACEHOLDER_TEXT_OR_NUMBER" = "Tryck för att svara"; "NULL_ANSWER" = "Välj ett svar"; @@ -189,11 +195,15 @@ "BUTTON_OPTION_SAVE" = "Spara till senare"; "BUTTON_OPTION_DISCARD" = "Bortse från träffar"; "BUTTON_OPTION_STOP_TASK" = "Avsluta åtgärd"; +"BUTTON_SAVE" = "Spara"; +"BUTTON_CLEAR_ANSWER" = "Rensa svar"; +"BUTTON_READ_ONLY_MODE" = "Det här svaret kan inte ändras."; /* General active tasks. */ "COUNTDOWN_LABEL" = "Startar aktivitet om"; "TASK_COMPLETE_TITLE" = "Aktiviteten är klar"; "TASK_COMPLETE_TEXT" = "Dina data kommer att analyseras, och du blir meddelad när resultaten är klara."; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "%@ sekunder återstår."; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "Spara bild"; @@ -203,6 +213,11 @@ "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "Ingen utmatningskatalog har angetts för de sparade bilderna."; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "Bilden kunde inte sparas."; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "Starta inspelning"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "Stoppa inspelning"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "Spela in video igen"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "Motion"; "FITNESS_DISTANCE_TITLE_FORMAT" = "Distans (%@)"; @@ -222,16 +237,33 @@ "WALK_RETURN_INSTRUCTION_FORMAT" = "Vänd om och gå tillbaka till utgångsplatsen."; "WALK_OUTBOUND_INSTRUCTION_FORMAT" = "Gå upp till %ld steg i en rak linje."; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "Hitta en plats där du tryggt kan gå fram och tillbaka i en rät linje. Försök att gå kontinuerligt genom att vända dig om vid slutet av linjen, som om du gick runt en kon.\nDärefter blir du ombedd att vända dig ett helt varv och sedan stå stilla med armarna längs sidorna och fötterna i ungefär axelbredd."; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "Tryck på Kom igång när du är redo att börja.\nPlacera sedan telefonen i en ficka eller väska och följ de talade anvisningarna."; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "Gå fram och tillbaka i en rät linje under %@. Gå som du vanligtvis gör."; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "Vänd dig ett helt varv och stå sedan stilla under %@."; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "Du har slutfört aktiviteten."; /* Tapping active task. */ "TAPPING_TASK_TITLE" = "Tryckhastighet"; +"TAPPING_TASK_TITLE_RIGHT" = "Höger hand"; +"TAPPING_TASK_TITLE_LEFT" = "Vänster hand"; "TAPPING_INTRO_TEXT" = "Den här aktiviteten mäter din tryckhastighet."; -"TAPPING_INTRO_TEXT_2_FORMAT" = "Lägg telefonen på en plan yta. Två knappar kommer att synas på skärmen under %@. Använd två fingrar på samma hand till att omväxlande trycka på knapparna så fort du kan."; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "Lägg telefonen på en slät yta."; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "Använd två fingrar på samma hand till att omväxlande trycka på knapparna på skärmen."; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "Använd två fingrar på högra handen till att omväxlande trycka på knapparna på skärmen."; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "Använd två fingrar på vänstra handen till att omväxlande trycka på knapparna på skärmen."; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "Nu upprepar du samma test med högra handen."; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "Nu upprepar du samma test med vänstra handen."; +"TAPPING_INTRO_TEXT_2_FORMAT" = "Tryck med ett finger och sedan det andra. Försök att trycka i en så jämn takt som möjligt. Fortsätt trycka under %@."; "TAPPING_CALL_TO_ACTION" = "Tryck på Kom igång för att börja."; +"TAPPING_CALL_TO_ACTION_NEXT" = "Tryck på Nästa för att börja."; "TAP_BUTTON_TITLE" = "Tryck"; "TOTAL_TAPS_LABEL" = "Totalt antal tryckningar"; -"TAPPING_INSTRUCTION" = "Tryck på knapparna så fort du kan med två fingrar."; - +"TAPPING_INSTRUCTION" = "Tryck på knapparna så konsekvent du kan med två fingrar."; +"TAPPING_INSTRUCTION_RIGHT" = "Tryck på knapparna med HÖGRA handen."; +"TAPPING_INSTRUCTION_LEFT" = "Tryck på knapparna med VÄNSTRA handen."; +"TAPPING_SKIP_TITLE" = "Hoppa över den här handen"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "Röst"; @@ -241,6 +273,9 @@ "AUDIO_INTENDED_USE" = "Den här aktiviteten utvärderar din röst genom att spela in den med mikrofonen i nederkanten av telefonen."; "AUDIO_TOO_LOUD_LABEL" = "För högt"; "AUDIO_GENERIC_ERROR_LABEL" = "Kan inte spela in ljud"; +"AUDIO_LEVEL_CHECK_LABEL" = "Vänta medan vi kontrollerar ljudnivån på bakgrundsbullret."; +"AUDIO_TOO_LOUD_MESSAGE" = "Bakgrundsbullret är för högt för att spela in din röst. Gå någonstans tystare och försök igen."; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "Tryck på Nästa när du är redo."; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "Tonaudiometri"; @@ -339,6 +374,48 @@ "HOLE_PEG_TEST_TEXT" = "Lyft upp pinnen med två fingrar."; "HOLE_PEG_TEST_TEXT_2" = "Släpp pinnen genom att lyfta på fingrarna."; +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "Tremoraktivitet"; +"TREMOR_TEST_INTRO_1_DETAIL" = "Den här aktiviteten mäter darrningarna i dina händer i olika positioner. Hitta en plats där du kan sitta bekvämt under hela den här aktiviteten."; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "Håll telefonen i den mer påverkade handen enligt bilden nedan."; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "Håll telefonen i den HÖGRA handen enligt bilden nedan."; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "Håll telefonen i den VÄNSTRA handen enligt bilden nedan."; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "Du blir ombedd att utföra %@ medan du sitter med telefonen i handen."; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "en åtgärd"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "två åtgärder"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "tre åtgärder"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "fyra åtgärder"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "fem åtgärder"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "Tryck på nästa för att fortsätta."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "Förbered dig på att hålla telefonen i knät."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "Förbered dig på att hålla telefonen i knät med den VÄNSTRA handen."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "Förbered dig på att hålla telefonen i knät med den HÖGRA handen."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "Fortsätt hålla telefonen i knät under %ld sekunder."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "Håll nu telefonen med handen utsträckt i axelhöjd."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "Håll nu telefonen med den VÄNSTRA handen utsträckt i axelhöjd."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "Håll nu telefonen med den HÖGRA handen utsträckt i axelhöjd."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "Fortsätt hålla telefonen med handen utsträckt under %ld sekunder."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "Håll nu telefonen i axelhöjd med armbågen böjd."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "Håll nu telefonen med den VÄNSTRA handen i axelhöjd med armbågen böjd."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "Håll nu telefonen med den HÖGRA handen i axelhöjd med armbågen böjd."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "Fortsätt hålla telefonen med armbågen böjd under %ld sekunder"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "Nu ska du hålla armbågen böjd och röra vid näsan med telefonen flera gånger."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "Nu ska du hålla armbågen böjd med telefonen i den VÄNSTRA handen och röra vid näsan med telefonen flera gånger."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "Nu ska du hålla armbågen böjd med telefonen i den HÖGRA handen och röra vid näsan med telefonen flera gånger."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "Fortsätt röra vid näsan med telefonen under %ld sekunder"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "Förbered dig på att vinka kungligt (vinka genom att vrida på handleden)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "Förbered dig på att vinka kungligt med telefonen i den VÄNSTRA handen (vinka genom att vrida på handleden)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "Förbered dig på att vinka kungligt med telefonen i den HÖGRA handen (vinka genom att vrida på handleden)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "Fortsätt utföra en kunglig vinkning under %ld sekunder."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "Flytta nu telefonen till den VÄNSTRA handen och fortsätt med nästa åtgärd."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "Flytta nu telefonen till den HÖGRA handen och fortsätt med nästa åtgärd."; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "Fortsätt till nästa åtgärd."; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "Aktiviteten är klar."; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "Du blir ombedd att utföra %@ medan du sitter med telefonen i ena handen, och sedan en gång till med den andra handen."; +"TREMOR_SKIP_LEFT_HAND" = "Jag kan inte utföra den här aktiviteten med VÄNSTRA handen."; +"TREMOR_SKIP_RIGHT_HAND" = "Jag kan inte utföra den här aktiviteten med HÖGRA handen."; +"TREMOR_SKIP_NEITHER" = "Jag kan utföra den här aktiviteten med båda händerna."; + /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "Kunde inte skapa fil"; "ERROR_DATALOGGER_COULD_NOT_FREE_SPACE" = "Kunde inte ta bort tillräckligt många loggfiler för att nå tröskelvärdet"; @@ -378,6 +455,9 @@ "AX_IMAGE_CAPTURE_LABEL" = "Spara förhandsvisning"; "AX_IMAGE_CAPTURED_LABEL" = "Sparad bild"; +"AX_VIDEO_CAPTURE_LABEL" = "Förhandsvisning av videoinspelning"; +"AX_VIDEO_CAPTURED_LABEL" = "Inspelad video"; + "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "Ka inte placera skivan med storleken %@ på skivan med storleken %@"; "AX_TOWER_OF_HANOI_TARGET_DISK" = "Mål"; "AX_TOWER_OF_HANOI_TOWER" = "Torn"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "Har skivor med storlekarna %@"; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "Tomt"; -"AX_GRAPH_RANGE_FORMAT" = "Intervall från %@ till %@"; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "Intervall från %@ till %@"; +"AX_GRAPH_STACK_PREFIX" = "Trave som består av"; "AX_GRAPH_AND_SEPARATOR" = " och "; "AX_GRAPH_POINT_%@" = "Punkt: %@"; diff --git a/ResearchKit/Localized/sv.lproj/locversion.plist b/ResearchKit/Localized/sv.lproj/locversion.plist index 67178111..1da155dc 100644 --- a/ResearchKit/Localized/sv.lproj/locversion.plist +++ b/ResearchKit/Localized/sv.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale sv LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/th.lproj/ResearchKit.strings b/ResearchKit/Localized/th.lproj/ResearchKit.strings index 1945a557..c5c9fb1c 100644 --- a/ResearchKit/Localized/th.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/th.lproj/ResearchKit.strings @@ -88,7 +88,7 @@ /* Alerts for invalid location coordinates */ "LOCATION_QUESTION_PLACEHOLDER" = "ป้อนที่อยู่"; -"LOCATION_ERROR_TITLE" = "ไม่สามารถหาที่อยู่ที่กำหนดได้"; +"LOCATION_ERROR_TITLE" = "ไม่สามารถหาที่อยู่ที่ระบุได้"; "LOCATION_ERROR_MESSAGE_LOCATION_UNKNOWN" = "ไม่สามารถหาตำแหน่งที่ตั้งปัจจุบันของคุณ กรุณาป้อนที่อยู่หรือไปอยู่ในที่ที่มีสัญญาณ GPS ที่ดีกว่านี้หากเป็นไปได้"; "LOCATION_ERROR_MESSAGE_DENIED" = "การเข้าถึงบริการหาตำแหน่งที่ตั้งถูกปฏิเสธ กรุณาอนุญาตให้แอพนี้ใช้บริการหาตำแหน่งที่ตั้งได้ผ่านทางการตั้งค่า"; "LOCATION_ERROR_GEOCODE" = "ไม่มีผลการค้นหาสำหรับที่อยู่ที่ป้อน กรุณาตรวจสอบให้แน่ใจว่าที่อยู่ถูกต้อง"; @@ -141,6 +141,7 @@ "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "เฉพาะตัวเลขเท่านั้น"; "PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "สัญลักษณ์แสดงว่ากำลังป้อนรหัสผ่านตัวเลขอยู่"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "ตัวเลขที่ป้อนหลักที่ %@ จาก %@ หลัก"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "ลืมรหัสหรือไม่"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "ไม่สามารถเพิ่มรายการในพวงกุญแจ"; @@ -167,6 +168,11 @@ "BOOL_NO" = "ไม่"; "BOOL_YES" = "ใช่"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "ซม."; +"MEASURING_UNIT_FT" = "ฟุต"; +"MEASURING_UNIT_IN" = "นิ้ว"; + /* Default placeholders to request answers in a questionnaire. */ "PLACEHOLDER_TEXT_OR_NUMBER" = "แตะเพื่อตอบ"; "NULL_ANSWER" = "เลือกคำตอบ"; @@ -189,11 +195,15 @@ "BUTTON_OPTION_SAVE" = "บันทึกไว้ใช้ภายหลัง"; "BUTTON_OPTION_DISCARD" = "ละทิ้งผลลัพธ์"; "BUTTON_OPTION_STOP_TASK" = "สิ้นสุดงาน"; +"BUTTON_SAVE" = "บันทึก"; +"BUTTON_CLEAR_ANSWER" = "ล้างคำตอบ"; +"BUTTON_READ_ONLY_MODE" = "ไม่สามารถแก้ไขคำตอบนี้ได้"; /* General active tasks. */ "COUNTDOWN_LABEL" = "กำลังจะเริ่มกิจกรรมใน"; "TASK_COMPLETE_TITLE" = "กิจกรรมเสร็จสมบูรณ์"; "TASK_COMPLETE_TEXT" = "ข้อมูลของคุณจะได้รับการวินิจฉัยและคุณจะได้รับแจ้งเมื่อได้ผลลัพธ์ของคุณแล้ว"; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "เหลืออีก %@ วินาที"; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "จับภาพ"; @@ -203,6 +213,11 @@ "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "ไม่ได้ระบุสารบบผลลัพธ์ไว้สำหรับรูปภาพที่จับภาพ"; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "รูปภาพที่จับภาพไว้บันทึกไม่ได้"; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "เริ่มอัด"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "หยุดอัด"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "ถ่ายวิดีโออีกครั้ง"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "ฟิตเนส"; "FITNESS_DISTANCE_TITLE_FORMAT" = "ระยะทาง (%@)"; @@ -222,16 +237,33 @@ "WALK_RETURN_INSTRUCTION_FORMAT" = "หันหลัง แล้วเดินกลับไปจุดเริ่มต้น"; "WALK_OUTBOUND_INSTRUCTION_FORMAT" = "เดินตรงขึ้นไป %ld ก้าว"; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "หาสถานที่ที่คุณสามารถเดินไปมาเป็นเส้นตรงได้อย่างปลอดภัย ให้ลองเดินไปเรื่อยๆ จนสุดทางแล้วเดินกลับ เสมือนคุณเดินวนรอบกรวย\n\nจากนั้นระบบจะแนะนำให้คุณกลับหลังหัน แล้วยืนนิ่งๆ โดยแนบแขนไว้ข้างลำตัวและวางเท้าให้ห่างกันเท่ากับความกว้างของหัวไหล่"; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "แตะเริ่มต้น เมื่อคุณพร้อมที่จะเริ่มใช้งาน\nจากนั้นใส่โทรศัพท์ของคุณไว้ในกระเป๋ากางเกงหรือกระเป๋าถือ แล้วทำตามคำแนะนำด้วยเสียง"; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "เดินไปมาเป็นเส้นตรงนาน %@ โดยให้คุณเดินตามปกติ"; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "กลับหลังหันแล้วยืนนิ่งๆ นาน %@"; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "คุณทำกิจกรรมเสร็จสมบูรณ์แล้ว"; /* Tapping active task. */ "TAPPING_TASK_TITLE" = "ความเร็วของการแตะ"; +"TAPPING_TASK_TITLE_RIGHT" = "มือขวา"; +"TAPPING_TASK_TITLE_LEFT" = "มือซ้าย"; "TAPPING_INTRO_TEXT" = "กิจกรรมนี้จะวัดความเร็วในการแตะของคุณ"; -"TAPPING_INTRO_TEXT_2_FORMAT" = "วางโทรศัพท์ของคุณไว้บนพื้นผิวที่ราบเรียบ ปุ่มสองปุ่มจะปรากฏบนหน้าจอของคุณเป็นเวลา %@ ใช้สองนิ้วจากมือข้างเดียวกันแตะสลับกันที่ปุ่มที่ปรากฏขึ้นให้เร็วที่สุดเท่าที่จะทำได้"; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "วางโทรศัพท์ของคุณไว้บนพื้นผิวที่ราบเรียบ"; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "ใช้นิ้วมือข้างเดียวกันสองนิ้วแตะสลับกันที่ปุ่มบนหน้าจอ"; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "ใช้นิ้วมือข้างขวาสองนิ้วแตะสลับกันที่ปุ่มบนหน้าจอ"; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "ใช้นิ้วมือข้างซ้ายสองนิ้วแตะสลับกันที่ปุ่มบนหน้าจอ"; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "ตอนนี้ให้ทดสอบแบบเดียวกันซ้ำอีกครั้งโดยใช้มือขวา"; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "ตอนนี้ให้ทดสอบแบบเดียวกันซ้ำอีกครั้งโดยใช้มือซ้าย"; +"TAPPING_INTRO_TEXT_2_FORMAT" = "แตะหนึ่งนิ้ว แล้วตามด้วยอีกนิ้ว ลองจับเวลาการแตะของคุณโดยให้มีจังหวะเท่ากันมากที่สุด แตะต่อไปเรื่อยๆ เป็นเวลา %@"; "TAPPING_CALL_TO_ACTION" = "แตะเริ่มต้นใช้งานเพื่อเริ่ม"; +"TAPPING_CALL_TO_ACTION_NEXT" = "แตะถัดไปเพื่อเริ่ม"; "TAP_BUTTON_TITLE" = "แตะ"; "TOTAL_TAPS_LABEL" = "การแตะทั้งหมด"; -"TAPPING_INSTRUCTION" = "แตะปุ่มโดยใช้สองนิ้วให้เร็วที่สุดเท่าที่จะทำได้"; - +"TAPPING_INSTRUCTION" = "ใช้สองนิ้วแตะปุ่มโดยลงน้ำหนักให้สม่ำเสมอที่สุดเท่าที่จะทำได้"; +"TAPPING_INSTRUCTION_RIGHT" = "ใช้มือขวาแตะปุ่ม"; +"TAPPING_INSTRUCTION_LEFT" = "ใช้มือซ้ายแตะปุ่ม"; +"TAPPING_SKIP_TITLE" = "ข้ามมือข้างนี้"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "เสียง"; @@ -241,6 +273,9 @@ "AUDIO_INTENDED_USE" = "กิจกรรมนี้จะประเมินเสียงของคุณโดยใช้ไมโครโฟนที่อยู่ด้านล่างสุดของโทรศัพท์ของคุณบันทึกเสียงคุณไว้"; "AUDIO_TOO_LOUD_LABEL" = "ดังเกินไป"; "AUDIO_GENERIC_ERROR_LABEL" = "ไม่สามารถบันทึกเสียง"; +"AUDIO_LEVEL_CHECK_LABEL" = "โปรดรอในระหว่างที่เราตรวจสอบระดับเสียงรบกวนรอบข้าง"; +"AUDIO_TOO_LOUD_MESSAGE" = "ระดับเสียงแวดล้อมดังเกินกว่าที่จะอัดเสียงของคุณได้ โปรดย้ายไปอยู่บริเวณที่มีเสียงเบากว่านี้แล้วลองอีกครั้ง"; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "แตะถัดไปเมื่อพร้อม"; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "การตรวจวัดการได้ยินเสียง"; @@ -339,6 +374,48 @@ "HOLE_PEG_TEST_TEXT" = "ใช้นิ้วสองนิ้วหยิบหมุด"; "HOLE_PEG_TEST_TEXT_2" = "ปล่อยนิ้วเพื่อปล่อยหมุด"; +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "กิจกรรมวัดอาการสั่น"; +"TREMOR_TEST_INTRO_1_DETAIL" = "กิจกรรมนี้เป็นตัววัดอาการสั่นของมือคุณในอิริยาบทต่างๆ โปรดหาสถานที่ที่คุณสามารถนั่งได้อย่างสบายๆ ในระหว่างที่ทำกิจกรรมนี้"; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "ถือโทรศัพท์ไว้ในมือข้างที่มีอาการสั่นมากกว่าตามที่แสดงในรูปภาพด้านล่าง"; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "ถือโทรศัพท์ไว้ในมือขวาตามที่แสดงในรูปภาพด้านล่าง"; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "ถือโทรศัพท์ไว้ในมือซ้ายตามที่แสดงในรูปภาพด้านล่าง"; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "ระบบจะขอให้คุณทำ%@ในระหว่างที่นั่งถือโทรศัพท์ไว้ในมือ"; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "หนึ่งบททดสอบ"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "สองบททดสอบ"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "สามบททดสอบ"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "สี่บททดสอบ"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "ห้าบททดสอบ"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "แตะถัดไปเพื่อทำต่อ"; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "เตรียมถือโทรศัพท์ของคุณไว้บนตัก"; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "เตรียมถือโทรศัพท์ของคุณไว้บนตักโดยใช้มือซ้าย"; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "เตรียมถือโทรศัพท์ของคุณไว้บนตักโดยใช้มือขวา"; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "ถือโทรศัพท์ของคุณไว้นิ่งๆ บนตักนาน %ld วินาที"; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "ตอนนี้ให้วางโทรศัพท์ของคุณบนฝ่ามือแล้วถือไว้นิ่งๆ ที่ความสูงระดับไหล่"; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "ตอนนี้ให้วางโทรศัพท์ของคุณบนฝ่ามือข้างซ้ายแล้วถือไว้นิ่งๆ ที่ความสูงระดับไหล่"; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "ตอนนี้ให้วางโทรศัพท์ของคุณบนฝ่ามือข้างขวาแล้วถือไว้นิ่งๆ ที่ความสูงระดับไหล่"; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "วางโทรศัพท์ของคุณบนฝ่ามือแล้วถือไว้นิ่งๆ นาน %ld วินาที"; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "ตอนนี้ให้ถือโทรศัพท์ที่ความสูงระดับไหล่โดยงอข้อศอกของคุณไว้"; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "ตอนนี้ให้ใช้มือซ้ายถือโทรศัพท์ที่ความสูงระดับไหล่โดยงอข้อศอกของคุณไว้"; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "ตอนนี้ให้ใช้มือขวาถือโทรศัพท์ที่ความสูงระดับไหล่โดยงอข้อศอกของคุณไว้"; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "ถือโทรศัพท์ของคุณไว้นิ่งๆ โดยงอข้อศอกนาน %ld วินาที"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "ตอนนี้ให้งอข้อศอกของคุณไว้นิ่งๆ แล้วเอาโทรศัพท์มาแตะที่จมูกแบบสลับไปมาซ้ำๆ"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "ตอนนี้ให้ใช้มือซ้ายถือโทรศัพท์และงอข้อศอกของคุณไว้นิ่งๆ แล้วเอาโทรศัพท์มาแตะที่จมูกแบบสลับไปมาซ้ำๆ"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "ตอนนี้ให้ใช้มือขวาถือโทรศัพท์และงอข้อศอกของคุณไว้นิ่งๆ แล้วเอาโทรศัพท์มาแตะที่จมูกแบบสลับไปมาซ้ำๆ"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "เอาโทรศัพท์ของคุณมาแตะที่จมูกแบบสลับไปมานาน %ld วินาที"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "เตรียมทำท่าโบกมือเบาๆ (โบกมือโดยขยับแค่ข้อมือ)"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "เตรียมทำท่าโบกมือเบาๆ โดยใช้มือซ้ายที่ถือโทรศัพท์ไว้ (โบกมือโดยขยับแค่ข้อมือ)"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "เตรียมทำท่าโบกมือเบาๆ โดยใช้มือขวาที่ถือโทรศัพท์ไว้ (โบกมือโดยขยับแค่ข้อมือ)"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "ทำท่าโบกมือเบาๆ นาน %ld วินาที"; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "ตอนนี้ให้สลับไปใช้มือซ้ายถือโทรศัพท์แล้วทำบททดสอบถัดไปต่อ"; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "ตอนนี้ให้สลับไปใช้มือขวาถือโทรศัพท์แล้วทำบททดสอบถัดไปต่อ"; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "ทำบททดสอบถัดไปต่อ"; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "กิจกรรมเสร็จสมบูรณ์แล้ว"; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "ระบบจะขอให้คุณทำ%@ในระหว่างที่นั่งถือโทรศัพท์ไว้ในมือข้างหนึ่ง แล้วเปลี่ยนไปถือในมืออีกข้างหนึ่ง"; +"TREMOR_SKIP_LEFT_HAND" = "ฉันไม่สามารถทำกิจกรรมนี้ได้โดยใช้มือซ้าย"; +"TREMOR_SKIP_RIGHT_HAND" = "ฉันไม่สามารถทำกิจกรรมนี้ได้โดยใช้มือขวา"; +"TREMOR_SKIP_NEITHER" = "ฉันสามารถทำกิจกรรมนี้ได้โดยใช้มือทั้งสองข้าง"; + /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "สร้างไฟล์ไม่ได้"; "ERROR_DATALOGGER_COULD_NOT_FREE_SPACE" = "ไม่สามารถเอาไฟล์บันทึกออกให้เพียงพอกับค่าที่กำหนด"; @@ -378,6 +455,9 @@ "AX_IMAGE_CAPTURE_LABEL" = "แสดงตัวอย่างการเก็บภาพ"; "AX_IMAGE_CAPTURED_LABEL" = "รูปภาพที่จับภาพ"; +"AX_VIDEO_CAPTURE_LABEL" = "แสดงตัวอย่างภาพถ่ายวิดีโอ"; +"AX_VIDEO_CAPTURED_LABEL" = "วิดีโอที่ถ่ายไว้"; + "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "ไม่สามารถวางจานที่มีขนาด %@ บนจานที่มีขนาด %@"; "AX_TOWER_OF_HANOI_TARGET_DISK" = "เป้าหมาย"; "AX_TOWER_OF_HANOI_TOWER" = "หอคอย"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "มีจานที่มีขนาด %@"; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "ว่างเปล่า"; -"AX_GRAPH_RANGE_FORMAT" = "ช่วงตั้งแต่ %@ ถึง %@"; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "ช่วงตั้งแต่ %@ ถึง %@"; +"AX_GRAPH_STACK_PREFIX" = "สแต็คประกอบด้วย"; "AX_GRAPH_AND_SEPARATOR" = " และ "; "AX_GRAPH_POINT_%@" = "จุด: %@"; diff --git a/ResearchKit/Localized/th.lproj/locversion.plist b/ResearchKit/Localized/th.lproj/locversion.plist index 9e91c5c7..5d10170b 100644 --- a/ResearchKit/Localized/th.lproj/locversion.plist +++ b/ResearchKit/Localized/th.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale th LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/tr.lproj/ResearchKit.strings b/ResearchKit/Localized/tr.lproj/ResearchKit.strings index cbf517f8..0ada151c 100644 --- a/ResearchKit/Localized/tr.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/tr.lproj/ResearchKit.strings @@ -120,7 +120,7 @@ "VERIFICATION_NAV_TITLE" = "Doğrulama"; "VERIFICATION_STEP_TITLE" = "E-postanızı doğrulayın"; "RESEND_EMAIL_LABEL_MESSAGE" = "Doğrulama e-postası almadıysanız ve yeniden gönderilmesini istiyorsanız, lütfen aşağıdaki bağlantıya dokunun."; -"RESEND_EMAIL_BUTTON_TITLE" = "Doğrulama E-postasını Yeniden Gönder"; +"RESEND_EMAIL_BUTTON_TITLE" = "Doğrulamayı Yeniden E-postala"; /* Login step */ "LOGIN_CONTINUE_BUTTON_TITLE" = "Oturum Aç"; @@ -141,6 +141,7 @@ "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "Yalnızca sayısal karakterlere izin veriliyor."; "PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "Parola giriş ilerleme göstergesi"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "%@ / %@ basamak girildi"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "Parolayı mı Unuttunuz?"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "Anahtar zinciri öğesi eklenemedi."; @@ -167,6 +168,11 @@ "BOOL_NO" = "Hayır"; "BOOL_YES" = "Evet"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "cm"; +"MEASURING_UNIT_FT" = "fit"; +"MEASURING_UNIT_IN" = "inç"; + /* Default placeholders to request answers in a questionnaire. */ "PLACEHOLDER_TEXT_OR_NUMBER" = "Yanıtlamak için dokunun"; "NULL_ANSWER" = "Bir yanıt seçin"; @@ -189,11 +195,15 @@ "BUTTON_OPTION_SAVE" = "Sonrası İçin Kaydet"; "BUTTON_OPTION_DISCARD" = "Sonuçları At"; "BUTTON_OPTION_STOP_TASK" = "Görevi Bitir"; +"BUTTON_SAVE" = "Kaydet"; +"BUTTON_CLEAR_ANSWER" = "Yanıtı sil"; +"BUTTON_READ_ONLY_MODE" = "Bu yanıt değiştirilemiyor."; /* General active tasks. */ -"COUNTDOWN_LABEL" = "Etkinlik başlatılıyor"; -"TASK_COMPLETE_TITLE" = "Etkinlik Tamamlandı"; +"COUNTDOWN_LABEL" = "Aktivite başlatılıyor"; +"TASK_COMPLETE_TITLE" = "Aktivite Tamamlandı"; "TASK_COMPLETE_TEXT" = "Verileriniz incelenecek ve sonuçlarınız hazır olduğunuzda size haber verilecektir."; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "%@ saniye kaldı."; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "Görüntü Yakala"; @@ -203,18 +213,23 @@ "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "Yakalanan görüntülerin kaydedileceği bir dizin belirtilmemiş."; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "Yakalanan görüntü kaydedilemedi."; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "Kaydı Başlat"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "Kaydı Durdur"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "Videoyu Yeniden Yakala"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "Fitness"; "FITNESS_DISTANCE_TITLE_FORMAT" = "Mesafe (%@)"; "FITNESS_HEARTRATE_TITLE" = "Kalp Atış Hızı (vuruş/dk)"; "FITNESS_SIT_INSTRUCTION_FORMAT" = "Rahat bir şekilde %@ oturun."; "FITNESS_WALK_INSTRUCTION_FORMAT" = "Yürüyebildiğiniz kadar hızlı %@ yürüyün."; -"FITNESS_INTRO_TEXT_FORMAT" = "Bu etkinlik, kalp atış hızınızı izler ve %1$@ içinde ne kadar mesafe yürüyebileceğinizi ölçer."; +"FITNESS_INTRO_TEXT_FORMAT" = "Bu aktivite, kalp atış hızınızı izler ve %1$@ içinde ne kadar mesafe yürüyebileceğinizi ölçer."; "FITNESS_INTRO_2_TEXT_FORMAT" = "Açık havada yürüyebildiğiniz en yüksek hızda %1$@ yürüyün. Bitirdiğinizde, oturun ve %2$@ rahat bir şekilde dinlenin. Başlamak için Başla’ya dokunun."; /* Short walk active task. */ "WALK_TASK_TITLE" = "Yürüyüş Tarzı ve Denge"; -"WALK_INTRO_TEXT" = "Bu etkinlik, yürürken ve ayakta dururken yürüyüş tarzınızı ve dengenizi ölçer. Yardımsız, güvenli bir şekilde yürüyemiyorsanız devam etmeyin."; +"WALK_INTRO_TEXT" = "Bu aktivite, yürürken ve ayakta dururken yürüyüş tarzınızı ve dengenizi ölçer. Yardımsız, güvenli bir şekilde yürüyemiyorsanız devam etmeyin."; "WALK_INTRO_2_TEXT_%ld" = "Düz bir çizgide yaklaşık %ld adım yardımsız, güvenli bir şekilde yürüyebileceğiniz bir yer bulun."; "WALK_INTRO_2_DETAIL" = "Telefonunuzu cebinize veya çantanıza koyun ve sesli yönergeleri izleyin."; "WALK_STAND_VOICE_INSTRUCTION_FORMAT" = "Şimdi %@ süresince hareketsiz durun."; @@ -222,29 +237,49 @@ "WALK_RETURN_INSTRUCTION_FORMAT" = "Geriye dönün ve başladığınız yere yürüyün."; "WALK_OUTBOUND_INSTRUCTION_FORMAT" = "Düz bir çizgide en fazla %ld adım yürüyün."; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "Düz bir çizgide ileri geri güvenli bir şekilde yürüyebileceğiniz bir yer bulun. Yolunuzun sonunda geri dönüp devam ederek durmadan yürümeye çalışın.\n\nSonra tam daire etrafında dönmeniz, ardından da kollarınız yanlarda ve ayaklarınız omuz genişliğinde açık olarak hareketsiz durmanız istenecektir."; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "Başlamaya hazır olduğunuzda Başla’ya dokunun.\nSonra telefonunuzu cebinize veya çantanıza koyun ve sesli yönergeleri izleyin."; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "Düz bir çizgide ileri geri %@ yürüyün. Normal bir şekilde yürüyün."; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "Tam daire şeklinde dönün ve sonra %@ süresince hareketsiz durun."; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "Bu aktiviteyi tamamladınız."; /* Tapping active task. */ "TAPPING_TASK_TITLE" = "Dokunma Hızı"; -"TAPPING_INTRO_TEXT" = "Bu etkinlik dokunma hızınızı ölçer."; -"TAPPING_INTRO_TEXT_2_FORMAT" = "Telefonunuzu düz bir yüzeye koyun. %@ süresince ekranınızda iki düğme görünecektir. Aynı elinizin iki parmağını kullanarak düğmelere dokunabildiğiniz kadar çabuk sırayla dokunun."; +"TAPPING_TASK_TITLE_RIGHT" = "Sağ El"; +"TAPPING_TASK_TITLE_LEFT" = "Sol El"; +"TAPPING_INTRO_TEXT" = "Bu aktivite dokunma hızınızı ölçer."; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "Telefonunuzu düz bir yüzeye koyun."; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "Ekrandaki düğmelere dönüşümlü olarak dokunmak için aynı elinizin iki parmağını kullanın."; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "Ekrandaki düğmelere dönüşümlü olarak dokunmak için sağ elinizin iki parmağını kullanın."; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "Ekrandaki düğmelere dönüşümlü olarak dokunmak için sol elinizin iki parmağını kullanın."; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "Şimdi aynı testi sağ elinizi kullanarak tekrarlayın."; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "Şimdi aynı testi sol elinizi kullanarak tekrarlayın."; +"TAPPING_INTRO_TEXT_2_FORMAT" = "Tek parmağınızla, sonra diğeriyle dokunun. Mümkün olduğunca eşit zaman aralıklarıyla dokunmaya çalışın. %@ süresince dokunmaya devam edin."; "TAPPING_CALL_TO_ACTION" = "Başlamak için Başla’ya dokunun."; +"TAPPING_CALL_TO_ACTION_NEXT" = "Başlamak için İleri’ye dokunun."; "TAP_BUTTON_TITLE" = "Dokun"; "TOTAL_TAPS_LABEL" = "Toplam Dokunma"; -"TAPPING_INSTRUCTION" = "İki parmağınızı kullanarak düğmelere dokunabildiğiniz kadar çabuk dokunun."; - +"TAPPING_INSTRUCTION" = "İki parmağınızı kullanarak düğmelere dokunabildiğiniz kadar tutarlı dokunun."; +"TAPPING_INSTRUCTION_RIGHT" = "Düğmelere SAĞ elinizi kullanarak dokunun."; +"TAPPING_INSTRUCTION_LEFT" = "Düğmelere SOL elinizi kullanarak dokunun."; +"TAPPING_SKIP_TITLE" = "Bu eli atla"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "Ses"; "AUDIO_CALL_TO_ACTION" = "Başlamak için Başla’ya dokunun."; "AUDIO_INSTRUCTION" = "Mikrofona, söyleyebildiğiniz kadar uzun “Aaaaa” deyin."; "AUDIO_INTRO_TEXT" = "Derin bir nefes alın ve mikrofona, söyleyebildiğiniz kadar uzun “Aaaaa” deyin. Ses çubukları mavi kalacak şekilde ses yüksekliğini sabit tutmaya çalışın."; -"AUDIO_INTENDED_USE" = "Bu etkinlik, telefonunuzun alt tarafındaki mikrofonla kayıt yaparak sesinizi değerlendirir."; +"AUDIO_INTENDED_USE" = "Bu aktivite, telefonunuzun alt tarafındaki mikrofonla kayıt yaparak sesinizi değerlendirir."; "AUDIO_TOO_LOUD_LABEL" = "Çok Yüksek"; "AUDIO_GENERIC_ERROR_LABEL" = "Ses kaydı yapılamıyor"; +"AUDIO_LEVEL_CHECK_LABEL" = "Arkaplan gürültü düzeyi denetlenirken lütfen bekleyin."; +"AUDIO_TOO_LOUD_MESSAGE" = "Ortam gürültü düzeyi sesinizi kaydedemeyecek kadar yüksek. Lütfen daha sessiz bir yere gidip yeniden deneyin."; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "Hazır olduğunuzda İleri’ye dokunun."; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "Ses Tonu Odyometrisi"; -"TONE_AUDIOMETRY_INTENDED_USE" = "Bu işlem, farklı sesleri duyabilme becerinizi ölçer."; +"TONE_AUDIOMETRY_INTENDED_USE" = "Bu aktivite, farklı sesleri duyabilme becerinizi ölçer."; "TONE_AUDIOMETRY_INTRO_TEXT" = "\nBaşlamadan önce kulaklığınızı bağlayın ve takın."; "TONE_AUDIOMETRY_CALL_TO_ACTION" = "Başlamak için Başla’ya dokunun."; "TONE_AUDIOMETRY_PREP_TEXT" = "Bir ses duyacaksınız. Aygıtınızın yan tarafında bulunan denetimleri kullanarak ses seviyesini ayarlayın.\n\nBaşlamaya hazır olduğunuzda düğmeye dokunun."; @@ -254,7 +289,7 @@ /* Spatial span memory active task. */ "SPATIAL_SPAN_MEMORY_TITLE" = "Konumsal Bellek"; -"SPATIAL_SPAN_MEMORY_INTRO_TEXT_%@" = "Bu etkinlik, %@ görüntülerinin sırasını yinelemenizi isteyerek kısa süreli konumsal belleğinizi ölçer."; +"SPATIAL_SPAN_MEMORY_INTRO_TEXT_%@" = "Bu aktivite, %@ görüntülerinin sırasını yinelemenizi isteyerek kısa süreli konumsal belleğinizi ölçer."; "SPATIAL_SPAN_MEMORY_TARGET_PLURAL" = "çiçek"; "SPATIAL_SPAN_MEMORY_TARGET_STANDALONE" = "çiçek"; "SPATIAL_SPAN_MEMORY_INTRO_2_TEXT_%@" = "Bu %@ görüntülerinin bazıları teker teker yanacaktır. Bu %@ görüntülerine yandıkları sırada dokunun."; @@ -277,7 +312,7 @@ /* Reaction time active task. */ "REACTION_TIME_TASK_TITLE" = "Tepki Süresi"; -"REACTION_TIME_TASK_INTENDED_USE" = "Bu işlem, görünen bir ipucuna yanıt verebildiğiniz süreyi hesaplar."; +"REACTION_TIME_TASK_INTENDED_USE" = "Bu aktivite, görünen bir ipucuna yanıt verebildiğiniz süreyi hesaplar."; "REACTION_TIME_TASK_INTRO_TEXT_FORMAT" = "Ekranda mavi nokta görünür görünmez aygıtı herhangi bir yönde hızlıca sallayın. Bunu %D kez yapmanız istenecek."; "REACTION_TIME_TASK_CALL_TO_ACTION" = "Başlamak için Başla’ya dokunun."; "REACTION_TIME_TASK_ATTEMPTS_FORMAT" = "%@ / %@ Girişim"; @@ -285,7 +320,7 @@ /* Tower of Hanoi active task */ "TOWER_OF_HANOI_TASK_TITLE" = "Hanoi Kulesi"; -"TOWER_OF_HANOI_TASK_INTENDED_USE" = "Bu etkinlik bulmaca çözme becerilerinizi ölçer."; +"TOWER_OF_HANOI_TASK_INTENDED_USE" = "Bu aktivite bulmaca çözme becerilerinizi ölçer."; "TOWER_OF_HANOI_TASK_INTRO_TEXT" = "Tüm yığını, vurgulanan platforma mümkün olan en az hamlede taşıyın."; "TOWER_OF_HANOI_TASK_TASK_CALL_TO_ACTION" = "Başlamak için Başla’ya dokunun"; "TOWER_OF_HANOI_TASK_ACTIVE_STEP_INTRO_TEXT" = "Bulmacayı Çöz"; @@ -294,7 +329,7 @@ /* Timed walk active task. */ "TIMED_WALK_TITLE" = "Süreli Yürüme"; -"TIMED_WALK_INTRO_DETAIL" = "Bu etkinlik, alt ekstremite fonksiyonlarınızı ölçer."; +"TIMED_WALK_INTRO_DETAIL" = "Bu aktivite, alt ekstremite fonksiyonlarınızı ölçer."; "TIMED_WALK_INTRO_2_TEXT_%@" = "Düz bir çizgide mümkün olduğunca hızlı ama güvenli bir şekilde %@ yürüyebileceğiniz bir yer (tercihen dışarıda) bulun. Bitirme çizgisini geçene dek yavaşlamayın."; "TIMED_WALK_INTRO_2_DETAIL" = "Başlamak için İleri’ye dokunun."; "TIMED_WALK_FORM_TITLE" = "Yardımcı aygıt"; @@ -339,6 +374,48 @@ "HOLE_PEG_TEST_TEXT" = "İki parmağınızla daireyi alın."; "HOLE_PEG_TEST_TEXT_2" = "Daireyi bırakmak için parmakları kaldırın."; +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "Tremor Aktivitesi"; +"TREMOR_TEST_INTRO_1_DETAIL" = "Bu aktivite, çeşitli pozisyonlarda ellerinizdeki tremor düzeyini ölçer. Bu aktivite süresince rahat bir şekilde oturabileceğiniz bir yer bulun."; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "Telefonu aşağıdaki görüntüde gösterildiği gibi daha çok etkilenen elinizde tutun."; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "Telefonu aşağıdaki görüntüde gösterildiği gibi SAĞ elinizde tutun."; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "Telefonu aşağıdaki görüntüde gösterildiği gibi SOL elinizde tutun."; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "Telefonunuz elinizde otururken %@ gerçekleştirmeniz istenecektir."; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "bir görev"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "iki görev"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "üç görev"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "dört görev"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "beş görev"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "Devam etmek için İleri’ye dokunun."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "Telefonunuzu kucağınızda tutmaya hazırlanın."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "Telefonunuzu SOL elinizle kucağınızda tutmaya hazırlanın."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "Telefonunuzu SAĞ elinizle kucağınızda tutmaya hazırlanın."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "Telefonunuzu %ld saniye kucağınızda tutmaya devam edin."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "Şimdi telefonunuzu eliniz uzatılmış olarak omuz yüksekliğinde tutun."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "Şimdi telefonunuzu SOL eliniz uzatılmış olarak omuz yüksekliğinde tutun."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "Şimdi telefonunuzu SAĞ eliniz uzatılmış olarak omuz yüksekliğinde tutun."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "Telefonunuzu eliniz uzatılmış olarak %ld saniye tutmaya devam edin."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "Şimdi telefonunuzu dirseğiniz kıvrık olarak omuz yüksekliğinde tutun."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "Şimdi telefonunuzu dirseğiniz kıvrık olarak omuz yüksekliğinde SOL elinizle tutun."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "Şimdi telefonunuzu dirseğiniz kıvrık olarak omuz yüksekliğinde SAĞ elinizle tutun."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "Telefonunuzu dirseğiniz kıvrık olarak %ld saniye tutmaya devam edin"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "Şimdi dirseğinizi kıvrık tutarak telefonunuzu burnunuza tekrar tekrar dokundurun."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "Şimdi telefonunuz SOL elinizde olacak şekilde dirseğinizi kıvrık tutarak telefonunuzu burnunuza tekrar tekrar dokundurun."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "Şimdi telefonunuz SAĞ elinizde olacak şekilde dirseğinizi kıvrık tutarak telefonunuzu burnunuza tekrar tekrar dokundurun."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "Telefonunuzu burnunuza değdirmeye %ld saniye devam edin"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "Bileğinizi çevirerek el sallamaya hazırlanın."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "Telefonunuz SOL elinizde olacak şekilde bileğinizi çevirerek el sallamaya hazırlanın."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "Telefonunuz SAĞ elinizde olacak şekilde bileğinizi çevirerek el sallamaya hazırlanın."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "Bileğinizi çevirerek el sallamaya %ld saniye devam edin."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "Şimdi telefonunuzu SOL elinize alıp bir sonraki göreve geçin."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "Şimdi telefonunuzu SAĞ elinize alıp bir sonraki göreve geçin."; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "Bir sonraki göreve geçin."; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "Aktivite tamamlandı."; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "Telefonunuz önce bir elinizde, sonra diğer elinizde otururken %@ gerçekleştirmeniz istenecektir."; +"TREMOR_SKIP_LEFT_HAND" = "Bu aktiviteyi SOL elimle gerçekleştiremem."; +"TREMOR_SKIP_RIGHT_HAND" = "Bu aktiviteyi SAĞ elimle gerçekleştiremem."; +"TREMOR_SKIP_NEITHER" = "Bu aktiviteyi her iki elimle gerçekleştirebilirim."; + /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "Dosya yaratılamadı"; "ERROR_DATALOGGER_COULD_NOT_FREE_SPACE" = "Eşiğe ulaşmaya yetecek kadar günlük dosyası silinemedi"; @@ -378,6 +455,9 @@ "AX_IMAGE_CAPTURE_LABEL" = "Yakalanan görüntü önizlemesi"; "AX_IMAGE_CAPTURED_LABEL" = "Yakalanmış görüntü"; +"AX_VIDEO_CAPTURE_LABEL" = "Video yakalama önizlemesi"; +"AX_VIDEO_CAPTURED_LABEL" = "Yakalanmış video"; + "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "%@ büyüklüğündeki disk, %@ büyüklüğündeki diskin üzerine yerleştirilemez"; "AX_TOWER_OF_HANOI_TARGET_DISK" = "Hedef"; "AX_TOWER_OF_HANOI_TOWER" = "Kule"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "%@ büyüklüklerinde disk içeriyor"; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "Boş"; -"AX_GRAPH_RANGE_FORMAT" = "%@ - %@ aralığında"; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "%@ - %@ aralığında"; +"AX_GRAPH_STACK_PREFIX" = "Yığın içeriği:"; "AX_GRAPH_AND_SEPARATOR" = " ve "; "AX_GRAPH_POINT_%@" = "Nokta: %@"; diff --git a/ResearchKit/Localized/tr.lproj/locversion.plist b/ResearchKit/Localized/tr.lproj/locversion.plist index c7df2a8d..d7dd484c 100644 --- a/ResearchKit/Localized/tr.lproj/locversion.plist +++ b/ResearchKit/Localized/tr.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale tr LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/uk.lproj/ResearchKit.strings b/ResearchKit/Localized/uk.lproj/ResearchKit.strings index 1728e729..672f686b 100644 --- a/ResearchKit/Localized/uk.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/uk.lproj/ResearchKit.strings @@ -42,7 +42,7 @@ "CONSENT_PAGE_NUMBER_FORMAT" = "Сторінка %1$ld із %2$ld"; /* Consent section titles. */ -"CONSENT_SECTION_WELCOME" = "Ласкаво просимо!"; +"CONSENT_SECTION_WELCOME" = "Ласкаво просимо"; "CONSENT_SECTION_DATA_GATHERING" = "Збір даних"; "CONSENT_SECTION_PRIVACY" = "Приватність"; "CONSENT_SECTION_DATA_USE" = "Використання даних"; @@ -133,7 +133,7 @@ "PASSCODE_AUTHENTICATED_MESSAGE" = "Код допуску прийнято"; "PASSCODE_OLD_ENTRY_MESSAGE" = "Введіть старий код допуску"; "PASSCODE_NEW_ENTRY_MESSAGE" = "Введіть новий код допуску"; -"PASSCODE_CONFIRM_NEW_ENTRY_MESSAGE" = "Підтвердіть свій новий код"; +"PASSCODE_CONFIRM_NEW_ENTRY_MESSAGE" = "Підтвердьте свій новий код"; "PASSCODE_INVALID_ALERT_TITLE" = "Неправильний код допуску"; "PASSCODE_INVALID_ALERT_MESSAGE" = "Незбіг кодів. Спробуйте ще раз."; "PASSCODE_TOUCH_ID_MESSAGE" = "Будь ласка, засвідчіть своїм Touch ID"; @@ -141,6 +141,7 @@ "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "Дозволено тільки цифри."; "PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "Індикатор перебігу вводу коду допуску"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "Введено: %@ із %@"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "Забули код допуску?"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "Не вдалося додати елемент до В'язки."; @@ -155,8 +156,8 @@ "BLOOD_TYPE_AB-" = "AB(IV)-"; "BLOOD_TYPE_B+" = "B(III)+"; "BLOOD_TYPE_B-" = "B(III)-"; -"BLOOD_TYPE_O+" = "0(I)+"; -"BLOOD_TYPE_O-" = "0(I)-"; +"BLOOD_TYPE_O+" = "O(I)+"; +"BLOOD_TYPE_O-" = "O(I)-"; /* Gender values. */ "GENDER_FEMALE" = "Жіноча"; @@ -167,6 +168,11 @@ "BOOL_NO" = "Ні"; "BOOL_YES" = "Так"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "см"; +"MEASURING_UNIT_FT" = "фт"; +"MEASURING_UNIT_IN" = "дм"; + /* Default placeholders to request answers in a questionnaire. */ "PLACEHOLDER_TEXT_OR_NUMBER" = "Торкніть, щоб відповісти"; "NULL_ANSWER" = "Вибрати відповідь"; @@ -176,7 +182,7 @@ /* Button titles */ "BUTTON_AGREE" = "Погоджуюсь"; "BUTTON_CANCEL" = "Скасувати"; -"BUTTON_OK" = "ОК"; +"BUTTON_OK" = "OK"; "BUTTON_CLEAR" = "Очистити"; "BUTTON_DISAGREE" = "Не погоджуюсь"; "BUTTON_DONE" = "Готово"; @@ -189,11 +195,15 @@ "BUTTON_OPTION_SAVE" = "Пізніше"; "BUTTON_OPTION_DISCARD" = "Відхилити результати"; "BUTTON_OPTION_STOP_TASK" = "Завершити завдання"; +"BUTTON_SAVE" = "Зберегти"; +"BUTTON_CLEAR_ANSWER" = "Стерти відповідь"; +"BUTTON_READ_ONLY_MODE" = "Цю відповідь неможливо змінити."; /* General active tasks. */ -"COUNTDOWN_LABEL" = "Початок операції через"; -"TASK_COMPLETE_TITLE" = "Операцію завершено"; +"COUNTDOWN_LABEL" = "Початок тесту через"; +"TASK_COMPLETE_TITLE" = "Тест завершено"; "TASK_COMPLETE_TEXT" = "Ваші дані буде проаналізовано, і ви отримаєте сповіщення, коли будуть готові результати."; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "Лишлось %@ секунд."; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "Зробити знімок"; @@ -203,49 +213,74 @@ "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "Для зроблених знімків не вказано вихідного каталогу."; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "Не вдається зберегти зроблений знімок."; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "Почати запис"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "Зупинити запис"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "Зняти відео ще раз"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "Фітнес"; "FITNESS_DISTANCE_TITLE_FORMAT" = "Відстань (%@)"; "FITNESS_HEARTRATE_TITLE" = "Пульс (уд./хв)"; "FITNESS_SIT_INSTRUCTION_FORMAT" = "Сидіть зручно протягом %@."; "FITNESS_WALK_INSTRUCTION_FORMAT" = "Ідіть якомога швидше протягом %@."; -"FITNESS_INTRO_TEXT_FORMAT" = "Ця операція оцінює ваш серцевий ритм і обчислює, скільки ви можете пройти за %1$@."; +"FITNESS_INTRO_TEXT_FORMAT" = "Цей тест оцінює ваш серцевий ритм і обчислює, скільки ви можете пройти за %1$@."; "FITNESS_INTRO_2_TEXT_FORMAT" = "Ідіть надворі своєю найшвидшою ходою протягом %1$@. Завершивши, зручно сядьте і відпочивайте протягом %2$@. Щоб почати, торкніть «Розпочати»."; /* Short walk active task. */ "WALK_TASK_TITLE" = "Хода і рівновага"; -"WALK_INTRO_TEXT" = "Ця операція оцінює вашу ходу і рівновагу під час ходіння і стояння. Не продовжуйте, якщо ви не можете безпечно ходити без допомоги."; +"WALK_INTRO_TEXT" = "Цей тест оцінює вашу ходу і рівновагу під час ходіння і стояння. Не продовжуйте, якщо ви не можете безпечно ходити без допомоги."; "WALK_INTRO_2_TEXT_%ld" = "Знайдіть місце, де ви можете безпечно зробити без допомоги інших %ld кроків по прямій."; "WALK_INTRO_2_DETAIL" = "Покладіть свій телефон у кишеню або сумку, і виконуйте аудіоінструкції."; "WALK_STAND_VOICE_INSTRUCTION_FORMAT" = "Тепер не рухайтесь %@."; -"WALK_STAND_INSTRUCTION_FORMAT" = "Стійте, не рухаючись, протягом %@."; +"WALK_STAND_INSTRUCTION_FORMAT" = "Не рухайтесь протягом %@."; "WALK_RETURN_INSTRUCTION_FORMAT" = "Розверніться і йдіть туди, де ви почали."; "WALK_OUTBOUND_INSTRUCTION_FORMAT" = "Зробіть до %ld кроків по прямій."; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "Знайдіть місце, де ви можете безпечно пройти по прямій уперед і назад. Спробуйте не зупинятися, коли розвертаєтесь у кінці прямої, немов обходячи уявний конус.\n\nДалі вам буде запропоновано пройти повну відстань в обидва напрямки, зупинитися і не рухатися, тримаючи руки по боках і ноги на ширині плечей."; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "Торкніть «Розпочати», коли ви готові.\nПотім покладіть телефон у кишеню або сумку, і виконуйте аудіоінструкції."; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "Ідіть по прямій уперед і назад протягом %@. Ідіть, як ви ходите зазвичай."; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "Пройдіть повну відстань по колу, потім зупиніться і не рухайтесь протягом %@."; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "Ви завершили виконання тесту."; /* Tapping active task. */ "TAPPING_TASK_TITLE" = "Темп торкання"; -"TAPPING_INTRO_TEXT" = "Ця операція оцінює вашу швидкість торкання."; -"TAPPING_INTRO_TEXT_2_FORMAT" = "Покладіть телефон на рівну поверхню. На екрані з’являться дві кнопки для %@. Двома пальцями однієї руки по черзі торкайте кнопки якомога швидше."; +"TAPPING_TASK_TITLE_RIGHT" = "Права рука"; +"TAPPING_TASK_TITLE_LEFT" = "Ліва рука"; +"TAPPING_INTRO_TEXT" = "Цей тест оцінює вашу швидкість торкання."; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "Покладіть телефон на рівну поверхню."; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "Двома пальцями однієї руки по черзі торкайте кнопки на екрані."; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "Двома пальцями правої руки по черзі торкайте кнопки на екрані."; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "Двома пальцями лівої руки по черзі торкайте кнопки на екрані."; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "Тепер повторіть цей самий тест для правої руки."; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "Тепер повторіть цей самий тест для лівої руки."; +"TAPPING_INTRO_TEXT_2_FORMAT" = "Торкніть одним пальцем, потім іншим. Намагайтеся торкатися з якомога рівнішим інтервалом. Продовжуйте торкати протягом %@."; "TAPPING_CALL_TO_ACTION" = "Торкніть «Розпочати», щоб почати."; +"TAPPING_CALL_TO_ACTION_NEXT" = "Торкніть «Далі», щоб почати."; "TAP_BUTTON_TITLE" = "Торкнути"; "TOTAL_TAPS_LABEL" = "Всього дотиків"; -"TAPPING_INSTRUCTION" = "Торкайте кнопки якомога швидше двома пальцями."; - +"TAPPING_INSTRUCTION" = "Торкайте кнопки двома пальцями якомога послідовніше."; +"TAPPING_INSTRUCTION_RIGHT" = "Торкайте кнопки ПРАВОЮ рукою."; +"TAPPING_INSTRUCTION_LEFT" = "Торкайте кнопки ЛІВОЮ рукою."; +"TAPPING_SKIP_TITLE" = "Минути цю руку"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "Голос"; "AUDIO_CALL_TO_ACTION" = "Торкніть «Розпочати», щоб почати."; "AUDIO_INSTRUCTION" = "Вимовляйте «А-а-а-а» у мікрофон якомога довше."; "AUDIO_INTRO_TEXT" = "Зробіть глибокий подих і вимовляйте «А-а-а-а» у мікрофон якомога довше. Тримайте однакову гучність голосу, щоб смуги звуку залишалися синіми."; -"AUDIO_INTENDED_USE" = "Ця операція оцінює ваш голос, записуючи його через мікрофон внизу вашого телефону."; +"AUDIO_INTENDED_USE" = "Цей тест оцінює ваш голос, записуючи його через мікрофон внизу вашого телефону."; "AUDIO_TOO_LOUD_LABEL" = "Надто гучно"; "AUDIO_GENERIC_ERROR_LABEL" = "Не вдається записати аудіо"; +"AUDIO_LEVEL_CHECK_LABEL" = "Будь ласка, зачекайте, поки ми перевіряємо рівень фонового шуму."; +"AUDIO_TOO_LOUD_MESSAGE" = "Рівень навколишнього шуму зависокий для записування голосу. Будь ласка, повторіть спробу у тихішому місці."; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "Торкніть «Далі», коли ви готові."; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "Аудіометрія"; -"TONE_AUDIOMETRY_INTENDED_USE" = "Ця операція вимірює вашу здатність чути різні звуки."; -"TONE_AUDIOMETRY_INTRO_TEXT" = "Перед початком приєднайте і надягніть навушники."; +"TONE_AUDIOMETRY_INTENDED_USE" = "Цей тест вимірює вашу здатність чути різні звуки."; +"TONE_AUDIOMETRY_INTRO_TEXT" = "Перед початком приєднайте і надіньте навушники."; "TONE_AUDIOMETRY_CALL_TO_ACTION" = "Торкніть «Розпочати», щоб почати."; "TONE_AUDIOMETRY_PREP_TEXT" = "Зараз ви почуєте звук. Регулюйте гучність кнопками на боці вашого пристрою.\n\nТоркніть кнопку, коли ви готові починати."; "TONE_AUDIOMETRY_INSTRUCTION" = "Торкайте кнопку щоразу, коли почуєте звук."; @@ -254,7 +289,7 @@ /* Spatial span memory active task. */ "SPATIAL_SPAN_MEMORY_TITLE" = "Просторова пам’ять"; -"SPATIAL_SPAN_MEMORY_INTRO_TEXT_%@" = "Ця операція оцінює вашу короткострокову пам’ять, коли вам потрібно повторити порядок загоряння %@."; +"SPATIAL_SPAN_MEMORY_INTRO_TEXT_%@" = "Цей тест оцінює вашу короткострокову пам’ять, коли вам потрібно повторити порядок загоряння %@."; "SPATIAL_SPAN_MEMORY_TARGET_PLURAL" = "квітки"; "SPATIAL_SPAN_MEMORY_TARGET_STANDALONE" = "квітки"; "SPATIAL_SPAN_MEMORY_INTRO_2_TEXT_%@" = "Деякі %@ будуть загорятися по черзі. Торкайте ці %@ у такому самому порядку загоряння."; @@ -277,7 +312,7 @@ /* Reaction time active task. */ "REACTION_TIME_TASK_TITLE" = "Час реакції"; -"REACTION_TIME_TASK_INTENDED_USE" = "Ця операція оцінює час, потрібний вам, щоб зреагувати на візуальну команду."; +"REACTION_TIME_TASK_INTENDED_USE" = "Цей тест оцінює час, потрібний вам, щоб зреагувати на візуальну команду."; "REACTION_TIME_TASK_INTRO_TEXT_FORMAT" = "Трясніть пристроєм в будь-який бік, щойно на екрані з’явиться синя точка. Вас попросять зробити це кілька разів: %D."; "REACTION_TIME_TASK_CALL_TO_ACTION" = "Торкніть «Розпочати», щоб почати."; "REACTION_TIME_TASK_ATTEMPTS_FORMAT" = "Спроба %@ із %@"; @@ -301,7 +336,7 @@ "TIMED_WALK_FORM_TEXT" = "Вживайте однаковий допоміжний засіб для всіх тестів."; "TIMED_WALK_QUESTION_TEXT" = "Ви носите гомілкостопний біопротез?"; "TIMED_WALK_QUESTION_2_TITLE" = "Ви користуєтесь допоміжними засобами?"; -"TIMED_WALK_QUESTION_2_TEXT" = "Торкніть тут і виберіть відповідь"; +"TIMED_WALK_QUESTION_2_TEXT" = "Торкніть тут і виберіть відповідь."; "TIMED_WALK_QUESTION_2_CHOICE" = "Немає"; "TIMED_WALK_QUESTION_2_CHOICE_2" = "Однобічна тростина"; "TIMED_WALK_QUESTION_2_CHOICE_3" = "Однобічна милиця"; @@ -339,6 +374,48 @@ "HOLE_PEG_TEST_TEXT" = "Візьміть кілок двома пальцями."; "HOLE_PEG_TEST_TEXT_2" = "Підніміть пальці, щоб опустити кілок."; +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "Тест на тремтіння"; +"TREMOR_TEST_INTRO_1_DETAIL" = "Цей тест вимірює рівень тремтіння рук у різних положеннях. Знайдіть місце, де можна зручно сидіти протягом виконання цього тесту."; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "Тримайте телефон у найбільш ураженій руці, як це показано на зображенні нижче."; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "Тримайте телефон у ПРАВІЙ руці, як це показано на зображенні нижче."; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "Тримайте телефон у ЛІВІЙ руці, як це показано на зображенні нижче."; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "Вам буде запропоновано виконати %@, сидячи з телефоном у руці."; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "завдання"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "два завдання"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "три завдання"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "чотири завдання"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "пʼять завдань"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "Торкніть «Далі», щоб продовжити."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "Готуйтеся тримати телефон на колінах."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "Готуйтеся тримати телефон на колінах ЛІВОЮ рукою."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "Готуйтеся тримати телефон на колінах ПРАВОЮ рукою."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "Продовжуйте тримати телефон на колінах протягом %ld секунд."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "Тепер тримайте телефон рукою, протягнутою на рівні плечей."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "Тепер тримайте телефон у ЛІВІЙ руці із зігнутим ліктем, протягнутою на рівні плечей."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "Тепер тримайте телефон у ПРАВІЙ руці із зігнутим ліктем, протягнутою на рівні плечей."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "Продовжуйте тримати телефон простягнутою рукою протягом %ld секунд."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "Тепер тримайте телефон на висоті плечей у руці із зігнутим ліктем."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "Тепер тримайте телефон у ЛІВІЙ руці із зігнутим ліктем на рівні плечей."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "Тепер тримайте телефон у ПРАВІЙ руці із зігнутим ліктем на рівні плечей."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "Продовжуйте тримати телефон у руці із зігнутим ліктем протягом %ld секунд"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "Тепер, не розгинаючи ліктя, торкайтеся неодноразово телефоном свого носа."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "Тепер, тримаючи телефон у ЛІВІЙ руці із зігнутим ліктем, торкайтеся неодноразово телефоном свого носа."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "Тепер, тримаючи телефон у ПРАВІЙ руці із зігнутим ліктем, торкайтеся неодноразово телефоном свого носа."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "Продовжуйте торкатися телефоном свого носа протягом %ld секунд"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "Готуйтеся махати, як це робить королева (вертячи запʼястком)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "Готуйтеся махати телефоном у ЛІВІЙ руці, як це робить королева (вертячи запʼястком)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "Готуйтеся махати телефоном у ПРАВІЙ руці, як це робить королева (вертячи запʼястком)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "Продовжуйте виконувати махання королеви протягом %ld секунд."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "Тепер перекладіть телефон у ЛІВУ руку, і перейдіть до наступного завдання."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "Тепер перекладіть телефон у ПРАВУ руку, і перейдіть до наступного завдання."; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "Перейдіть до наступного завдання."; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "Тест виконано."; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "Вам буде запропоновано виконати %@, сидячи з телефоном спочатку в одній руці, потім ще раз в іншій руці."; +"TREMOR_SKIP_LEFT_HAND" = "Я не можу виконати цю дію ЛІВОЮ рукою."; +"TREMOR_SKIP_RIGHT_HAND" = "Я не можу виконати цю дію ПРАВОЮ рукою."; +"TREMOR_SKIP_NEITHER" = "Я можу виконати цю дію обома руками."; + /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "Не вдалося створити файл"; "ERROR_DATALOGGER_COULD_NOT_FREE_SPACE" = "Не вдалося вилучити достатньо файлів журналів, щоб досягти порогу"; @@ -371,13 +448,16 @@ "AX.MEMORY.TILE.ACTIVE" = "активна"; "AX.MEMORY.TILE.CORRECT" = "правильно"; -"AX.MEMORY.TILE.INCORRECT" = "неправильноб"; +"AX.MEMORY.TILE.INCORRECT" = "неправильно"; "AX.MEMORY.TILE.QUIESCENT" = "неактивний"; "AX.MEMORY.TILE.LABEL" = "Клітинка тесту на пам’ять"; "AX_IMAGE_CAPTURE_LABEL" = "Перегляд знімку"; "AX_IMAGE_CAPTURED_LABEL" = "Зроблений знімок"; +"AX_VIDEO_CAPTURE_LABEL" = "Перегляд знятого відео"; +"AX_VIDEO_CAPTURED_LABEL" = "Зняте відео"; + "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "Неможливо розмістити диск розміру %@ на диск розміру %@"; "AX_TOWER_OF_HANOI_TARGET_DISK" = "Ціль"; "AX_TOWER_OF_HANOI_TOWER" = "Вежа"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "Має диски з розмірами %@"; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "Пусто"; -"AX_GRAPH_RANGE_FORMAT" = "Діапазон від %@ до %@"; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "Діапазон від %@ до %@"; +"AX_GRAPH_STACK_PREFIX" = "Стос, створений із"; "AX_GRAPH_AND_SEPARATOR" = " і "; "AX_GRAPH_POINT_%@" = "Точка: %@"; diff --git a/ResearchKit/Localized/uk.lproj/locversion.plist b/ResearchKit/Localized/uk.lproj/locversion.plist index 331be32d..f1ef1b72 100644 --- a/ResearchKit/Localized/uk.lproj/locversion.plist +++ b/ResearchKit/Localized/uk.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale uk LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/vi.lproj/ResearchKit.strings b/ResearchKit/Localized/vi.lproj/ResearchKit.strings index 021616b7..066da6ac 100644 --- a/ResearchKit/Localized/vi.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/vi.lproj/ResearchKit.strings @@ -141,6 +141,7 @@ "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "Chỉ cho phép các ký tự số."; "PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "Chỉ báo tiến trình nhập mã khóa"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "Đã nhập %@ / %@ số"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "Bạn quên mật mã?"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "Không thể thêm mục Chuỗi khóa."; @@ -167,6 +168,11 @@ "BOOL_NO" = "Không"; "BOOL_YES" = "Có"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "cm"; +"MEASURING_UNIT_FT" = "ft"; +"MEASURING_UNIT_IN" = "in"; + /* Default placeholders to request answers in a questionnaire. */ "PLACEHOLDER_TEXT_OR_NUMBER" = "Chạm để trả lời"; "NULL_ANSWER" = "Chọn một câu trả lời"; @@ -189,11 +195,15 @@ "BUTTON_OPTION_SAVE" = "Lưu để Sau này"; "BUTTON_OPTION_DISCARD" = "Hủy bỏ Kết quả"; "BUTTON_OPTION_STOP_TASK" = "Kết thúc Nhiệm vụ"; +"BUTTON_SAVE" = "Lưu"; +"BUTTON_CLEAR_ANSWER" = "Xóa câu trả lời"; +"BUTTON_READ_ONLY_MODE" = "Không thể sửa đổi câu trả lời này."; /* General active tasks. */ "COUNTDOWN_LABEL" = "Bắt đầu hoạt động sau"; "TASK_COMPLETE_TITLE" = "Hoạt động Hoàn thành"; "TASK_COMPLETE_TEXT" = "Dữ liệu của bạn sẽ được phân tích và bạn sẽ được thông báo khi có kết quả."; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "Còn lại %@ giây."; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "Chụp Ảnh"; @@ -203,6 +213,11 @@ "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "Không có thư mục đầu ra nào được chỉ định cho hình ảnh được chụp."; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "Không thể lưu hình ảnh đã chụp."; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "Bắt đầu Ghi"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "Dừng Ghi"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "Quay lại Video"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "Thể dục"; "FITNESS_DISTANCE_TITLE_FORMAT" = "Quãng đường (%@)"; @@ -216,22 +231,39 @@ "WALK_TASK_TITLE" = "Dáng đi và Thăng bằng"; "WALK_INTRO_TEXT" = "Hoạt động này sẽ đo khả năng thăng bằng và dáng đi của bạn khi bạn đi bộ và đứng yên. Không tiếp tục hoạt động nếu bạn không thể đi bộ an toàn mà không có sự hỗ trợ."; "WALK_INTRO_2_TEXT_%ld" = "Tìm một nơi mà bạn có thể đi bộ an toàn, không cần có sự hỗ trợ, trong khoảng %ld bước theo đường thẳng."; -"WALK_INTRO_2_DETAIL" = "Cho điện thoại vào túi hoặc vào bao và làm theo lời hướng dẫn."; +"WALK_INTRO_2_DETAIL" = "Cho điện thoại vào túi hoặc vào giỏ và làm theo lời hướng dẫn."; "WALK_STAND_VOICE_INSTRUCTION_FORMAT" = "Bây giờ, đứng yên trong %@."; "WALK_STAND_INSTRUCTION_FORMAT" = "Đứng yên trong %@."; "WALK_RETURN_INSTRUCTION_FORMAT" = "Quay đầu lại và đi bộ về nơi bạn bắt đầu."; "WALK_OUTBOUND_INSTRUCTION_FORMAT" = "Đi bộ tối đa %ld bước theo đường thẳng."; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "Tìm một nơi mà bạn có thể đi bộ an toàn về phía sau và phía trước theo đường thẳng. Cố gắng đi bộ liên tục bằng cách rẽ cuối đường, như thể bạn đang đi bộ dọc quanh hình nón.\n\nTiếp theo, bạn sẽ được hướng dẫn đi vòng hình tròn, sau đó đứng yên với hai cánh tay ở bên sườn và hai chân dang rộng tầm chiều rộng của vai."; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "Chạm Bắt đầu khi bạn đã sẵn sàng bắt đầu.\nSau đó, cho điện thoại vào túi hoặc vào giỏ và làm theo hướng dẫn."; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "Đi bộ về phía sau và phía trước theo đường thẳng trong %@. Đi bộ bình thường."; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "Xoay một vòng tròn rồi đứng yên trong %@."; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "Bạn đã hoàn thành hoạt động."; /* Tapping active task. */ "TAPPING_TASK_TITLE" = "Tốc độ Chạm"; +"TAPPING_TASK_TITLE_RIGHT" = "Tay Phải"; +"TAPPING_TASK_TITLE_LEFT" = "Tay Trái"; "TAPPING_INTRO_TEXT" = "Hoạt động này sẽ đo tốc độ chạm của bạn."; -"TAPPING_INTRO_TEXT_2_FORMAT" = "Đặt điện thoại trên bề mặt phẳng. Hai nút sẽ xuất hiện trên màn hình trong %@. Dùng hai ngón tay trên một bàn tay thay phiên nhau chạm vào các nút đó nhanh hết mức có thể."; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "Đặt điện thoại trên một bề mặt phẳng."; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "Sử dụng hai ngón tay trên cùng bàn tay bạn để luân phiên chạm vào các nút trên màn hình."; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "Sử dụng hai ngón tay trên bàn tay phải bạn để luân phiên chạm vào các nút trên màn hình."; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "Sử dụng hai ngón tay trên bàn tay trái bạn để luân phiên chạm vào các nút trên màn hình."; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "Bây giờ, hãy lặp lại bài kiểm tra tương tự bằng tay phải của bạn."; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "Bây giờ, hãy lặp lại bài kiểm tra tương tự bằng tay trái của bạn."; +"TAPPING_INTRO_TEXT_2_FORMAT" = "Chạm một ngón tay, sau đó chạm ngón còn lại. Cố gắng tính thời gian số lần chạm chẵn nhất có thể. Tiếp tục chạm trong %@."; "TAPPING_CALL_TO_ACTION" = "Chạm vào Bắt đầu để bắt đầu."; +"TAPPING_CALL_TO_ACTION_NEXT" = "Chạm Tiếp để bắt đầu."; "TAP_BUTTON_TITLE" = "Chạm"; "TOTAL_TAPS_LABEL" = "Tổng Lần chạm"; -"TAPPING_INSTRUCTION" = "Chạm vào các nút bằng hai ngón tay với tốc độ nhanh hết mức có thể."; - +"TAPPING_INSTRUCTION" = "Chạm vào các nút bằng hai ngón tay liên tục nhất có thể."; +"TAPPING_INSTRUCTION_RIGHT" = "Chạm nút bằng tay PHẢI của bạn."; +"TAPPING_INSTRUCTION_LEFT" = "Chạm nút bằng tay TRÁI của bạn."; +"TAPPING_SKIP_TITLE" = "Bỏ qua tay này"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "Giọng nói"; @@ -241,6 +273,9 @@ "AUDIO_INTENDED_USE" = "Hoạt động này sẽ đánh giá giọng nói của bạn bằng cách ghi âm bằng micrô ở dưới đáy điện thoại."; "AUDIO_TOO_LOUD_LABEL" = "Quá To"; "AUDIO_GENERIC_ERROR_LABEL" = "Không thể ghi âm"; +"AUDIO_LEVEL_CHECK_LABEL" = "Vui lòng đợi trong khi chúng tôi kiểm tra độ ồn trong nền."; +"AUDIO_TOO_LOUD_MESSAGE" = "Độ ồn xung quanh quá lớn để ghi âm giọng nói của bạn. Vui lòng di chuyển đến nơi nào đó yên tĩnh hơn và thử lại."; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "Chạm Tiếp khi sẵn sàng."; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "Trắc thính Âm báo"; @@ -339,6 +374,48 @@ "HOLE_PEG_TEST_TEXT" = "Nhặt miếng gỗ bằng hai ngón tay."; "HOLE_PEG_TEST_TEXT_2" = "Nhấc các ngón tay để thả rơi miếng gỗ."; +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "Hoạt động Rung"; +"TREMOR_TEST_INTRO_1_DETAIL" = "Hoạt động này sẽ đo độ rung của các tay bạn ở những vị trí khác nhau. Tìm một địa điểm nơi bạn có thể ngồi thoải mái trong suốt hoạt động này."; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "Cầm điện thoại bằng tay thuận hơn như được hiển thị trong hình bên dưới."; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "Cầm điện thoại bằng tay PHẢI như được hiển thị trong hình bên dưới."; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "Cầm điện thoại bằng tay TRÁI như được hiển thị trong hình bên dưới."; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "Bạn sẽ được yêu cầu thực hiện %@ trong khi ngồi với điện thoại trên tay của mình."; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "một nhiệm vụ"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "hai nhiệm vụ"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "ba nhiệm vụ"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "bốn nhiệm vụ"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "năm nhiệm vụ"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "Chạm tiếp để tiếp tục."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "Chuẩn bị giữ điện thoại trong vạt áo của bạn."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "Chuẩn bị giữ điện thoại trong vạt áo bằng tay TRÁI của bạn."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "Chuẩn bị giữ điện thoại trong vạt áo bằng tay PHẢI của bạn."; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "Tiếp tục giữ điện thoại trong vạt áo bạn trong %ld giây."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "Bây giờ, hãy cầm điện thoại với tay của bạn duỗi ngang vai."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "Bây giờ, hãy cầm điện thoại với tay TRÁI của bạn duỗi ngang vai."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "Bây giờ, hãy cầm điện thoại với tay PHẢI của bạn duỗi ngang vai."; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "Tiếp tục cầm điện thoại với tay của bạn duỗi thẳng trong %ld giây."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "Bây giờ, hãy cầm điện thoại cao bằng vai cùng khủy tay bị gập."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "Bây giờ, hãy cầm điện thoại với tay TRÁI của bạn cao bằng vai cùng khủy tay bị gập."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "Bây giờ, hãy cầm điện thoại với tay PHẢI của bạn cao bằng vai cùng khủy tay bị gập."; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "Tiếp tục cầm điện thoại với khuỷu tay của bạn bị gập trong %ld giây"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "Bây giờ, hãy gập khuỷu tay bạn, chạm điện thoại vào mũi nhiều lần."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "Bây giờ, hãy giữ khuỷu tay bạn gập với điện thoại ở tay TRÁI, chạm điện thoại vào mũi nhiều lần."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "Bây giờ, hãy gập khuỷu tay bạn với điện thoại ở tay PHẢI, chạm điện thoại vào mũi nhiều lần."; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "Tiếp tục chạm điện thoại vào mũi bạn trong %ld giây"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "Chuẩn bị vẫy tay (vẫy bằng cách xoay cổ tay của bạn)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "Chuẩn bị vẫy tay với điện thoại ở tay TRÁI (vẫy bằng cách xoay cổ tay của bạn)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "Chuẩn bị vẫy tay với điện thoại ở tay PHẢI (vẫy bằng cách xoay cổ tay của bạn)."; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "Tiếp tục thực hiện vẫy tay trong %ld giây."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "Bây giờ, hãy chuyển điện thoại sang tay TRÁI và tiếp tục nhiệm vụ tiếp theo."; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "Bây giờ, hãy chuyển điện thoại sang tay PHẢI và tiếp tục nhiệm vụ tiếp theo."; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "Tiếp tục đến nhiệm vụ tiếp theo."; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "Hoạt động đã hoàn thành."; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "Bạn sẽ được yêu cầu thực hiện %@ trong khi ngồi với điện thoại trên một tay trước tiên, sau đó đặt lại lên tay còn lại."; +"TREMOR_SKIP_LEFT_HAND" = "Tôi không thể thực hiện hoạt động này bằng tay TRÁI."; +"TREMOR_SKIP_RIGHT_HAND" = "Tôi không thể thực hiện hoạt động này bằng tay PHẢI."; +"TREMOR_SKIP_NEITHER" = "Tôi có thể thực hiện hoạt động này bằng hai tay."; + /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "Không thể tạo tệp"; "ERROR_DATALOGGER_COULD_NOT_FREE_SPACE" = "Không thể xóa đủ số tệp bản ghi để đạt tới ngưỡng"; @@ -378,6 +455,9 @@ "AX_IMAGE_CAPTURE_LABEL" = "Chụp bản xem trước"; "AX_IMAGE_CAPTURED_LABEL" = "Ảnh được chụp"; +"AX_VIDEO_CAPTURE_LABEL" = "Xem trước quay video"; +"AX_VIDEO_CAPTURED_LABEL" = "Video được quay"; + "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "Không thể đặt đĩa có kích cỡ %@ lên trên đĩa có kích cỡ %@"; "AX_TOWER_OF_HANOI_TARGET_DISK" = "Đích"; "AX_TOWER_OF_HANOI_TOWER" = "Tháp"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "Có đĩa có kích cỡ %@"; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "Trống"; -"AX_GRAPH_RANGE_FORMAT" = "Trong khoảng từ %@ đến %@"; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "Trong khoảng từ %@ đến %@"; +"AX_GRAPH_STACK_PREFIX" = "Ngăn xếp bao gồm"; "AX_GRAPH_AND_SEPARATOR" = " và "; "AX_GRAPH_POINT_%@" = "Điểm: %@"; diff --git a/ResearchKit/Localized/vi.lproj/locversion.plist b/ResearchKit/Localized/vi.lproj/locversion.plist index efe5dd22..0adccc64 100644 --- a/ResearchKit/Localized/vi.lproj/locversion.plist +++ b/ResearchKit/Localized/vi.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale vi LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/zh_CN.lproj/ResearchKit.strings b/ResearchKit/Localized/zh_CN.lproj/ResearchKit.strings index a240360f..1b5382a9 100644 --- a/ResearchKit/Localized/zh_CN.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/zh_CN.lproj/ResearchKit.strings @@ -34,7 +34,7 @@ "CONSENT_NAME_FAMILY" = "姓"; "CONSENT_NAME_PLACEHOLDER" = "必填"; "CONSENT_REVIEW_TITLE" = "检查"; -"CONSENT_REVIEW_INSTRUCTION" = "请检查下方的表单,确认后请轻按“同意”。"; +"CONSENT_REVIEW_INSTRUCTION" = "请检查下方的表单,确认后请轻点“同意”。"; "CONSENT_REVIEW_ALERT_TITLE" = "检查"; "CONSENT_SIGNATURE_TITLE" = "签名"; "CONSENT_SIGNATURE_INSTRUCTION" = "请用手指在下方的横线上签名。"; @@ -141,6 +141,7 @@ "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "仅允许数字字符。"; "PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "口令输入进度指示器"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "已输入 %@/%@ 位"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "忘记了密码?"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "无法添加钥匙串项。"; @@ -167,11 +168,16 @@ "BOOL_NO" = "否"; "BOOL_YES" = "是"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "厘米"; +"MEASURING_UNIT_FT" = "英尺"; +"MEASURING_UNIT_IN" = "英寸"; + /* Default placeholders to request answers in a questionnaire. */ -"PLACEHOLDER_TEXT_OR_NUMBER" = "轻按来回答"; +"PLACEHOLDER_TEXT_OR_NUMBER" = "轻点来回答"; "NULL_ANSWER" = "选择一个答案"; -"PLACEHOLDER_IMAGE_CHOICES" = "轻按来选择"; -"PLACEHOLDER_LONG_TEXT" = "轻按来书写"; +"PLACEHOLDER_IMAGE_CHOICES" = "轻点来选择"; +"PLACEHOLDER_LONG_TEXT" = "轻点来书写"; /* Button titles */ "BUTTON_AGREE" = "同意"; @@ -189,11 +195,15 @@ "BUTTON_OPTION_SAVE" = "存储以稍后查看"; "BUTTON_OPTION_DISCARD" = "放弃结果"; "BUTTON_OPTION_STOP_TASK" = "结束任务"; +"BUTTON_SAVE" = "存储"; +"BUTTON_CLEAR_ANSWER" = "清除答案"; +"BUTTON_READ_ONLY_MODE" = "此答案无法修改。"; /* General active tasks. */ "COUNTDOWN_LABEL" = "即将开始活动"; "TASK_COMPLETE_TITLE" = "活动完成"; "TASK_COMPLETE_TEXT" = "将对您的数据进行分析并在结果可用时通知您。"; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "还剩 %@ 秒钟。"; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "捕捉图像"; @@ -203,6 +213,11 @@ "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "未指定捕捉图像的输出目录。"; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "无法存储捕捉的图像。"; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "开始录制"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "停止录制"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "重新采集视频"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "健身"; "FITNESS_DISTANCE_TITLE_FORMAT" = "距离(%@)"; @@ -210,7 +225,7 @@ "FITNESS_SIT_INSTRUCTION_FORMAT" = "请静坐 %@。"; "FITNESS_WALK_INSTRUCTION_FORMAT" = "以最快速度步行 %@。"; "FITNESS_INTRO_TEXT_FORMAT" = "本活动监控您的心率并测量 %1$@内的步行距离。"; -"FITNESS_INTRO_2_TEXT_FORMAT" = "请在室外以最快的速度步行 %1$@。步行完成后,请静坐 %2$@。若要开始,请轻按“开始”。"; +"FITNESS_INTRO_2_TEXT_FORMAT" = "请在室外以最快的速度步行 %1$@。步行完成后,请静坐 %2$@。若要开始,请轻点“开始”。"; /* Short walk active task. */ "WALK_TASK_TITLE" = "步态和平衡"; @@ -222,33 +237,53 @@ "WALK_RETURN_INSTRUCTION_FORMAT" = "转身并走回起点。"; "WALK_OUTBOUND_INSTRUCTION_FORMAT" = "请直线步行最多 %ld 步。"; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "找到一处您可以沿直线安全往返的地方。在路线的尽头转弯,不要停下来,就好像绕着交通锥转圈一样。\n\n接下来会要求您转一圈,然后站立不动,双手放在两侧,双脚张开,与肩同宽。"; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "准备就绪后,轻点“开始”。\n将手机放入口袋或背包中,然后跟随音频指示操作。"; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "沿直线往返 %@。尽可能跟平时一样走动。"; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "走完一圈后站立不动,坚持 %@。"; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "您已经完成了本活动。"; /* Tapping active task. */ -"TAPPING_TASK_TITLE" = "轻按速度"; -"TAPPING_INTRO_TEXT" = "本活动测量您的轻按速度。"; -"TAPPING_INTRO_TEXT_2_FORMAT" = "请将您的手机置于平面。两个按钮将在屏幕上显示 %@。使用同一只手的两个手指,以最快速度交替轻按这两个按钮。"; -"TAPPING_CALL_TO_ACTION" = "轻按“开始”来进行测试。"; -"TAP_BUTTON_TITLE" = "轻按"; -"TOTAL_TAPS_LABEL" = "轻按总次数"; -"TAPPING_INSTRUCTION" = "使用两个手指以最快速度轻按按钮。"; - +"TAPPING_TASK_TITLE" = "轻点速度"; +"TAPPING_TASK_TITLE_RIGHT" = "右手"; +"TAPPING_TASK_TITLE_LEFT" = "左手"; +"TAPPING_INTRO_TEXT" = "本活动测量您的轻点速度。"; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "把手机放在平面上。"; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "用同一只手上的两个手指来轮流轻点屏幕上的按钮。"; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "用右手上的两个手指来轮流轻点屏幕上的按钮。"; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "用左手上的两个手指来轮流轻点屏幕上的按钮。"; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "现在用右手重复相同的测试。"; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "现在用左手重复相同的测试。"; +"TAPPING_INTRO_TEXT_2_FORMAT" = "用一个手指轻点,然后用另一个手指轻点。尽量保持均匀的轻点间隔。持续轻点 %@。"; +"TAPPING_CALL_TO_ACTION" = "轻点“开始”来进行测试。"; +"TAPPING_CALL_TO_ACTION_NEXT" = "轻点“下一步”来开始。"; +"TAP_BUTTON_TITLE" = "轻点"; +"TOTAL_TAPS_LABEL" = "轻点总次数"; +"TAPPING_INSTRUCTION" = "用两个手指尽可能以均匀的速度轻点按钮。"; +"TAPPING_INSTRUCTION_RIGHT" = "使用右手轻点按钮。"; +"TAPPING_INSTRUCTION_LEFT" = "使用左手轻点按钮。"; +"TAPPING_SKIP_TITLE" = "跳过这只手"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "嗓音"; -"AUDIO_CALL_TO_ACTION" = "轻按“开始”来进行测试。"; +"AUDIO_CALL_TO_ACTION" = "轻点“开始”来进行测试。"; "AUDIO_INSTRUCTION" = "请对着麦克风说“啊啊啊”,时间越长越好。"; "AUDIO_INTRO_TEXT" = "请深呼吸并对着麦克风说“啊啊啊”,时间越长越好。保持平稳的声音大小以使音频条保持蓝色。"; "AUDIO_INTENDED_USE" = "本活动通过将您的嗓音录制到手机底部的麦克风来对其进行评估。"; "AUDIO_TOO_LOUD_LABEL" = "太大声"; "AUDIO_GENERIC_ERROR_LABEL" = "无法录音"; +"AUDIO_LEVEL_CHECK_LABEL" = "请耐心等待,我们正在检查背景噪声级。"; +"AUDIO_TOO_LOUD_MESSAGE" = "环境噪声级太高,无法录制您的声音。请移至较为安静的地方,然后再试一次。"; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "就绪后,轻点“下一步”。"; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "纯音测听"; "TONE_AUDIOMETRY_INTENDED_USE" = "本活动测量您是否可听见不同的声音。"; "TONE_AUDIOMETRY_INTRO_TEXT" = "请在开始前插入并戴上耳机。"; -"TONE_AUDIOMETRY_CALL_TO_ACTION" = "轻按“开始”来进行测试。"; -"TONE_AUDIOMETRY_PREP_TEXT" = "现在您应该听到一个音调。使用设备一侧的控制来调整音量。\n\n请在准备好后轻按该按钮来开始测试。"; -"TONE_AUDIOMETRY_INSTRUCTION" = "请在每次开始听到声音时轻按该按钮。"; +"TONE_AUDIOMETRY_CALL_TO_ACTION" = "轻点“开始”来进行测试。"; +"TONE_AUDIOMETRY_PREP_TEXT" = "现在您应该听到一个音调。使用设备一侧的控制来调整音量。\n\n请在准备好后轻点该按钮来开始测试。"; +"TONE_AUDIOMETRY_INSTRUCTION" = "请在每次开始听到声音时轻点该按钮。"; "TONE_LABEL_%@_LEFT" = "%@ Hz,左"; "TONE_LABEL_%@_RIGHT" = "%@ Hz,右"; @@ -257,29 +292,29 @@ "SPATIAL_SPAN_MEMORY_INTRO_TEXT_%@" = "本活动通过重现%@亮起的顺序来测量您的短期空间记忆能力。"; "SPATIAL_SPAN_MEMORY_TARGET_PLURAL" = "花朵"; "SPATIAL_SPAN_MEMORY_TARGET_STANDALONE" = "花朵"; -"SPATIAL_SPAN_MEMORY_INTRO_2_TEXT_%@" = "部分%@一次只亮起一个。请以亮起的顺序轻按这些%@。"; -"SPATIAL_SPAN_MEMORY_INTRO_2_TEXT_REVERSE_%@" = "部分%@一次只亮起一个。请以与亮起相反的顺序轻按这些%@。"; -"SPATIAL_SPAN_MEMORY_CALL_TO_ACTION" = "若要开始,请轻按“开始”,然后留心观察。"; +"SPATIAL_SPAN_MEMORY_INTRO_2_TEXT_%@" = "部分%@一次只亮起一个。请以亮起的顺序轻点这些%@。"; +"SPATIAL_SPAN_MEMORY_INTRO_2_TEXT_REVERSE_%@" = "部分%@一次只亮起一个。请以与亮起相反的顺序轻点这些%@。"; +"SPATIAL_SPAN_MEMORY_CALL_TO_ACTION" = "若要开始,请轻点“开始”,然后留心观察。"; "MEMORY_GAME_ITEM_COUNT_TITLE_%@" = "%@"; "MEMORY_GAME_SCORE_TITLE" = "得分"; "MEMORY_GAME_PLAYBACK_TITLE_%@" = "观察亮起的%@"; -"MEMORY_GAME_GAMEPLAY_TITLE_%@" = "请以%@亮起的顺序轻按它们"; -"MEMORY_GAME_GAMEPLAY_REVERSE_TITLE_%@" = "请以相反的顺序轻按%@"; +"MEMORY_GAME_GAMEPLAY_TITLE_%@" = "请以%@亮起的顺序轻点它们"; +"MEMORY_GAME_GAMEPLAY_REVERSE_TITLE_%@" = "请以相反的顺序轻点%@"; "MEMORY_GAME_COMPLETE_TITLE" = "顺序完成"; -"MEMORY_GAME_COMPLETE_MESSAGE" = "轻按“下一步”来继续"; +"MEMORY_GAME_COMPLETE_MESSAGE" = "轻点“下一步”来继续"; "MEMORY_GAME_FAILED_TITLE" = "再试一次"; -"MEMORY_GAME_FAILED_MESSAGE" = "您好像记错了顺序。轻按“下一步”来继续。"; +"MEMORY_GAME_FAILED_MESSAGE" = "您好像记错了顺序。轻点“下一步”来继续。"; "MEMORY_GAME_TIMEOUT_TITLE" = "时间已到"; -"MEMORY_GAME_TIMEOUT_MESSAGE" = "时间已到。\n轻按“下一步”来继续。"; +"MEMORY_GAME_TIMEOUT_MESSAGE" = "时间已到。\n轻点“下一步”来继续。"; "MEMORY_GAME_COMPLETE" = "游戏完成"; "MEMORY_GAME_PAUSED_TITLE" = "暂停"; -"MEMORY_GAME_PAUSED_MESSAGE" = "轻按“下一步”来继续"; +"MEMORY_GAME_PAUSED_MESSAGE" = "轻点“下一步”来继续"; /* Reaction time active task. */ "REACTION_TIME_TASK_TITLE" = "反应时间"; "REACTION_TIME_TASK_INTENDED_USE" = "本活动评估您对视觉提示的反应时间。"; "REACTION_TIME_TASK_INTRO_TEXT_FORMAT" = "屏幕出现蓝色圆点时立刻朝任意方向摇动设备。您将需要完成此操作 %D 次。"; -"REACTION_TIME_TASK_CALL_TO_ACTION" = "轻按“开始”来进行测试。"; +"REACTION_TIME_TASK_CALL_TO_ACTION" = "轻点“开始”来进行测试。"; "REACTION_TIME_TASK_ATTEMPTS_FORMAT" = "第 %@/%@ 次尝试"; "REACTION_TIME_TASK_ACTIVE_STEP_TITLE" = "蓝色圆圈出现时快速摇动设备"; @@ -320,7 +355,7 @@ "PVSAT_INTRO_TEXT" = "“步进式视觉累加实验”测量您的视觉信息处理速度和计算能力。"; "PAVSAT_INTRO_TEXT" = "“步进式听觉和视觉累加实验”测量您的听觉和视觉信息处理速度和计算能力。"; "PSAT_INTRO_TEXT_2_%@" = "每隔 %@ 秒钟会显示一个一位数。\n您必须将每个新数字与前面相邻的数字相加。\n注意,您不准计算累加值,只能计算最后两个数字之和。"; -"PSAT_CALL_TO_ACTION" = "轻按“开始”来进行测试。"; +"PSAT_CALL_TO_ACTION" = "轻点“开始”来进行测试。"; "PSAT_INITIAL_INSTRUCTION" = "记住这第一个数字。"; "PSAT_INSTRUCTION" = "将这个新数字与前一个数字相加。"; "PSAT_NO_DIGIT" = "-"; @@ -331,7 +366,7 @@ "HOLE_PEG_TEST_INTRO_TEXT_2_LEFT_HAND_FIRST_%@" = "您的左手和右手都需要进行测试。\n您必须以最快速度拿起圆饼,将其放入圆孔中,完成 %@ 次后,再将其移除 %@ 次。"; "HOLE_PEG_TEST_INTRO_TEXT_2_RIGHT_HAND_FIRST_%@" = "您的右手和左手都需要进行测试。\n您必须以最快速度拿起圆饼,将其放入圆孔中,完成 %@ 次后,再将其移除 %@ 次。"; -"HOLE_PEG_TEST_CALL_TO_ACTION" = "轻按“开始”来进行测试。"; +"HOLE_PEG_TEST_CALL_TO_ACTION" = "轻点“开始”来进行测试。"; "HOLE_PEG_TEST_PLACE_INSTRUCTION_LEFT_HAND" = "用您的左手将圆饼放入圆孔中。"; "HOLE_PEG_TEST_PLACE_INSTRUCTION_RIGHT_HAND" = "用您的右手将圆饼放入圆孔中。"; "HOLE_PEG_TEST_REMOVE_INSTRUCTION_LEFT_HAND" = "用您的左手将圆饼放在线条后方。"; @@ -339,6 +374,48 @@ "HOLE_PEG_TEST_TEXT" = "用两个手指拿起圆饼。"; "HOLE_PEG_TEST_TEXT_2" = "抬起手指以放下圆饼。"; +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "颤抖活动"; +"TREMOR_TEST_INTRO_1_DETAIL" = "本活动测试在不同姿势下,您双手的颤抖情况。请找到一处舒适的地方坐下并完成此活动。"; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "如下图所示,用更易受到影响的手握住手机。"; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "如下图所示,用右手握住手机。"; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "如下图所示,用左手握住手机。"; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "请坐下并用手握住手机,然后完成%@。"; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "一个任务"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "两个任务"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "三个任务"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "四个任务"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "五个任务"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "轻点下一步来继续。"; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "准备握住手机并放在膝盖上。"; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "准备用左手握住手机并放在膝盖上。"; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "准备用右手握住手机并放在膝盖上。"; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "握住手机并放在膝盖上,坚持 %ld 秒钟。"; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "现在伸直手臂并将手机举至肩高。"; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "现在伸直左手臂并将手机举至肩高。"; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "现在伸直右手臂并将手机举至肩高。"; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "握住手机并伸直手臂,坚持 %ld 秒钟。"; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "现在把手机举至肩高并弯曲手肘。"; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "现在用左手握住手机,举至肩高并弯曲手肘。"; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "现在用右手握住手机,举至肩高并弯曲手肘。"; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "握住手机并弯曲手肘,坚持 %ld 秒钟"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "现在弯曲手肘,重复用手机接触您的鼻子。"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "现在弯曲手肘并用左手握住手机,重复用手机接触您的鼻子。"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "现在弯曲手肘并用右手握住手机,重复用手机接触您的鼻子。"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "用手机接触鼻子,坚持 %ld 秒钟"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "准备挥手(通过转动手腕来挥手)。"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "用左手握住手机并准备挥手(通过转动手腕来挥手)。"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "用右手握住手机并准备挥手(通过转动手腕来挥手)。"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "持续挥手,坚持 %ld 秒钟。"; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "现在换左手握住手机并继续下一个任务。"; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "现在换右手握住手机并继续下一个任务。"; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "继续下一个任务。"; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "活动完成。"; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "请坐下并用一只手握住手机,然后完成%@,接着换另一只手再完成一次。"; +"TREMOR_SKIP_LEFT_HAND" = "我不能用左手完成本活动。"; +"TREMOR_SKIP_RIGHT_HAND" = "我不能用右手完成本活动。"; +"TREMOR_SKIP_NEITHER" = "我能用两只手完成本活动。"; + /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "无法创建文件"; "ERROR_DATALOGGER_COULD_NOT_FREE_SPACE" = "无法移除足够的日志文件来达到阈值"; @@ -378,6 +455,9 @@ "AX_IMAGE_CAPTURE_LABEL" = "捕捉预览"; "AX_IMAGE_CAPTURED_LABEL" = "捕捉的图像"; +"AX_VIDEO_CAPTURE_LABEL" = "视频采集预览"; +"AX_VIDEO_CAPTURED_LABEL" = "采集的视频"; + "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "无法将大小为“%@”的圆盘放在大小为“%@”的圆盘上"; "AX_TOWER_OF_HANOI_TARGET_DISK" = "目标圆盘"; "AX_TOWER_OF_HANOI_TOWER" = "塔"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "包含圆盘,大小为“%@”"; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "空"; -"AX_GRAPH_RANGE_FORMAT" = "范围:%@ ~ %@"; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "范围:%@ ~ %@"; +"AX_GRAPH_STACK_PREFIX" = "圆盘堆组成:"; "AX_GRAPH_AND_SEPARATOR" = "、"; "AX_GRAPH_POINT_%@" = "分数:%@"; diff --git a/ResearchKit/Localized/zh_CN.lproj/locversion.plist b/ResearchKit/Localized/zh_CN.lproj/locversion.plist index 53ecb546..e6481e9b 100644 --- a/ResearchKit/Localized/zh_CN.lproj/locversion.plist +++ b/ResearchKit/Localized/zh_CN.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale zh_CN LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/zh_HK.lproj/ResearchKit.strings b/ResearchKit/Localized/zh_HK.lproj/ResearchKit.strings index 6fe69202..3fd51c83 100644 --- a/ResearchKit/Localized/zh_HK.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/zh_HK.lproj/ResearchKit.strings @@ -34,7 +34,7 @@ "CONSENT_NAME_FAMILY" = "姓氏"; "CONSENT_NAME_PLACEHOLDER" = "必填"; "CONSENT_REVIEW_TITLE" = "同意書檢閱"; -"CONSENT_REVIEW_INSTRUCTION" = "請檢閱以下的文件。若你準備好繼續,請點一下「同意」。"; +"CONSENT_REVIEW_INSTRUCTION" = "請檢閲以下的文件。如果你準備好繼續,請點一下「同意」。"; "CONSENT_REVIEW_ALERT_TITLE" = "同意書檢閱"; "CONSENT_SIGNATURE_TITLE" = "簽名"; "CONSENT_SIGNATURE_INSTRUCTION" = "請用手指在下方的橫線上簽名。"; @@ -141,6 +141,7 @@ "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "只允許輸入數字。"; "PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "密碼輸入進度指示器"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "已輸入 %@ 個數字(共 %@ 個)"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "忘記密碼?"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "無法加入「鑰匙圈」項目。"; @@ -167,6 +168,11 @@ "BOOL_NO" = "不是"; "BOOL_YES" = "是"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "厘米"; +"MEASURING_UNIT_FT" = "呎"; +"MEASURING_UNIT_IN" = "吋"; + /* Default placeholders to request answers in a questionnaire. */ "PLACEHOLDER_TEXT_OR_NUMBER" = "點一下回答"; "NULL_ANSWER" = "選擇答案"; @@ -189,20 +195,29 @@ "BUTTON_OPTION_SAVE" = "儲存作日後之用"; "BUTTON_OPTION_DISCARD" = "放棄測試結果"; "BUTTON_OPTION_STOP_TASK" = "結束測試任務"; +"BUTTON_SAVE" = "儲存"; +"BUTTON_CLEAR_ANSWER" = "清除答案"; +"BUTTON_READ_ONLY_MODE" = "無法修改此答案。"; /* General active tasks. */ "COUNTDOWN_LABEL" = "測試活動倒數"; "TASK_COMPLETE_TITLE" = "測試活動已完成"; "TASK_COMPLETE_TEXT" = "測試活動將會進行分析。當得到結果時,你將會收到通知。"; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "剩餘 %@ 秒。"; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "截取圖案"; "CAPTURE_BUTTON_RECAPTURE_IMAGE" = "重新截取圖案"; "CAPTURE_ERROR_CAMERA_NOT_FOUND" = "找不到相機,無法完成此步驟。"; -"CAPTURE_ERROR_NO_PERMISSIONS" = "若要完成此步驟,請前往「設定」以允許此 App 使用相機。"; +"CAPTURE_ERROR_NO_PERMISSIONS" = "如要完成此步驟,請前往「設定」以允許此 App 使用相機。"; "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "未指定截取圖案的輸出目錄。"; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "無法儲存截取的圖案。"; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "開始錄音"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "停止錄影"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "重新截取影片"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "體能"; "FITNESS_DISTANCE_TITLE_FORMAT" = "距離(%@)"; @@ -214,7 +229,7 @@ /* Short walk active task. */ "WALK_TASK_TITLE" = "步態及平衡"; -"WALK_INTRO_TEXT" = "此測試活動可測量你步行及站立時的步態及平衡。若你行動不便或行走時需要輔助,請勿繼續進行。"; +"WALK_INTRO_TEXT" = "此測試活動可測量你步行及站立時的步態及平衡。如果你行動不便或行走時需要輔助,請勿繼續進行。"; "WALK_INTRO_2_TEXT_%ld" = "找一個安全的地方,讓你可以不靠輔助地直線步行大約 %ld 步。"; "WALK_INTRO_2_DETAIL" = "將電話放進口袋、手袋或背包裏,並跟隨語音指示。"; "WALK_STAND_VOICE_INSTRUCTION_FORMAT" = "現在站立 %@。"; @@ -222,16 +237,33 @@ "WALK_RETURN_INSTRUCTION_FORMAT" = "掉頭,然後步行回到起點。"; "WALK_OUTBOUND_INSTRUCTION_FORMAT" = "直線步行最多 %ld 步。"; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "找一個安全的地方,讓你可以直線來回步行。請嘗試不停步行,遇到盡頭時請有如繞過雪糕筒般掉頭。\n\n下一步,你將需要轉一整個圈,然後站着不動,雙手放在兩旁,而雙腳張開至肩膊的闊度。"; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "如果你準備好開始,請點一下「開始」。\n然後將電話放進口袋、手袋或背包裏,並跟隨語音指示。"; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "以平常姿態,直線來回步行 %@。"; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "轉一個圈,然後站立 %@。"; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "你已完成測試活動。"; /* Tapping active task. */ "TAPPING_TASK_TITLE" = "點按速度"; +"TAPPING_TASK_TITLE_RIGHT" = "右手"; +"TAPPING_TASK_TITLE_LEFT" = "左手"; "TAPPING_INTRO_TEXT" = "此測試活動能評估你的點按速度。"; -"TAPPING_INTRO_TEXT_2_FORMAT" = "請先平放電話。螢幕上將顯示兩個按鈕,請用同一隻手的兩指,在 %@內以最快的速度梅花間竹地點按這些按鈕。"; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "請先平放電話。"; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "請用同一隻手的兩指梅花間竹地點按螢幕上的按鈕。"; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "請用右手的兩指梅花間竹地點按螢幕上的按鈕。"; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "請用左手的兩指梅花間竹地點按螢幕上的按鈕。"; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "現在用右手進行相同的測試。"; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "現在用左手進行相同的測試。"; +"TAPPING_INTRO_TEXT_2_FORMAT" = "先用一指點按,然後用另一指點按。請嘗試以最平穩的速度,持續點按 %@。"; "TAPPING_CALL_TO_ACTION" = "點一下「開始」以進行測試。"; +"TAPPING_CALL_TO_ACTION_NEXT" = "點一下「下一步」開始。"; "TAP_BUTTON_TITLE" = "點按"; "TOTAL_TAPS_LABEL" = "點按總次數"; -"TAPPING_INSTRUCTION" = "用兩指以最快的速度點按這些按鈕。"; - +"TAPPING_INSTRUCTION" = "用兩指以最平穩的速度點按這些按鈕。"; +"TAPPING_INSTRUCTION_RIGHT" = "用你的右手點按這些按鈕。"; +"TAPPING_INSTRUCTION_LEFT" = "用你的左手點按這些按鈕。"; +"TAPPING_SKIP_TITLE" = "略過這隻手"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "語音"; @@ -241,13 +273,16 @@ "AUDIO_INTENDED_USE" = "此測試活動會使用電話底部的咪高風錄音,以評估你的聲音。"; "AUDIO_TOO_LOUD_LABEL" = "太大聲"; "AUDIO_GENERIC_ERROR_LABEL" = "無法錄音"; +"AUDIO_LEVEL_CHECK_LABEL" = "正在檢查背景雜音音量,請稍候。"; +"AUDIO_TOO_LOUD_MESSAGE" = "環境雜音太大聲,無法錄取你的聲音。請前往較靜的地方,然後再試一次。"; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "準備好後,請點一下「下一步」。"; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "純音聽力檢查"; "TONE_AUDIOMETRY_INTENDED_USE" = "此測試活動能評估你聆聽不同聲音的能力。"; "TONE_AUDIOMETRY_INTRO_TEXT" = "在開始之前,請插入並戴上耳筒。"; "TONE_AUDIOMETRY_CALL_TO_ACTION" = "點一下「開始」以進行測試。"; -"TONE_AUDIOMETRY_PREP_TEXT" = "你現在應該聽到一個音頻。請使用裝置旁的音量按鈕以調整音量。\n\n若你準備好開始,請點一下按鈕。"; +"TONE_AUDIOMETRY_PREP_TEXT" = "你現在應該聽到一個音頻。請使用裝置旁的音量按鈕以調整音量。\n\n如果你準備好開始,請點一下按鈕。"; "TONE_AUDIOMETRY_INSTRUCTION" = "每次當你開始聽到聲音時,請點一下按鈕。"; "TONE_LABEL_%@_LEFT" = "%@ Hz,左"; "TONE_LABEL_%@_RIGHT" = "%@ Hz,右"; @@ -339,6 +374,48 @@ "HOLE_PEG_TEST_TEXT" = "用兩指拿起圓柱。"; "HOLE_PEG_TEST_TEXT_2" = "放開手指以放下圓柱。"; +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "顫抖測試活動"; +"TREMOR_TEST_INTRO_1_DETAIL" = "此測試活動可測量你雙手不同位置的顫抖情況。請找一個地方,讓你可以在此測試活動期間舒適坐下。"; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "請用較受影響的手拿着電話,如下圖所示。"; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "請用右手拿着電話,如下圖所示。"; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "請用左手拿着電話,如下圖所示。"; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "你將需要坐着,並拿着電話進行%@。"; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "一個任務"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "兩個任務"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "三個任務"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "四個任務"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "五個任務"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "點一下「下一步」繼續。"; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "請準備將手放在大腿上,然後拿着電話。"; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "請準備將左手放在大腿上,然後拿着電話。"; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "請準備將右手放在大腿上,然後拿着電話。"; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "將手放在大腿上,然後拿着電話 %ld 秒。"; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "現在伸直手臂,並將電話拿到肩膊的高度。"; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "現在伸直左手手臂,並將電話拿到肩膊的高度。"; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "現在伸直右手手臂,並將電話拿到肩膊的高度。"; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "伸直手臂,然後拿着電話 %ld 秒。"; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "現在彎曲手肘,並將電話拿到肩膊的高度。"; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "現在彎曲左手手肘,並將電話拿到肩膊的高度。"; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "現在彎曲右手手肘,並將電話拿到肩膊的高度。"; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "彎曲手肘,然後拿着電話 %ld 秒"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "現在繼續彎曲手肘,並用電話重複觸碰鼻子。"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "現在繼續彎曲左手手肘,並拿着電話重複觸碰鼻子。"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "現在繼續彎曲右手手肘,並拿着電話重複觸碰鼻子。"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "拿着電話觸碰鼻子 %ld 秒"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "請準備進行揮手動作(只揮動手腕)。"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "請準備用左手拿着電話,進行揮手動作(只揮動手腕)。"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "請準備用右手拿着電話,進行揮手動作(只揮動手腕)。"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "繼續進行揮手動作 %ld 秒。"; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "現在用左手拿着電話,並繼續進行下一個任務。"; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "現在用右手拿着電話,並繼續進行下一個任務。"; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "繼續進行下一個任務。"; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "測試活動已完成。"; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "你將需要坐着,先用一隻手拿着電話進行%@,然後再用另一隻手進行。"; +"TREMOR_SKIP_LEFT_HAND" = "我無法用左手進行此測試活動。"; +"TREMOR_SKIP_RIGHT_HAND" = "我無法用右手進行此測試活動。"; +"TREMOR_SKIP_NEITHER" = "我可以用雙手進行此測試活動。"; + /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "無法製作檔案"; "ERROR_DATALOGGER_COULD_NOT_FREE_SPACE" = "無法移除足夠的記錄檔案以達到臨界值"; @@ -378,6 +455,9 @@ "AX_IMAGE_CAPTURE_LABEL" = "截取預覽"; "AX_IMAGE_CAPTURED_LABEL" = "截取的圖案"; +"AX_VIDEO_CAPTURE_LABEL" = "截取影片預覽"; +"AX_VIDEO_CAPTURED_LABEL" = "截取的影片"; + "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "無法將 %@ 號的圓盤放在 %@ 號的圓盤上"; "AX_TOWER_OF_HANOI_TARGET_DISK" = "目標"; "AX_TOWER_OF_HANOI_TOWER" = "塔座"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "其中的圓盤大小是 %@"; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "空白"; -"AX_GRAPH_RANGE_FORMAT" = "範圍介乎 %@ 至 %@"; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "範圍介乎 %@ 至 %@"; +"AX_GRAPH_STACK_PREFIX" = "圓盤柱的組成方式:"; "AX_GRAPH_AND_SEPARATOR" = " 與 "; "AX_GRAPH_POINT_%@" = "點數:%@"; diff --git a/ResearchKit/Localized/zh_HK.lproj/locversion.plist b/ResearchKit/Localized/zh_HK.lproj/locversion.plist index 7980eea6..6166cb39 100644 --- a/ResearchKit/Localized/zh_HK.lproj/locversion.plist +++ b/ResearchKit/Localized/zh_HK.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale zh_HK LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/Localized/zh_TW.lproj/ResearchKit.strings b/ResearchKit/Localized/zh_TW.lproj/ResearchKit.strings index 3bd4b20a..493de9f5 100644 --- a/ResearchKit/Localized/zh_TW.lproj/ResearchKit.strings +++ b/ResearchKit/Localized/zh_TW.lproj/ResearchKit.strings @@ -141,6 +141,7 @@ "PASSCODE_TEXTFIELD_INVALID_INPUT_MESSAGE" = "僅允許數字字元。"; "PASSCODE_TEXTFIELD_ACCESSIBILITY_LABEL" = "密碼輸入進度指示器"; "PASSCODE_TEXTFIELD_ACCESSIBILTIY_VALUE" = "已輸入 %1$@ 個數字(共 %2$@ 個)"; +"PASSCODE_FORGOT_BUTTON_TITLE" = "忘記密碼?"; /* Keychain wrapper */ "KEYCHAIN_ADD_ERROR_MESSAGE" = "無法加入鑰匙圈項目。"; @@ -167,6 +168,11 @@ "BOOL_NO" = "否"; "BOOL_YES" = "是"; +/* Measuring unit abbreviations */ +"MEASURING_UNIT_CM" = "公分"; +"MEASURING_UNIT_FT" = "英尺"; +"MEASURING_UNIT_IN" = "英吋"; + /* Default placeholders to request answers in a questionnaire. */ "PLACEHOLDER_TEXT_OR_NUMBER" = "點一下來回答"; "NULL_ANSWER" = "選取答案"; @@ -189,11 +195,15 @@ "BUTTON_OPTION_SAVE" = "稍後再試"; "BUTTON_OPTION_DISCARD" = "捨棄結果"; "BUTTON_OPTION_STOP_TASK" = "結束任務"; +"BUTTON_SAVE" = "儲存"; +"BUTTON_CLEAR_ANSWER" = "清除答案"; +"BUTTON_READ_ONLY_MODE" = "這個答案無法修改。"; /* General active tasks. */ "COUNTDOWN_LABEL" = "準備開始活動:"; "TASK_COMPLETE_TITLE" = "活動完成"; "TASK_COMPLETE_TEXT" = "您的資料會經過分析,收到結果時會通知您。"; +"COUNTDOWN_SPOKEN_REMAINING_%@" = "剩餘 %@ 秒。"; /* Image capture step. */ "CAPTURE_BUTTON_CAPTURE_IMAGE" = "擷取影像"; @@ -203,6 +213,11 @@ "CAPTURE_ERROR_NO_OUTPUT_DIRECTORY" = "尚未指定擷取影像的輸出目錄。"; "CAPTURE_ERROR_CANNOT_WRITE_FILE" = "無法儲存擷取的影像。"; +/* Video capture step. */ +"CAPTURE_BUTTON_CAPTURE_VIDEO" = "開始錄音"; +"CAPTURE_BUTTON_STOP_CAPTURE_VIDEO" = "停止錄影"; +"CAPTURE_BUTTON_RECAPTURE_VIDEO" = "重新擷取影像"; + /* Fitness active task. */ "FITNESS_TASK_TITLE" = "健身"; "FITNESS_DISTANCE_TITLE_FORMAT" = "距離(%@)"; @@ -222,16 +237,33 @@ "WALK_RETURN_INSTRUCTION_FORMAT" = "請掉頭並走回您的起點。"; "WALK_OUTBOUND_INSTRUCTION_FORMAT" = "直線步行到最多 %ld 步。"; +/* Short walk back and forth. */ +"WALK_INTRO_2_TEXT_BACK_AND_FORTH_INSTRUCTION" = "找一個您可以安全地以直線來回步行的地點。請試著持續走到盡頭再折返,如同繞過交通錐折返。\n\n接著會指示您轉一圈,然後站著不動,雙手自然放鬆,並且雙腳張開與肩同寬。"; +"WALK_INTRO_2_DETAIL_BACK_AND_FORTH_INSTRUCTION" = "當您準備好時,請點一下「開始測試」。\n然後將電話放在口袋或包包裡面,並依照語音指示執行。"; +"WALK_BACK_AND_FORTH_INSTRUCTION_FORMAT" = "直線來回步行到 %@。請以您一般的步調行走。"; +"WALK_BACK_AND_FORTH_STAND_INSTRUCTION_FORMAT" = "旋轉一整圈,然後站著不動 %@。"; +"WALK_BACK_AND_FORTH_FINISHED_VOICE" = "您已完成活動。"; /* Tapping active task. */ "TAPPING_TASK_TITLE" = "點按速度"; +"TAPPING_TASK_TITLE_RIGHT" = "右手"; +"TAPPING_TASK_TITLE_LEFT" = "左手"; "TAPPING_INTRO_TEXT" = "此活動會測量您的點按速度。"; -"TAPPING_INTRO_TEXT_2_FORMAT" = "將電話放在平面上。螢幕上會出現兩個按鈕,顯示時間為 %@。用同一隻手的兩根手指輪流點一下按鈕,速度越快越好。"; +"TAPPING_INTRO_TEXT_2_REST_PHONE" = "將您的電話置於平坦的表面上。"; +"TAPPING_INTRO_TEXT_2_MOST_AFFECTED" = "用同一隻手的兩指來交互點按螢幕上的按鈕。"; +"TAPPING_INTRO_TEXT_2_RIGHT_FIRST" = "用右手的兩指來交互點按螢幕上的按鈕。"; +"TAPPING_INTRO_TEXT_2_LEFT_FIRST" = "用左手的兩指來交互點按螢幕上的按鈕。"; +"TAPPING_INTRO_TEXT_2_RIGHT_SECOND" = "現在請用右手重複執行相同的測試。"; +"TAPPING_INTRO_TEXT_2_LEFT_SECOND" = "現在請用左手重複執行相同的測試。"; +"TAPPING_INTRO_TEXT_2_FORMAT" = "先用一隻手指點按,再用另一隻手指。請試著讓兩指以平均的速率點按。持續點按 %@。"; "TAPPING_CALL_TO_ACTION" = "點一下「開始測試」來開始。"; +"TAPPING_CALL_TO_ACTION_NEXT" = "點「下一步」來開始。"; "TAP_BUTTON_TITLE" = "點一下"; "TOTAL_TAPS_LABEL" = "總計點按數量"; -"TAPPING_INSTRUCTION" = "用兩根手指來點一下按鈕,速度越快越好。"; - +"TAPPING_INSTRUCTION" = "用兩指儘可能地以相同的節奏點按按鈕。"; +"TAPPING_INSTRUCTION_RIGHT" = "用「右手」點按按鈕。"; +"TAPPING_INSTRUCTION_LEFT" = "用「左手」點按按鈕。"; +"TAPPING_SKIP_TITLE" = "略過這隻手"; /* Audio active task. */ "AUDIO_TASK_TITLE" = "聲音"; @@ -241,6 +273,9 @@ "AUDIO_INTENDED_USE" = "此活動會用電話底部的麥克風錄下您的聲音以進行評估。"; "AUDIO_TOO_LOUD_LABEL" = "太大聲了"; "AUDIO_GENERIC_ERROR_LABEL" = "無法錄音"; +"AUDIO_LEVEL_CHECK_LABEL" = "我們檢查背景噪音量,請稍候。"; +"AUDIO_TOO_LOUD_MESSAGE" = "周圍的噪音量過高,無法錄下您的聲音。請到較為安靜的位置,並再試一次。"; +"AUDIO_TOO_LOUD_ACTION_NEXT" = "準備好時,請點「下一步」。"; /* Tone audiometry active task. */ "TONE_AUDIOMETRY_TASK_TITLE" = "純音聽力檢查"; @@ -266,14 +301,14 @@ "MEMORY_GAME_GAMEPLAY_TITLE_%@" = "以圖片亮起來的順序點一下%@"; "MEMORY_GAME_GAMEPLAY_REVERSE_TITLE_%@" = "以相反的順序點一下%@"; "MEMORY_GAME_COMPLETE_TITLE" = "完成順序"; -"MEMORY_GAME_COMPLETE_MESSAGE" = "若要繼續,請點一下「下一步」"; +"MEMORY_GAME_COMPLETE_MESSAGE" = "若要繼續,請點「下一步」"; "MEMORY_GAME_FAILED_TITLE" = "再試一次"; -"MEMORY_GAME_FAILED_MESSAGE" = "您這次未成功。點一下「下一步」來繼續。"; +"MEMORY_GAME_FAILED_MESSAGE" = "您這次未成功。點「下一步」來繼續。"; "MEMORY_GAME_TIMEOUT_TITLE" = "時間到了"; -"MEMORY_GAME_TIMEOUT_MESSAGE" = "您的時間用完了。\n點一下「下一步」來繼續。"; +"MEMORY_GAME_TIMEOUT_MESSAGE" = "您的時間用完了。\n點「下一步」來繼續。"; "MEMORY_GAME_COMPLETE" = "遊戲完成"; "MEMORY_GAME_PAUSED_TITLE" = "已暫停"; -"MEMORY_GAME_PAUSED_MESSAGE" = "若要繼續,請點一下「下一步」"; +"MEMORY_GAME_PAUSED_MESSAGE" = "若要繼續,請點「下一步」"; /* Reaction time active task. */ "REACTION_TIME_TASK_TITLE" = "反應時間"; @@ -296,7 +331,7 @@ "TIMED_WALK_TITLE" = "定時步行"; "TIMED_WALK_INTRO_DETAIL" = "此活動會測量您的下肢功能。"; "TIMED_WALK_INTRO_2_TEXT_%@" = "請找到一個地方(最好在室外)可讓您快速安全地直線步行約 %@。通過終點線前請勿放慢速度。"; -"TIMED_WALK_INTRO_2_DETAIL" = "點一下「下一步」來開始。"; +"TIMED_WALK_INTRO_2_DETAIL" = "點「下一步」來開始。"; "TIMED_WALK_FORM_TITLE" = "輔具"; "TIMED_WALK_FORM_TEXT" = "每次測試時請使用相同的輔具。"; "TIMED_WALK_QUESTION_TEXT" = "您是否穿戴踝足副木?"; @@ -339,6 +374,48 @@ "HOLE_PEG_TEST_TEXT" = "用兩指拿起圓柱。"; "HOLE_PEG_TEST_TEXT_2" = "抬起手指來放下圓柱。"; +/* Tremor test active task. */ +"TREMOR_TEST_TITLE" = "顫抖測試活動"; +"TREMOR_TEST_INTRO_1_DETAIL" = "這項活動是測量在不同的姿勢下,您雙手顫抖的情況。請找一個可以讓您舒適坐下的位置,來完成這個活動。"; +"TREMOR_TEST_INTRO_2_DEFAULT_TEXT" = "將電話拿在較受影響的那隻手上,如下方影像所示。"; +"TREMOR_TEST_INTRO_2_RIGHT_HAND_TEXT" = "將電話拿在「右手」,如下方影像所示。"; +"TREMOR_TEST_INTRO_2_LEFT_HAND_TEXT" = "將電話拿在「左手」,如下方影像所示。"; +"TREMOR_TEST_INTRO_2_DETAIL_DEFAULT_%@" = "將會要求您在坐下時用手拿著電話執行 %@。"; +"TREMOR_TEST_INTRO_2_DETAIL_1_TASK" = "一項任務"; +"TREMOR_TEST_INTRO_2_DETAIL_2_TASK" = "兩項任務"; +"TREMOR_TEST_INTRO_2_DETAIL_3_TASK" = "三項任務"; +"TREMOR_TEST_INTRO_2_DETAIL_4_TASK" = "四項任務"; +"TREMOR_TEST_INTRO_2_DETAIL_5_TASK" = "五項任務"; +"TREMOR_TEST_ACTIVE_STEP_INTRO_TEXT" = "點「下一步」來繼續。"; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO" = "請準備將手放在大腿上並拿著電話。"; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_LEFT" = "請準備將「左手」放在大腿上並拿著電話。"; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INTRO_RIGHT" = "請準備將「右手」放在大腿上並拿著電話。"; +"TREMOR_TEST_ACTIVE_STEP_IN_LAP_INSTRUCTION_%ld" = "請拿著電話並放在大腿上持續 %ld 秒鐘。"; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO" = "現在請用手拿著電話,手伸直至與肩同高。"; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_LEFT" = "現在請用「左手」拿著電話,手伸直至與肩同高。"; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INTRO_RIGHT" = "現在請用「右手」拿著電話,手伸直至與肩同高。"; +"TREMOR_TEST_ACTIVE_STEP_EXTEND_ARM_INSTRUCTION_%ld" = "將手伸直,並拿著電話持續 %ld 秒鐘。"; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO" = "現在請用手拿著電話,舉至與肩同高時手肘彎曲。"; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_LEFT" = "現在請用「左手」拿著電話,舉至與肩同高時手肘彎曲。"; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INTRO_RIGHT" = "現在請用「右手」拿著電話,舉至與肩同高時手肘彎曲。"; +"TREMOR_TEST_ACTIVE_STEP_BEND_ARM_INSTRUCTION_%ld" = "繼續用手拿著電話,手肘彎曲,持續 %ld 秒鐘"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO" = "現在請將手肘保持彎曲,並重複用電話碰觸鼻子。"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_LEFT" = "現在請用「左手」拿著電話,手肘保持彎曲,並重複用電話碰觸鼻子。"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INTRO_RIGHT" = "現在請用「右手」拿著電話,手肘保持彎曲,並重複用電話碰觸鼻子。"; +"TREMOR_TEST_ACTIVE_STEP_TOUCH_NOSE_INSTRUCTION_%ld" = "重複用電話碰觸鼻子持續 %ld 秒鐘"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO" = "準備執行手腕轉動。"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_LEFT" = "準備用「左手」拿著電話執行手腕轉動。"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INTRO_RIGHT" = "準備用「右手」拿著電話執行手腕轉動。"; +"TREMOR_TEST_ACTIVE_STEP_TURN_WRIST_INSTRUCTION_%ld" = "繼續執行手腕轉動 %ld 秒鐘。"; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_LEFT_INSTRUCTION" = "現在請將電話換到「左手」來繼續下一項任務。"; +"TREMOR_TEST_ACTIVE_STEP_SWITCH_HANDS_RIGHT_INSTRUCTION" = "現在請將電話換到「右手」來繼續下一項任務。"; +"TREMOR_TEST_ACTIVE_STEP_FINISHED_INSTRUCTION" = "繼續下一項任務。"; +"TREMOR_TEST_COMPLETED_INSTRUCTION" = "活動已完成。"; +"TREMOR_TEST_SKIP_QUESTION_BOTH_HANDS_%@" = "將會要求您在坐下時先用一隻手拿著電話執行 %@,然後再用另一隻手執行。"; +"TREMOR_SKIP_LEFT_HAND" = "我無法用「左手」執行這項活動。"; +"TREMOR_SKIP_RIGHT_HAND" = "我無法用「右手」執行這項活動。"; +"TREMOR_SKIP_NEITHER" = "我可以用兩隻手執行這項活動。"; + /* Potentially user visible error messages. */ "ERROR_DATALOGGER_CREATE_FILE" = "無法製作檔案"; "ERROR_DATALOGGER_COULD_NOT_FREE_SPACE" = "無法移除足夠的記錄檔來達到臨界值"; @@ -378,6 +455,9 @@ "AX_IMAGE_CAPTURE_LABEL" = "擷取預覽"; "AX_IMAGE_CAPTURED_LABEL" = "擷取的影像"; +"AX_VIDEO_CAPTURE_LABEL" = "擷取影像預覽"; +"AX_VIDEO_CAPTURED_LABEL" = "擷取的影像"; + "AX_TOWER_OF_HANOI_INVALID_MOVE_FORMAT" = "無法將 %@ 號的圓盤放在 %@ 號的圓盤上"; "AX_TOWER_OF_HANOI_TARGET_DISK" = "目標"; "AX_TOWER_OF_HANOI_TOWER" = "塔座"; @@ -386,6 +466,7 @@ "AX_TOWER_OF_HANOI_TOWER_CONTAINS" = "圓盤大小是 %@"; "AX_TOWER_OF_HANOI_TOWER_EMPTY" = "空白"; -"AX_GRAPH_RANGE_FORMAT" = "範圍在 %@ 到 %@ 之間"; +"AX_GRAPH_RANGE_FORMAT_%@_%@" = "範圍在 %@ 到 %@ 之間"; +"AX_GRAPH_STACK_PREFIX" = "圓盤組成:"; "AX_GRAPH_AND_SEPARATOR" = " 和 "; "AX_GRAPH_POINT_%@" = "點:%@"; diff --git a/ResearchKit/Localized/zh_TW.lproj/locversion.plist b/ResearchKit/Localized/zh_TW.lproj/locversion.plist index 8f532f42..e7396954 100644 --- a/ResearchKit/Localized/zh_TW.lproj/locversion.plist +++ b/ResearchKit/Localized/zh_TW.lproj/locversion.plist @@ -3,12 +3,12 @@ LprojCompatibleVersion - 15 + 19 LprojLocale zh_TW LprojRevisionLevel 1 LprojVersion - 15 + 19 diff --git a/ResearchKit/ResearchKit.h b/ResearchKit/ResearchKit.h index 6850d95d..2fb5fc39 100644 --- a/ResearchKit/ResearchKit.h +++ b/ResearchKit/ResearchKit.h @@ -46,6 +46,7 @@ #import "ORKSignatureStep.h" #import "ORKTableStep.h" #import "ORKVerificationStep.h" +#import "ORKVideoCaptureStep.h" #import "ORKVisualConsentStep.h" #import "ORKWaitStep.h" @@ -89,3 +90,7 @@ #import "ORKDiscreteGraphChartView.h" #import "ORKLineGraphChartView.h" #import "ORKPieChartView.h" + +#import "ORKDataCollectionManager.h" +#import "ORKCollector.h" + diff --git a/Testing/ORKTest/ORKTest.xcodeproj/project.pbxproj b/Testing/ORKTest/ORKTest.xcodeproj/project.pbxproj index 274c53c4..5991d600 100644 --- a/Testing/ORKTest/ORKTest.xcodeproj/project.pbxproj +++ b/Testing/ORKTest/ORKTest.xcodeproj/project.pbxproj @@ -9,6 +9,7 @@ /* Begin PBXBuildFile section */ 24D002781BA2268D001BF82F /* ORKKeychainWrapperTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 24D002771BA2268D001BF82F /* ORKKeychainWrapperTests.m */; }; 335418E91B118EAD00A38F5E /* SAMPLE_PDF_TEST.pdf in Resources */ = {isa = PBXBuildFile; fileRef = 335418E81B118EAD00A38F5E /* SAMPLE_PDF_TEST.pdf */; }; + 866DA52E1D63D1EE00C9AF3F /* ORKDataCollectionTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 866DA52D1D63D1EE00C9AF3F /* ORKDataCollectionTests.m */; }; 86717A901AC0C0FE00AC2A23 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 86717A8F1AC0C0FE00AC2A23 /* main.m */; }; 86717A931AC0C0FE00AC2A23 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 86717A921AC0C0FE00AC2A23 /* AppDelegate.m */; }; 86717A9B1AC0C0FE00AC2A23 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 86717A9A1AC0C0FE00AC2A23 /* Images.xcassets */; }; @@ -62,6 +63,7 @@ /* Begin PBXFileReference section */ 24D002771BA2268D001BF82F /* ORKKeychainWrapperTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ORKKeychainWrapperTests.m; sourceTree = ""; }; 335418E81B118EAD00A38F5E /* SAMPLE_PDF_TEST.pdf */ = {isa = PBXFileReference; lastKnownFileType = image.pdf; path = SAMPLE_PDF_TEST.pdf; sourceTree = ""; }; + 866DA52D1D63D1EE00C9AF3F /* ORKDataCollectionTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ORKDataCollectionTests.m; sourceTree = ""; }; 86717A8A1AC0C0FE00AC2A23 /* ORKTest.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = ORKTest.app; sourceTree = BUILT_PRODUCTS_DIR; }; 86717A8E1AC0C0FE00AC2A23 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 86717A8F1AC0C0FE00AC2A23 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; @@ -137,6 +139,7 @@ FFF010741D21F2030054B430 /* ContinueButtonExample.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = ContinueButtonExample.storyboard; path = "ORKTest/Supporting Files/ContinueButtonExample.storyboard"; sourceTree = SOURCE_ROOT; }; FF5CA60C1D272CF4001660A3 /* DragonPokerStep.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DragonPokerStep.h; sourceTree = ""; }; FF5CA60D1D272CF4001660A3 /* DragonPokerStep.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DragonPokerStep.m; sourceTree = ""; }; + BCB0809C1B83E9B200A3F400 /* ORKTest-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "ORKTest-Bridging-Header.h"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -209,6 +212,7 @@ 86717AA61AC0C0FE00AC2A23 /* ORKTestTests */ = { isa = PBXGroup; children = ( + 866DA52D1D63D1EE00C9AF3F /* ORKDataCollectionTests.m */, 86717AFF1AC0C93E00AC2A23 /* ORKESerialization.h */, 86717AD81AC0C53800AC2A23 /* ORKESerialization.m */, 86717AFC1AC0C86000AC2A23 /* ORKJSONSerializationTests.m */, @@ -322,11 +326,14 @@ isa = PBXProject; attributes = { LastSwiftUpdateCheck = 0700; - LastUpgradeCheck = 0700; + LastUpgradeCheck = 0800; ORGANIZATIONNAME = ResearchKit; TargetAttributes = { 86717A891AC0C0FE00AC2A23 = { CreatedOnToolsVersion = 6.2; + DevelopmentTeam = 7JYUG8QGJ3; + DevelopmentTeamName = "Apple Inc. - SPG-NGS"; + LastSwiftMigration = 0800; SystemCapabilities = { com.apple.BackgroundModes = { enabled = 1; @@ -455,6 +462,7 @@ buildActionMask = 2147483647; files = ( 86717AFD1AC0C86000AC2A23 /* ORKJSONSerializationTests.m in Sources */, + 866DA52E1D63D1EE00C9AF3F /* ORKDataCollectionTests.m in Sources */, 86717AFE1AC0C8BC00AC2A23 /* ORKESerialization.m in Sources */, 24D002781BA2268D001BF82F /* ORKKeychainWrapperTests.m in Sources */, ); @@ -535,6 +543,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; CLANG_WARN_BOOL_CONVERSION = YES; @@ -549,6 +558,7 @@ COPY_PHASE_STRIP = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; ENABLE_TESTABILITY = YES; + GCC_NO_COMMON_BLOCKS = YES; GCC_OPTIMIZATION_LEVEL = 0; GCC_PREPROCESSOR_DEFINITIONS = ( "DEBUG=1", @@ -571,6 +581,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = YES; CLANG_WARN_BOOL_CONVERSION = YES; @@ -585,6 +596,7 @@ COPY_PHASE_STRIP = NO; ENABLE_NS_ASSERTIONS = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_NO_COMMON_BLOCKS = YES; GCC_WARN_64_TO_32_BIT_CONVERSION = YES; GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNDECLARED_SELECTOR = YES; @@ -607,12 +619,14 @@ CODE_SIGN_IDENTITY = "iPhone Developer"; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; INFOPLIST_FILE = "$(SRCROOT)/ORKTest/Supporting Files/Info.plist"; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = "com.example.researchkit-samplecode.ORKTest"; PRODUCT_NAME = "$(TARGET_NAME)"; SDKROOT = iphoneos; SWIFT_OBJC_BRIDGING_HEADER = "ORKTest/Supporting Files/ORKTest-Bridging-Header.h"; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 3.0; TARGETED_DEVICE_FAMILY = "1,2"; }; name = Debug; @@ -626,11 +640,14 @@ CODE_SIGN_IDENTITY = "iPhone Developer"; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; INFOPLIST_FILE = "$(SRCROOT)/ORKTest/Supporting Files/Info.plist"; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = "com.example.researchkit-samplecode.ORKTest"; PRODUCT_NAME = "$(TARGET_NAME)"; SDKROOT = iphoneos; SWIFT_OBJC_BRIDGING_HEADER = "ORKTest/Supporting Files/ORKTest-Bridging-Header.h"; + SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; + SWIFT_VERSION = 3.0; TARGETED_DEVICE_FAMILY = "1,2"; }; name = Release; diff --git a/Testing/ORKTest/ORKTest.xcodeproj/xcshareddata/xcschemes/ORKTest.xcscheme b/Testing/ORKTest/ORKTest.xcodeproj/xcshareddata/xcschemes/ORKTest.xcscheme index 2be5858a..39f67cc5 100644 --- a/Testing/ORKTest/ORKTest.xcodeproj/xcshareddata/xcschemes/ORKTest.xcscheme +++ b/Testing/ORKTest/ORKTest.xcodeproj/xcshareddata/xcschemes/ORKTest.xcscheme @@ -1,6 +1,6 @@ [UIColor] { +func randomColorArray(_ number: Int) -> [UIColor] { func random() -> CGFloat { return CGFloat(Float(arc4random()) / Float(UINT32_MAX)) @@ -48,15 +48,15 @@ let NumberOfPieChartSegments = 13 class ColorlessPieChartDataSource: NSObject, ORKPieChartViewDataSource { - func numberOfSegmentsInPieChartView(pieChartView: ORKPieChartView ) -> Int { + func numberOfSegments(in pieChartView: ORKPieChartView ) -> Int { return NumberOfPieChartSegments } - func pieChartView(pieChartView: ORKPieChartView, valueForSegmentAtIndex index: Int) -> CGFloat { + func pieChartView(_ pieChartView: ORKPieChartView, valueForSegmentAt index: Int) -> CGFloat { return CGFloat(index + 1) } - func pieChartView(pieChartView: ORKPieChartView, titleForSegmentAtIndex index: Int) -> String { + func pieChartView(_ pieChartView: ORKPieChartView, titleForSegmentAt index: Int) -> String { return "Title \(index + 1)" } } @@ -67,7 +67,7 @@ class RandomColorPieChartDataSource: ColorlessPieChartDataSource { return randomColorArray(NumberOfPieChartSegments) }() - func pieChartView(pieChartView: ORKPieChartView, colorForSegmentAtIndex index: Int) -> UIColor { + func pieChartView(_ pieChartView: ORKPieChartView, colorForSegmentAtIndex index: Int) -> UIColor { return backingStore[index] } } @@ -75,31 +75,32 @@ class RandomColorPieChartDataSource: ColorlessPieChartDataSource { class BaseFloatRangeGraphChartDataSource: NSObject, ORKValueRangeGraphChartViewDataSource { var plotPoints: [[ORKValueRange]] = [[]] - func numberOfPlotsInGraphChartView(graphChartView: ORKGraphChartView) -> Int { + internal func numberOfPlots(in graphChartView: ORKGraphChartView) -> Int { return plotPoints.count } - func graphChartView(graphChartView: ORKGraphChartView, dataPointForPointIndex pointIndex: Int, plotIndex: Int) -> ORKValueRange { + func graphChartView(_ graphChartView: ORKGraphChartView, dataPointForPointIndex pointIndex: Int, plotIndex: Int) -> ORKValueRange { return plotPoints[plotIndex][pointIndex] } - func graphChartView(graphChartView: ORKGraphChartView, numberOfDataPointsForPlotIndex plotIndex: Int) -> Int { + func graphChartView(_ graphChartView: ORKGraphChartView, numberOfDataPointsForPlotIndex plotIndex: Int) -> Int { return plotPoints[plotIndex].count } } class BaseFloatStackGraphChartDataSource: NSObject, ORKValueStackGraphChartViewDataSource { + var plotPoints: [[ORKValueStack]] = [[]] - func numberOfPlotsInGraphChartView(graphChartView: ORKGraphChartView) -> Int { + public func numberOfPlots(in graphChartView: ORKGraphChartView) -> Int { return plotPoints.count } - func graphChartView(graphChartView: ORKGraphChartView, dataPointForPointIndex pointIndex: Int, plotIndex: Int) -> ORKValueStack { + func graphChartView(_ graphChartView: ORKGraphChartView, dataPointForPointIndex pointIndex: Int, plotIndex: Int) -> ORKValueStack { return plotPoints[plotIndex][pointIndex] } - func graphChartView(graphChartView: ORKGraphChartView, numberOfDataPointsForPlotIndex plotIndex: Int) -> Int { + func graphChartView(_ graphChartView: ORKGraphChartView, numberOfDataPointsForPlotIndex plotIndex: Int) -> Int { return plotPoints[plotIndex].count } } @@ -142,43 +143,43 @@ class LineGraphChartDataSource: BaseFloatRangeGraphChartDataSource { ] } - func maximumValueForGraphChartView(graphChartView: ORKGraphChartView) -> Double { + func maximumValueForGraphChartView(_ graphChartView: ORKGraphChartView) -> Double { return 70 } - func minimumValueForGraphChartView(graphChartView: ORKGraphChartView) -> Double { + func minimumValueForGraphChartView(_ graphChartView: ORKGraphChartView) -> Double { return 0 } - func numberOfDivisionsInXAxisForGraphChartView(graphChartView: ORKGraphChartView) -> Int { + func numberOfDivisionsInXAxisForGraphChartView(_ graphChartView: ORKGraphChartView) -> Int { return 10 } - func graphChartView(graphChartView: ORKGraphChartView, titleForXAxisAtPointIndex pointIndex: Int) -> String? { + func graphChartView(_ graphChartView: ORKGraphChartView, titleForXAxisAtPointIndex pointIndex: Int) -> String? { return (pointIndex % 2 == 0) ? nil : "\(pointIndex + 1)" } - func graphChartView(graphChartView: ORKGraphChartView, drawsVerticalReferenceLineAtPointIndex pointIndex: Int) -> Bool { + func graphChartView(_ graphChartView: ORKGraphChartView, drawsVerticalReferenceLineAtPointIndex pointIndex: Int) -> Bool { return (pointIndex % 2 == 1) ? false : true } - func scrubbingPlotIndexForGraphChartView(graphChartView: ORKGraphChartView) -> Int { + func scrubbingPlotIndexForGraphChartView(_ graphChartView: ORKGraphChartView) -> Int { return 2 } } class ColoredLineGraphChartDataSource: LineGraphChartDataSource { - func graphChartView(graphChartView: ORKGraphChartView, colorForPlotIndex plotIndex: Int) -> UIColor { + func graphChartView(_ graphChartView: ORKGraphChartView, colorForPlotIndex plotIndex: Int) -> UIColor { let color: UIColor switch plotIndex { case 0: - color = UIColor.cyanColor() + color = UIColor.cyan case 1: - color = UIColor.magentaColor() + color = UIColor.magenta case 2: - color = UIColor.yellowColor() + color = UIColor.yellow default: - color = UIColor.redColor() + color = UIColor.red } return color } @@ -187,13 +188,13 @@ class ColoredLineGraphChartDataSource: LineGraphChartDataSource { let color: UIColor switch plotIndex { case 0: - color = UIColor.blueColor().colorWithAlphaComponent(0.6) + color = UIColor.blue.withAlphaComponent(0.6) case 1: - color = UIColor.redColor().colorWithAlphaComponent(0.6) + color = UIColor.red.withAlphaComponent(0.6) case 2: - color = UIColor.greenColor().colorWithAlphaComponent(0.6) + color = UIColor.green.withAlphaComponent(0.6) default: - color = UIColor.cyanColor().colorWithAlphaComponent(0.6) + color = UIColor.cyan.withAlphaComponent(0.6) } return color } @@ -232,15 +233,15 @@ class DiscreteGraphChartDataSource: BaseFloatRangeGraphChartDataSource { ] } - func numberOfDivisionsInXAxisForGraphChartView(graphChartView: ORKGraphChartView) -> Int { + func numberOfDivisionsInXAxisForGraphChartView(_ graphChartView: ORKGraphChartView) -> Int { return 8 } - func graphChartView(graphChartView: ORKGraphChartView, titleForXAxisAtPointIndex pointIndex: Int) -> String { + func graphChartView(_ graphChartView: ORKGraphChartView, titleForXAxisAtPointIndex pointIndex: Int) -> String { return "\(pointIndex + 1)" } - func scrubbingPlotIndexForGraphChartView(graphChartView: ORKGraphChartView) -> Int { + func scrubbingPlotIndexForGraphChartView(_ graphChartView: ORKGraphChartView) -> Int { return 2 } } @@ -250,13 +251,13 @@ class ColoredDiscreteGraphChartDataSource: DiscreteGraphChartDataSource { let color: UIColor switch plotIndex { case 0: - color = UIColor.cyanColor() + color = UIColor.cyan case 1: - color = UIColor.magentaColor() + color = UIColor.magenta case 2: - color = UIColor.yellowColor() + color = UIColor.yellow default: - color = UIColor.redColor() + color = UIColor.red } return color } @@ -304,26 +305,31 @@ class BarGraphChartDataSource: BaseFloatStackGraphChartDataSource { return "\(pointIndex + 1)" } - func scrubbingPlotIndexForGraphChartView(graphChartView: ORKGraphChartView) -> Int { + func scrubbingPlotIndexForGraphChartView(_ graphChartView: ORKGraphChartView) -> Int { return 2 } } class ColoredBarGraphChartDataSource: BarGraphChartDataSource { + func graphChartView(graphChartView: ORKGraphChartView, colorForPlotIndex plotIndex: Int) -> UIColor { let color: UIColor switch plotIndex { case 0: - color = UIColor.cyanColor() + color = UIColor.cyan case 1: - color = UIColor.magentaColor() + color = UIColor.magenta case 2: - color = UIColor.yellowColor() + color = UIColor.yellow default: - color = UIColor.redColor() + color = UIColor.red } return color } + + override func scrubbingPlotIndexForGraphChartView(_ graphChartView: ORKGraphChartView) -> Int { + return 1 + } } class PerformanceLineGraphChartDataSource: BaseFloatRangeGraphChartDataSource { @@ -433,27 +439,27 @@ class PerformanceLineGraphChartDataSource: BaseFloatRangeGraphChartDataSource { ] } - func maximumValueForGraphChartView(graphChartView: ORKGraphChartView) -> Double { + func maximumValueForGraphChartView(_ graphChartView: ORKGraphChartView) -> Double { return 70 } - func minimumValueForGraphChartView(graphChartView: ORKGraphChartView) -> Double { + func minimumValueForGraphChartView(_ graphChartView: ORKGraphChartView) -> Double { return 0 } - func numberOfDivisionsInXAxisForGraphChartView(graphChartView: ORKGraphChartView) -> Int { + func numberOfDivisionsInXAxisForGraphChartView(_ graphChartView: ORKGraphChartView) -> Int { return 10 } - func graphChartView(graphChartView: ORKGraphChartView, titleForXAxisAtPointIndex pointIndex: Int) -> String? { + func graphChartView(_ graphChartView: ORKGraphChartView, titleForXAxisAtPointIndex pointIndex: Int) -> String? { return (pointIndex % 2 == 0) ? nil : "\(pointIndex + 1)" } - func graphChartView(graphChartView: ORKGraphChartView, drawsVerticalReferenceLineAtPointIndex pointIndex: Int) -> Bool { + func graphChartView(_ graphChartView: ORKGraphChartView, drawsVerticalReferenceLineAtPointIndex pointIndex: Int) -> Bool { return (pointIndex % 2 == 1) ? false : true } - func scrubbingPlotIndexForGraphChartView(graphChartView: ORKGraphChartView) -> Int { + func scrubbingPlotIndexForGraphChartView(_ graphChartView: ORKGraphChartView) -> Int { return 2 } } diff --git a/Testing/ORKTest/ORKTest/Charts/ChartListViewController.swift b/Testing/ORKTest/ORKTest/Charts/ChartListViewController.swift index 36ad1bed..cf6a9498 100644 --- a/Testing/ORKTest/ORKTest/Charts/ChartListViewController.swift +++ b/Testing/ORKTest/ORKTest/Charts/ChartListViewController.swift @@ -32,13 +32,11 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. import UIKit import ResearchKit -func executeAfterDelay(delay:Double, closure:()->()) { - dispatch_after( - dispatch_time( - DISPATCH_TIME_NOW, - Int64(delay * Double(NSEC_PER_SEC)) - ), - dispatch_get_main_queue(), closure) +func executeAfterDelay(_ delay:Double, closure:@escaping ()->()) { + let delayTime = DispatchTime.now() + delay + let dispatchWorkItem = DispatchWorkItem(block: closure); + DispatchQueue.main.asyncAfter( + deadline: delayTime, execute: dispatchWorkItem) } class ChartListViewController: UIViewController, UITableViewDataSource { @@ -68,60 +66,61 @@ class ChartListViewController: UIViewController, UITableViewDataSource { var barGraphChartTableViewCell: BarGraphChartTableViewCell! var chartTableViewCells: [UITableViewCell]! - @IBAction func dimiss(sender: AnyObject) { - self.dismissViewControllerAnimated(true, completion: nil) + @IBAction func dimiss(_ sender: AnyObject) { + self.dismiss(animated: true, completion: nil) } override func viewDidLoad() { self.tableView.dataSource = self; // ORKPieChartView - pieChartTableViewCell = tableView.dequeueReusableCellWithIdentifier(pieChartIdentifier) as! PieChartTableViewCell + pieChartTableViewCell = tableView.dequeueReusableCell(withIdentifier: pieChartIdentifier) as! PieChartTableViewCell let pieChartView = pieChartTableViewCell.pieChartView - pieChartView.dataSource = randomColorPieChartDataSource + pieChartView?.dataSource = randomColorPieChartDataSource // Optional custom configuration - pieChartView.title = "TITLE" - pieChartView.text = "TEXT" - pieChartView.lineWidth = 1000 - pieChartView.showsTitleAboveChart = true - pieChartView.showsPercentageLabels = false - pieChartView.drawsClockwise = false + + pieChartView?.title = "TITLE" + pieChartView?.text = "TEXT" + pieChartView?.lineWidth = 1000 + pieChartView?.showsTitleAboveChart = true + pieChartView?.showsPercentageLabels = false + pieChartView?.drawsClockwise = false executeAfterDelay(2.5) { - pieChartView.showsTitleAboveChart = false - pieChartView.lineWidth = 12 - pieChartView.title = "UPDATED" - pieChartView.text = "UPDATED TEXT" - pieChartView.titleColor = UIColor.redColor() - pieChartView.textColor = UIColor.orangeColor() + pieChartView?.showsTitleAboveChart = false + pieChartView?.lineWidth = 12 + pieChartView?.title = "UPDATED" + pieChartView?.text = "UPDATED TEXT" + pieChartView?.titleColor = UIColor.red + pieChartView?.textColor = UIColor.orange } executeAfterDelay(3.5) { - pieChartView.drawsClockwise = true - pieChartView.dataSource = self.colorlessPieChartDataSource + pieChartView?.drawsClockwise = true + pieChartView?.dataSource = self.colorlessPieChartDataSource } executeAfterDelay(4.5) { - pieChartView.showsPercentageLabels = true - pieChartView.tintColor = UIColor.purpleColor() + pieChartView?.showsPercentageLabels = true + pieChartView?.tintColor = UIColor.purple } executeAfterDelay(5.5) { - pieChartView.titleColor = nil - pieChartView.textColor = nil + pieChartView?.titleColor = nil + pieChartView?.textColor = nil } // ORKBarGraphChartView - barGraphChartTableViewCell = tableView.dequeueReusableCellWithIdentifier(barGraphChartIdentifier) as! BarGraphChartTableViewCell + barGraphChartTableViewCell = tableView.dequeueReusableCell(withIdentifier: barGraphChartIdentifier) as! BarGraphChartTableViewCell let barGraphChartView = barGraphChartTableViewCell.graphChartView as! ORKBarGraphChartView barGraphChartView.dataSource = barGraphChartDataSource executeAfterDelay(1.5) { - barGraphChartView.tintColor = UIColor.purpleColor() + barGraphChartView.tintColor = UIColor.purple barGraphChartView.showsHorizontalReferenceLines = true barGraphChartView.showsVerticalReferenceLines = true } executeAfterDelay(2.5) { - barGraphChartView.axisColor = UIColor.redColor() - barGraphChartView.verticalAxisTitleColor = UIColor.redColor() - barGraphChartView.referenceLineColor = UIColor.orangeColor() - barGraphChartView.scrubberLineColor = UIColor.blueColor() - barGraphChartView.scrubberThumbColor = UIColor.greenColor() + barGraphChartView.axisColor = UIColor.red + barGraphChartView.verticalAxisTitleColor = UIColor.red + barGraphChartView.referenceLineColor = UIColor.orange + barGraphChartView.scrubberLineColor = UIColor.blue + barGraphChartView.scrubberThumbColor = UIColor.green } executeAfterDelay(3.5) { barGraphChartView.axisColor = nil @@ -141,21 +140,21 @@ class ChartListViewController: UIViewController, UITableViewDataSource { } // ORKLineGraphChartView - lineGraphChartTableViewCell = tableView.dequeueReusableCellWithIdentifier(lineGraphChartIdentifier) as! LineGraphChartTableViewCell + lineGraphChartTableViewCell = tableView.dequeueReusableCell(withIdentifier: lineGraphChartIdentifier) as! LineGraphChartTableViewCell let lineGraphChartView = lineGraphChartTableViewCell.graphChartView as! ORKLineGraphChartView lineGraphChartView.dataSource = lineGraphChartDataSource // Optional custom configuration executeAfterDelay(1.5) { - lineGraphChartView.tintColor = UIColor.purpleColor() + lineGraphChartView.tintColor = UIColor.purple lineGraphChartView.showsHorizontalReferenceLines = true lineGraphChartView.showsVerticalReferenceLines = true } executeAfterDelay(2.5) { - lineGraphChartView.axisColor = UIColor.redColor() - lineGraphChartView.verticalAxisTitleColor = UIColor.redColor() - lineGraphChartView.referenceLineColor = UIColor.orangeColor() - lineGraphChartView.scrubberLineColor = UIColor.blueColor() - lineGraphChartView.scrubberThumbColor = UIColor.greenColor() + lineGraphChartView.axisColor = UIColor.red + lineGraphChartView.verticalAxisTitleColor = UIColor.red + lineGraphChartView.referenceLineColor = UIColor.orange + lineGraphChartView.scrubberLineColor = UIColor.blue + lineGraphChartView.scrubberThumbColor = UIColor.green } executeAfterDelay(3.5) { lineGraphChartView.axisColor = nil @@ -175,7 +174,7 @@ class ChartListViewController: UIViewController, UITableViewDataSource { } // ORKDiscreteGraphChartView - discreteGraphChartTableViewCell = tableView.dequeueReusableCellWithIdentifier(discreteGraphChartIdentifier) as! DiscreteGraphChartTableViewCell + discreteGraphChartTableViewCell = tableView.dequeueReusableCell(withIdentifier: discreteGraphChartIdentifier) as! DiscreteGraphChartTableViewCell let discreteGraphChartView = discreteGraphChartTableViewCell.graphChartView as! ORKDiscreteGraphChartView discreteGraphChartView.dataSource = discreteGraphChartDataSource // Optional custom configuration @@ -183,7 +182,7 @@ class ChartListViewController: UIViewController, UITableViewDataSource { discreteGraphChartView.showsVerticalReferenceLines = true discreteGraphChartView.drawsConnectedRanges = true executeAfterDelay(2.5) { - discreteGraphChartView.tintColor = UIColor.purpleColor() + discreteGraphChartView.tintColor = UIColor.purple } executeAfterDelay(3.5) { discreteGraphChartView.drawsConnectedRanges = false @@ -197,25 +196,25 @@ class ChartListViewController: UIViewController, UITableViewDataSource { chartTableViewCells = [pieChartTableViewCell, barGraphChartTableViewCell, lineGraphChartTableViewCell, discreteGraphChartTableViewCell] - tableView.tableFooterView = UIView(frame: CGRectZero) + tableView.tableFooterView = UIView(frame: CGRect.zero) } - func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int { + func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { return chartTableViewCells.count } - func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell { - let cell = chartTableViewCells[indexPath.row]; + func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { + let cell = chartTableViewCells[(indexPath as NSIndexPath).row]; return cell } - override func viewWillAppear(animated: Bool) { + override func viewWillAppear(_ animated: Bool) { super.viewWillAppear(animated) self.view.layoutIfNeeded() - pieChartTableViewCell.pieChartView.animateWithDuration(2.5) - barGraphChartTableViewCell.graphChartView.animateWithDuration(2.5) - lineGraphChartTableViewCell.graphChartView.animateWithDuration(2.5) - discreteGraphChartTableViewCell.graphChartView.animateWithDuration(2.5) + pieChartTableViewCell.pieChartView.animate(withDuration: 0.5) + lineGraphChartTableViewCell.graphChartView.animate(withDuration: 0.5) + discreteGraphChartTableViewCell.graphChartView.animate(withDuration: 0.5) + discreteGraphChartTableViewCell.graphChartView.animate(withDuration: 2.5) } } @@ -231,15 +230,15 @@ class ChartPerformanceListViewController: UIViewController, UITableViewDataSourc var discreteGraphChartTableViewCell: DiscreteGraphChartTableViewCell! var chartTableViewCells: [UITableViewCell]! - @IBAction func dimiss(sender: AnyObject) { - self.dismissViewControllerAnimated(true, completion: nil) + @IBAction func dimiss(_ sender: AnyObject) { + self.dismiss(animated: true, completion: nil) } override func viewDidLoad() { self.tableView.dataSource = self; // ORKLineGraphChartView - lineGraphChartTableViewCell = tableView.dequeueReusableCellWithIdentifier(lineGraphChartIdentifier) as! LineGraphChartTableViewCell + lineGraphChartTableViewCell = tableView.dequeueReusableCell(withIdentifier: lineGraphChartIdentifier) as! LineGraphChartTableViewCell let lineGraphChartView = lineGraphChartTableViewCell.graphChartView as! ORKLineGraphChartView lineGraphChartView.dataSource = graphChartDataSource // Optional custom configuration @@ -247,7 +246,7 @@ class ChartPerformanceListViewController: UIViewController, UITableViewDataSourc lineGraphChartView.showsVerticalReferenceLines = true // ORKDiscreteGraphChartView - discreteGraphChartTableViewCell = tableView.dequeueReusableCellWithIdentifier(discreteGraphChartIdentifier) as! DiscreteGraphChartTableViewCell + discreteGraphChartTableViewCell = tableView.dequeueReusableCell(withIdentifier: discreteGraphChartIdentifier) as! DiscreteGraphChartTableViewCell let discreteGraphChartView = discreteGraphChartTableViewCell.graphChartView as! ORKDiscreteGraphChartView discreteGraphChartView.dataSource = graphChartDataSource // Optional custom configuration @@ -257,20 +256,20 @@ class ChartPerformanceListViewController: UIViewController, UITableViewDataSourc chartTableViewCells = [lineGraphChartTableViewCell, discreteGraphChartTableViewCell] - tableView.tableFooterView = UIView(frame: CGRectZero) + tableView.tableFooterView = UIView(frame: CGRect.zero) } - func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int { + func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { return chartTableViewCells.count } - func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell { - let cell = chartTableViewCells[indexPath.row]; + func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { + let cell = chartTableViewCells[(indexPath as NSIndexPath).row]; return cell } - override func viewWillAppear(animated: Bool) { + override func viewWillAppear(_ animated: Bool) { super.viewWillAppear(animated) - lineGraphChartTableViewCell.graphChartView.animateWithDuration(0.5) + lineGraphChartTableViewCell.graphChartView.animate(withDuration: 0.5) } } diff --git a/Testing/ORKTest/ORKTest/MainViewController.m b/Testing/ORKTest/ORKTest/MainViewController.m index a2b8679e..07552dea 100644 --- a/Testing/ORKTest/ORKTest/MainViewController.m +++ b/Testing/ORKTest/ORKTest/MainViewController.m @@ -56,6 +56,7 @@ DefineStringKey(VerificationTaskIdentifier); DefineStringKey(DatePickingTaskIdentifier); DefineStringKey(ImageCaptureTaskIdentifier); +DefineStringKey(VideoCaptureTaskIdentifier); DefineStringKey(ImageChoicesTaskIdentifier); DefineStringKey(InstantiateCustomVCTaskIdentifier); DefineStringKey(LocationTaskIdentifier); @@ -342,6 +343,7 @@ static const CGFloat HeaderSideLayoutMargin = 16.0; @[ // Question Steps @"Date Pickers", @"Image Capture", + @"Video Capture", @"Image Choices", @"Location", @"Scale", @@ -537,6 +539,8 @@ static const CGFloat HeaderSideLayoutMargin = 16.0; return [self makeImageChoicesTask]; } else if ([identifier isEqualToString:ImageCaptureTaskIdentifier]) { return [self makeImageCaptureTask]; + } else if ([identifier isEqualToString:VideoCaptureTaskIdentifier]) { + return [self makeVideoCaptureTask]; } else if ([identifier isEqualToString:TwoFingerTapTaskIdentifier]) { return [ORKOrderedTask twoFingerTappingIntervalTaskWithIdentifier:TwoFingerTapTaskIdentifier intendedUseDescription:nil @@ -2943,6 +2947,91 @@ static const CGFloat HeaderSideLayoutMargin = 16.0; [self beginTaskWithIdentifier:ImageCaptureTaskIdentifier]; } +#pragma mark - Video Capture +- (id)makeVideoCaptureTask { + NSMutableArray *steps = [NSMutableArray new]; + + /* + If implementing an video capture task like this one, remember that people will + take your instructions literally. So, be cautious. Make sure your template image + is high contrast and very visible against a variety of backgrounds. + */ + { + ORKInstructionStep *step = [[ORKInstructionStep alloc] initWithIdentifier:@"begin"]; + step.title = @"Hands"; + step.image = [[UIImage imageNamed:@"hands_solid"] imageWithRenderingMode:UIImageRenderingModeAlwaysTemplate]; + step.detailText = @"In this step we will capture 5 second videos of both of your hands"; + [steps addObject:step]; + } + + { + ORKInstructionStep *step = [[ORKInstructionStep alloc] initWithIdentifier:@"right1"]; + step.title = @"Right Hand"; + step.image = [[UIImage imageNamed:@"right_hand_solid"] imageWithRenderingMode:UIImageRenderingModeAlwaysTemplate]; + step.detailText = @"Let's start by capturing a video of your right hand"; + [steps addObject:step]; + } + + { + ORKInstructionStep *step = [[ORKInstructionStep alloc] initWithIdentifier:@"right2"]; + step.title = @"Right Hand"; + step.image = [[UIImage imageNamed:@"right_hand_outline"] imageWithRenderingMode:UIImageRenderingModeAlwaysTemplate]; + step.detailText = @"Align your right hand with the on-screen outline and record the video. Be sure to place your hand over a contrasting background. You can re-capture the video as many times as you need."; + [steps addObject:step]; + } + + { + ORKVideoCaptureStep *step = [[ORKVideoCaptureStep alloc] initWithIdentifier:@"right3"]; + step.templateImage = [UIImage imageNamed:@"right_hand_outline_big"]; + step.templateImageInsets = UIEdgeInsetsMake(0.05, 0.05, 0.05, 0.05); + step.duration = @5.0; + step.accessibilityInstructions = @"Extend your right hand, palm side down, one foot in front of your device. Tap the Start Recording button, or two-finger double tap the preview to capture the video"; + step.accessibilityHint = @"Records the video visible in the preview"; + [steps addObject:step]; + } + + { + ORKInstructionStep *step = [[ORKInstructionStep alloc] initWithIdentifier:@"left1"]; + step.title = @"Left Hand"; + step.image = [[UIImage imageNamed:@"left_hand_solid"] imageWithRenderingMode:UIImageRenderingModeAlwaysTemplate]; + step.detailText = @"Now let's capture a video of your left hand"; + [steps addObject:step]; + } + + { + ORKInstructionStep *step = [[ORKInstructionStep alloc] initWithIdentifier:@"left2"]; + step.title = @"Left Hand"; + step.image = [[UIImage imageNamed:@"left_hand_outline"] imageWithRenderingMode:UIImageRenderingModeAlwaysTemplate]; + step.detailText = @"Align your left hand with the on-screen outline and record the video. Be sure to place your hand over a contrasting background. You can re-capture the video as many times as you need."; + [steps addObject:step]; + } + + { + ORKVideoCaptureStep *step = [[ORKVideoCaptureStep alloc] initWithIdentifier:@"left3"]; + step.templateImage = [UIImage imageNamed:@"left_hand_outline_big"]; + step.templateImageInsets = UIEdgeInsetsMake(0.05, 0.05, 0.05, 0.05); + step.duration = @5.0; + step.accessibilityInstructions = @"Extend your left hand, palm side down, one foot in front of your device. Tap the Start Recording button, or two-finger double tap the preview to capture the video"; + step.accessibilityHint = @"Records the video visible in the preview"; + [steps addObject:step]; + } + + { + ORKInstructionStep *step = [[ORKInstructionStep alloc] initWithIdentifier:@"end"]; + step.title = @"Complete"; + step.detailText = @"Hand video capture complete"; + [steps addObject:step]; + } + + ORKOrderedTask *task = [[ORKOrderedTask alloc] initWithIdentifier:VideoCaptureTaskIdentifier steps:steps]; + return task; +} + +- (void)videoCaptureButtonTapped:(id)sender { + [self beginTaskWithIdentifier:VideoCaptureTaskIdentifier]; +} + + - (void)navigableOrderedTaskButtonTapped:(id)sender { [self beginTaskWithIdentifier:NavigableOrderedTaskIdentifier]; } @@ -3679,8 +3768,7 @@ stepViewControllerWillAppear:(ORKStepViewController *)stepViewController { NSLog(@"[ORKTest] task results: %@", taskViewController.result); - if (_currentDocument) - { + if (_currentDocument) { /* This demonstrates how to take a signature result, apply it to a document, and then generate a PDF From the document that includes the signature. diff --git a/Testing/ORKTest/ORKTest/ORKESerialization.m b/Testing/ORKTest/ORKTest/ORKESerialization.m index b6e0b0cf..112c41e3 100644 --- a/Testing/ORKTest/ORKTest/ORKESerialization.m +++ b/Testing/ORKTest/ORKTest/ORKESerialization.m @@ -550,6 +550,21 @@ encondingTable = PROPERTY(accessibilityHint, NSString, NSObject, YES, nil, nil), PROPERTY(accessibilityInstructions, NSString, NSObject, YES, nil, nil), })), + ENTRY(ORKVideoCaptureStep, + ^id(NSDictionary *dict, ORKESerializationPropertyGetter getter) { + return [[ORKVideoCaptureStep alloc] initWithIdentifier:GETPROP(dict, identifier)]; + }, + (@{ + PROPERTY(templateImageInsets, NSValue, NSObject, YES, + ^id(id value) { return value?dictionaryFromUIEdgeInsets(((NSValue *)value).UIEdgeInsetsValue):nil; }, + ^id(id dict) { return [NSValue valueWithUIEdgeInsets:edgeInsetsFromDictionary(dict)]; }), + PROPERTY(duration, NSNumber, NSObject, YES, nil, nil), + PROPERTY(audioMute, NSNumber, NSObject, YES, nil, nil), + PROPERTY(flashMode, NSNumber, NSObject, YES, nil, nil), + PROPERTY(devicePosition, NSNumber, NSObject, YES, nil, nil), + PROPERTY(accessibilityHint, NSString, NSObject, YES, nil, nil), + PROPERTY(accessibilityInstructions, NSString, NSObject, YES, nil, nil), + })), ENTRY(ORKSignatureStep, ^id(NSDictionary *dict, ORKESerializationPropertyGetter getter) { return [[ORKSignatureStep alloc] initWithIdentifier:GETPROP(dict, identifier)]; diff --git a/Testing/ORKTest/ORKTest/Supporting Files/Info.plist b/Testing/ORKTest/ORKTest/Supporting Files/Info.plist index 54e9da7f..d94c77ac 100644 --- a/Testing/ORKTest/ORKTest/Supporting Files/Info.plist +++ b/Testing/ORKTest/ORKTest/Supporting Files/Info.plist @@ -2,6 +2,16 @@ + NSMotionUsageDescription + Use motion sensors + NSMicrophoneUsageDescription + Test audio recording features. + NSCameraUsageDescription + Test Camera related features. + NSHealthShareUsageDescription + Test HK releated features. + NSHealthUpdateUsageDescription + Test HK releated features. CFBundleDevelopmentRegion en CFBundleExecutable diff --git a/Testing/ORKTest/ORKTest/TaskFactory.swift b/Testing/ORKTest/ORKTest/TaskFactory.swift index 7b577409..2357f05c 100644 --- a/Testing/ORKTest/ORKTest/TaskFactory.swift +++ b/Testing/ORKTest/ORKTest/TaskFactory.swift @@ -33,7 +33,7 @@ import ResearchKit @objc class TaskFactory : NSObject { - class func makeNavigableOrderedTask(taskIdentifier : String) -> ORKNavigableOrderedTask { + class func makeNavigableOrderedTask(_ taskIdentifier : String) -> ORKNavigableOrderedTask { var steps: [ORKStep] = [] var answerFormat: ORKAnswerFormat var step: ORKStep @@ -41,31 +41,31 @@ import ResearchKit // Form step textChoices = [ - ORKTextChoice(text: "Good", value: "good"), - ORKTextChoice(text: "Bad", value: "bad") + ORKTextChoice(text: "Good", value: "good" as NSCoding & NSCopying & NSObjectProtocol), + ORKTextChoice(text: "Bad", value: "bad" as NSCoding & NSCopying & NSObjectProtocol) ] - answerFormat = ORKAnswerFormat.choiceAnswerFormatWithStyle(ORKChoiceAnswerStyle.SingleChoice, textChoices: textChoices) + answerFormat = ORKAnswerFormat.choiceAnswerFormat(with: ORKChoiceAnswerStyle.singleChoice, textChoices: textChoices) let formItemFeeling: ORKFormItem = ORKFormItem(identifier: "formFeeling", text: "How do you feel", answerFormat: answerFormat) let formItemMood: ORKFormItem = ORKFormItem(identifier: "formMood", text: "How is your mood", answerFormat: answerFormat) let formStep: ORKFormStep = ORKFormStep(identifier: "introForm") - formStep.optional = false + formStep.isOptional = false formStep.formItems = [formItemFeeling, formItemMood] steps.append(formStep) // Question steps textChoices = [ - ORKTextChoice(text: "Headache", value: "headache"), - ORKTextChoice(text: "Dizziness", value: "dizziness"), - ORKTextChoice(text: "Nausea", value: "nausea") + ORKTextChoice(text: "Headache", value: "headache" as NSCoding & NSCopying & NSObjectProtocol), + ORKTextChoice(text: "Dizziness", value: "dizziness" as NSCoding & NSCopying & NSObjectProtocol), + ORKTextChoice(text: "Nausea", value: "nausea" as NSCoding & NSCopying & NSObjectProtocol) ] - answerFormat = ORKTextChoiceAnswerFormat(style: ORKChoiceAnswerStyle.SingleChoice, textChoices: textChoices) + answerFormat = ORKTextChoiceAnswerFormat(style: ORKChoiceAnswerStyle.singleChoice, textChoices: textChoices) step = ORKQuestionStep(identifier: "symptom", title: "Which is your most severe symptom?", answer: answerFormat) - step.optional = false + step.isOptional = false steps.append(step) answerFormat = ORKAnswerFormat.booleanAnswerFormat() step = ORKQuestionStep(identifier: "severity", title: "Does your symptom interfere with your daily life?", answer: answerFormat) - step.optional = false + step.isOptional = false steps.append(step) // Instruction steps @@ -104,10 +104,10 @@ import ResearchKit // From the feel/mood form step, skip the survey if the user is feeling okay and has a good mood var resultSelector = ORKResultSelector.init(stepIdentifier: "introForm", resultIdentifier: "formFeeling"); - let predicateGoodFeeling: NSPredicate = ORKResultPredicate.predicateForChoiceQuestionResultWithResultSelector(resultSelector, expectedAnswerValue: "good") + let predicateGoodFeeling: NSPredicate = ORKResultPredicate.predicateForChoiceQuestionResult(with: resultSelector, expectedAnswerValue: "good" as NSCoding & NSCopying & NSObjectProtocol) resultSelector = ORKResultSelector.init(stepIdentifier: "introForm", resultIdentifier: "formMood"); - let predicateGoodMood: NSPredicate = ORKResultPredicate.predicateForChoiceQuestionResultWithResultSelector(resultSelector, expectedAnswerValue: "good") - let predicateGoodMoodAndFeeling: NSPredicate = NSCompoundPredicate(andPredicateWithSubpredicates: [predicateGoodFeeling, predicateGoodMood]) + let predicateGoodMood: NSPredicate = ORKResultPredicate.predicateForChoiceQuestionResult(with: resultSelector, expectedAnswerValue: "good" as NSCoding & NSCopying & NSObjectProtocol) + let predicateGoodMoodAndFeeling: NSCompoundPredicate = NSCompoundPredicate(andPredicateWithSubpredicates: [predicateGoodFeeling, predicateGoodMood]) predicateRule = ORKPredicateStepNavigationRule(resultPredicatesAndDestinationStepIdentifiers: [ (predicateGoodMoodAndFeeling, "survey_skipped") ]) task.setNavigationRule(predicateRule, forTriggerStepIdentifier: "introForm") @@ -122,10 +122,10 @@ import ResearchKit // @"SUBQUERY(SELF, $x, $x.identifier like 'symptom' \ // AND SUBQUERY($x.answer, $y, $y like 'headache').@count > 0).@count > 0"]; resultSelector = ORKResultSelector.init(resultIdentifier: "symptom"); - let predicateHeadache: NSPredicate = ORKResultPredicate.predicateForChoiceQuestionResultWithResultSelector(resultSelector, expectedAnswerValue: "headache") + let predicateHeadache: NSPredicate = ORKResultPredicate.predicateForChoiceQuestionResult(with: resultSelector, expectedAnswerValue: "headache" as NSCoding & NSCopying & NSObjectProtocol) // User didn't chose headache at the symptom step - let predicateNotHeadache: NSPredicate = NSCompoundPredicate(notPredicateWithSubpredicate: predicateHeadache) + let predicateNotHeadache: NSCompoundPredicate = NSCompoundPredicate(notPredicateWithSubpredicate: predicateHeadache) predicateRule = ORKPredicateStepNavigationRule(resultPredicatesAndDestinationStepIdentifiers: [ (predicateNotHeadache, "other_symptom") ]) @@ -138,14 +138,14 @@ import ResearchKit // [NSPredicate predicateWithFormat: // @"SUBQUERY(SELF, $x, $x.identifier like 'severity' AND $x.answer == YES).@count > 0"]; resultSelector = ORKResultSelector.init(resultIdentifier: "severity"); - let predicateSevereYes: NSPredicate = ORKResultPredicate.predicateForBooleanQuestionResultWithResultSelector(resultSelector, expectedAnswer: true) + let predicateSevereYes: NSPredicate = ORKResultPredicate.predicateForBooleanQuestionResult(with: resultSelector, expectedAnswer: true) // User chose NO at the severity step resultSelector = ORKResultSelector.init(resultIdentifier: "severity"); - let predicateSevereNo: NSPredicate = ORKResultPredicate.predicateForBooleanQuestionResultWithResultSelector(resultSelector, expectedAnswer: false) + let predicateSevereNo: NSPredicate = ORKResultPredicate.predicateForBooleanQuestionResult(with: resultSelector, expectedAnswer: false) - let predicateSevereHeadache: NSPredicate = NSCompoundPredicate(andPredicateWithSubpredicates: [predicateHeadache, predicateSevereYes]) - let predicateLightHeadache: NSPredicate = NSCompoundPredicate(andPredicateWithSubpredicates: [predicateHeadache, predicateSevereNo]) + let predicateSevereHeadache: NSCompoundPredicate = NSCompoundPredicate(andPredicateWithSubpredicates: [predicateHeadache, predicateSevereYes]) + let predicateLightHeadache: NSCompoundPredicate = NSCompoundPredicate(andPredicateWithSubpredicates: [predicateHeadache, predicateSevereNo]) predicateRule = ORKPredicateStepNavigationRule(resultPredicatesAndDestinationStepIdentifiers: [ (predicateSevereHeadache, "severe_headache"), (predicateLightHeadache, "light_headache") ]) diff --git a/Testing/ORKTest/ORKTestTests/Info.plist b/Testing/ORKTest/ORKTestTests/Info.plist index ba72822e..c782c793 100644 --- a/Testing/ORKTest/ORKTestTests/Info.plist +++ b/Testing/ORKTest/ORKTestTests/Info.plist @@ -2,6 +2,10 @@ + NSHealthShareUsageDescription + Test HK releated features. + NSHealthUpdateUsageDescription + Test HK related features. CFBundleDevelopmentRegion en CFBundleExecutable diff --git a/Testing/ORKTest/ORKTestTests/ORKDataCollectionTests.m b/Testing/ORKTest/ORKTestTests/ORKDataCollectionTests.m new file mode 100644 index 00000000..f8c4a467 --- /dev/null +++ b/Testing/ORKTest/ORKTestTests/ORKDataCollectionTests.m @@ -0,0 +1,427 @@ +/* + Copyright (c) 2016, Apple Inc. All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + + 3. Neither the name of the copyright holder(s) nor the names of any contributors + may be used to endorse or promote products derived from this software without + specific prior written permission. No license is granted to the trademarks of + the copyright holders even if such marks are included in this software. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + + +#import +#import + + +@interface ORKDataCollectionTests : XCTestCase + +@end + + +@implementation ORKDataCollectionTests { + XCTestExpectation *_completionExpectation; + XCTestExpectation *_healthCollectionExpectation; + XCTestExpectation *_corrolationCollectionExpectation; + HKHealthStore *_healthStore; + BOOL _acceptDelivery; + NSInteger _errorCount; +} + +- (BOOL)fileExistAt:(NSString *)path { + return [[NSFileManager defaultManager] fileExistsAtPath:path]; +} + +- (NSString *)documentPath { + NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); + return ([paths count] > 0) ? [paths objectAtIndex:0] : nil; +} + +- (NSString *)sourcePath { + NSString *sourcePath = [[self documentPath] stringByAppendingPathComponent:@"source"]; + [[NSFileManager defaultManager] createDirectoryAtPath:sourcePath + withIntermediateDirectories:YES + attributes:nil + error:nil]; + return sourcePath; +} + +- (NSString *)basePath { + NSString *testPath = [[self documentPath] stringByAppendingPathComponent:@"test"]; + [[NSFileManager defaultManager] createDirectoryAtPath:testPath + withIntermediateDirectories:YES + attributes:nil + error:nil]; + return testPath; +} + +- (NSString *)storePath { + NSString *basePath = [self basePath]; + NSString *storePath = [basePath stringByAppendingPathComponent:@"managedDataCollectionStore"]; + return storePath; +} + +- (NSString *)cleanStorePath { + NSString *storePath = [self storePath]; + [[NSFileManager defaultManager] removeItemAtPath:storePath error:nil]; + return storePath; +} + +static ORKDataCollectionManager *createManagerWithCollecters (NSURL *url, + ORKMotionActivityCollector **motionCollector, + ORKHealthCollector **healthCollector, + ORKHealthCorrelationCollector **healthCorrelationCollector, + NSError **error) { + + ORKDataCollectionManager *manager = [[ORKDataCollectionManager alloc] initWithPersistenceDirectoryURL:url]; + + NSDate *startDate = [NSDate dateWithTimeIntervalSinceNow:-5]; + + ORKMotionActivityCollector *mac = [manager addMotionActivityCollectorWithStartDate:startDate error:error]; + if (motionCollector) { + *motionCollector = mac; + } + + if (error && *error) { + return nil; + } + + HKQuantityType *type = [HKQuantityType quantityTypeForIdentifier:HKQuantityTypeIdentifierHeartRate]; + HKUnit *unit = [[HKUnit countUnit] unitDividedByUnit:[HKUnit minuteUnit]]; + ORKHealthCollector *hc = [manager addHealthCollectorWithSampleType:type + unit:unit + startDate:startDate + error:error]; + + if (healthCollector) { + *healthCollector = hc; + } + + if (error && *error) { + return nil; + } + + HKCorrelationType *correlationType = [HKCorrelationType correlationTypeForIdentifier:HKCorrelationTypeIdentifierBloodPressure]; + NSArray *sampleTypes = @[[HKObjectType quantityTypeForIdentifier: HKQuantityTypeIdentifierBloodPressureDiastolic], + [HKObjectType quantityTypeForIdentifier:HKQuantityTypeIdentifierBloodPressureSystolic]]; + NSArray *units = @[[HKUnit unitFromString:@"mmHg"], [HKUnit unitFromString:@"mmHg"]]; + + ORKHealthCorrelationCollector *hcc = [manager addHealthCorrelationCollectorWithCorrelationType:correlationType + sampleTypes:sampleTypes + units:units + startDate:startDate + error:error]; + + if (healthCorrelationCollector) { + *healthCorrelationCollector = hcc; + } + + if (error && *error) { + return nil; + } + + return manager; +} + +- (void)setUp { + HKQuantityType *heartRateType = [HKQuantityType quantityTypeForIdentifier:HKQuantityTypeIdentifierHeartRate]; + HKQuantityType *diastolicType = [HKQuantityType quantityTypeForIdentifier:HKQuantityTypeIdentifierBloodPressureDiastolic]; + HKQuantityType *systolicType = [HKQuantityType quantityTypeForIdentifier:HKQuantityTypeIdentifierBloodPressureSystolic]; + + NSSet *types = [NSSet setWithObjects:heartRateType, diastolicType, systolicType, nil]; + XCTestExpectation *expectation = [self expectationWithDescription:@"Wait for grant permissions"]; + [[HKHealthStore new] requestAuthorizationToShareTypes:types readTypes:types + completion:^(BOOL success, NSError * _Nullable error) { + [expectation fulfill]; + }]; + + _acceptDelivery = YES; + + [self waitForExpectationsWithTimeout:10.0 handler:^(NSError *error) { + XCTAssertNil(error); + }]; +} + +- (void)testBasicOperations { + + ORKMotionActivityCollector *motionCollector; + ORKHealthCollector *healthCollector; + ORKHealthCorrelationCollector *healthCorrelationCollector; + NSError *error; + // Create + ORKDataCollectionManager *manager = createManagerWithCollecters([NSURL fileURLWithPath:[self cleanStorePath]], + &motionCollector, + &healthCollector, + &healthCorrelationCollector, + &error); + + XCTAssertNil(error); + XCTAssertEqual(manager.collectors.count, 3); + + // Re-init + manager = [[ORKDataCollectionManager alloc] initWithPersistenceDirectoryURL:[NSURL fileURLWithPath:[self storePath]]]; + XCTAssertEqual(manager.collectors.count, 3); + + // Remove Collector + [manager removeCollector:motionCollector error:&error]; + XCTAssertNil(error); + XCTAssertEqual(manager.collectors.count, 2); + + [manager removeCollector:healthCollector error:&error]; + XCTAssertNil(error); + XCTAssertEqual(manager.collectors.count, 1); + + [manager removeCollector:healthCorrelationCollector error:&error]; + XCTAssertNil(error); + XCTAssertEqual(manager.collectors.count, 0); + +} + + +typedef NS_OPTIONS (NSInteger, SampleDataType) { + SampleDataTypeHR = 1 << 0, + SampleDataTypeBP = 1 << 1, + SampleDataTypeALL= SampleDataTypeHR|SampleDataTypeBP +}; + + +- (BOOL)insertSampleDataWithType:(SampleDataType)sampleDataType { + _healthStore = [[HKHealthStore alloc] init]; + + HKQuantityType *heartRateType = [HKQuantityType quantityTypeForIdentifier:HKQuantityTypeIdentifierHeartRate]; + HKQuantityType *diastolicType = [HKQuantityType quantityTypeForIdentifier:HKQuantityTypeIdentifierBloodPressureDiastolic]; + HKQuantityType *systolicType = [HKQuantityType quantityTypeForIdentifier:HKQuantityTypeIdentifierBloodPressureSystolic]; + + HKAuthorizationStatus heartRateTypeStatus = [_healthStore authorizationStatusForType:heartRateType]; + HKAuthorizationStatus diastolicTypeStatus = [_healthStore authorizationStatusForType:diastolicType]; + HKAuthorizationStatus systolicTypeStatus = [_healthStore authorizationStatusForType:systolicType]; + + BOOL authorized = (heartRateTypeStatus == HKAuthorizationStatusSharingAuthorized + && diastolicTypeStatus == HKAuthorizationStatusSharingAuthorized + && systolicTypeStatus == HKAuthorizationStatusSharingAuthorized); + + if (authorized) { + +#if TARGET_OS_SIMULATOR + + // Each time add new data samples to simulator + NSDate *d1 = [NSDate dateWithTimeIntervalSinceNow:-2]; + NSDate *d2 = [NSDate dateWithTimeIntervalSinceNow:-1]; + + // Heart Rate + HKUnit *hrUnit = [[HKUnit countUnit] unitDividedByUnit:[HKUnit minuteUnit]]; + HKQuantity* quantity = [HKQuantity quantityWithUnit:hrUnit doubleValue:(NSInteger)([NSDate date].timeIntervalSinceReferenceDate)%100]; + HKQuantitySample *heartRateSample = [HKQuantitySample quantitySampleWithType:heartRateType quantity:quantity startDate:d1 endDate:d2]; + + NSString *identifier = HKCorrelationTypeIdentifierBloodPressure; + HKUnit *bpUnit = [HKUnit unitFromString:@"mmHg"]; + + // Blood Presure + HKQuantitySample *diastolicPressure = [HKQuantitySample quantitySampleWithType:diastolicType quantity:[HKQuantity quantityWithUnit:bpUnit doubleValue:70] startDate:d1 endDate:d2]; + HKQuantitySample *systolicPressure = [HKQuantitySample quantitySampleWithType:systolicType quantity:[HKQuantity quantityWithUnit:bpUnit doubleValue:110] startDate:d1 endDate:d2]; + + HKCorrelation *bloodPressureCorrelation = [HKCorrelation correlationWithType:[HKCorrelationType correlationTypeForIdentifier:identifier] startDate:d1 endDate:d2 objects:[NSSet setWithObjects:diastolicPressure, systolicPressure, nil]]; + + NSMutableArray *objects = [NSMutableArray new]; + if (sampleDataType & SampleDataTypeHR) { + [objects addObject:heartRateSample]; + } + if (sampleDataType & SampleDataTypeBP) { + [objects addObject:bloodPressureCorrelation]; + } + + [_healthStore saveObjects:objects withCompletion:^(BOOL success, NSError * _Nullable error) { + NSLog(@"HK sample saving = %@, error = %@", success ? @"success" : @"failed", error); + }]; + +#endif + } else { + NSLog(@"Not authorized!!!! "); + } + + return authorized; +} + +- (void)testDataCollection { + + ORKMotionActivityCollector *motionCollector; + ORKHealthCollector *healthCollector; + ORKHealthCorrelationCollector *healthCorrelationCollector; + __block NSError *error; + ORKDataCollectionManager *manager = createManagerWithCollecters([NSURL fileURLWithPath:[self cleanStorePath]], + &motionCollector, + &healthCollector, + &healthCorrelationCollector, + &error); + + manager.delegate = self; + + + // First round collection + _completionExpectation = [self expectationWithDescription:@"Expectation for collection completion"]; + +#if TARGET_OS_SIMULATOR + if ([self insertSampleDataWithType:SampleDataTypeALL]) { + _healthCollectionExpectation = [self expectationWithDescription:@"Expectation for health sample collection completion"]; + _corrolationCollectionExpectation = [self expectationWithDescription:@"Expectation for corrolation collection completion"]; + } +#endif + + [manager startCollection]; + + // Test removing collector during collection + BOOL result = [manager removeCollector:healthCollector error:&error]; + XCTAssertFalse(result); + XCTAssertNotNil(error); + XCTAssertEqual(manager.collectors.count, 3); + + + [self waitForExpectationsWithTimeout:10.0 handler:^(NSError *error) { + XCTAssertNil(error); + }]; + + // Test removing collector after collection + result = [manager removeCollector:healthCollector error:&error]; + XCTAssertTrue(result); + XCTAssertNil(error); + XCTAssertEqual(manager.collectors.count, 2); + + + // Second round collection + _completionExpectation = [self expectationWithDescription:@"Expectation for collection completion"]; + +#if TARGET_OS_SIMULATOR + if ([self insertSampleDataWithType:SampleDataTypeBP]) { + // Health Collector was removed + _healthCollectionExpectation = nil; + _corrolationCollectionExpectation = [self expectationWithDescription:@"Expectation for corrolation collection completion"]; + } +#endif + + [manager startCollection]; + + [self waitForExpectationsWithTimeout:10.0 handler:^(NSError *error) { + XCTAssertNil(error); + }]; + +} + +- (void)testDataCollectionWithoutCollector { + + ORKMotionActivityCollector *motionCollector; + ORKHealthCollector *healthCollector; + ORKHealthCorrelationCollector *healthCorrelationCollector; + __block NSError *error; + ORKDataCollectionManager *manager = createManagerWithCollecters([NSURL fileURLWithPath:[self cleanStorePath]], + &motionCollector, + &healthCollector, + &healthCorrelationCollector, + &error); + + manager.delegate = self; + + + [manager removeCollector:motionCollector error:&error]; + [manager removeCollector:healthCollector error:&error]; + [manager removeCollector:healthCorrelationCollector error:&error]; + + _completionExpectation = [self expectationWithDescription:@"Expectation for collection completion"]; + + [manager startCollection]; + + [self waitForExpectationsWithTimeout:10.0 handler:^(NSError *error) { + XCTAssertNil(error); + }]; +} + +- (void)testDelegateRejectDelivery { + _acceptDelivery = NO; + _errorCount = 0; +#if TARGET_OS_SIMULATOR + if ([self insertSampleDataWithType:SampleDataTypeALL]) { + _healthCollectionExpectation = [self expectationWithDescription:@"Expectation for health sample collection completion"]; + _corrolationCollectionExpectation = [self expectationWithDescription:@"Expectation for corrolation collection completion"]; + } +#endif + + ORKMotionActivityCollector *motionCollector; + ORKHealthCollector *healthCollector; + ORKHealthCorrelationCollector *healthCorrelationCollector; + __block NSError *error; + ORKDataCollectionManager *manager = createManagerWithCollecters([NSURL fileURLWithPath:[self cleanStorePath]], + &motionCollector, + &healthCollector, + &healthCorrelationCollector, + &error); + + manager.delegate = self; + _completionExpectation = [self expectationWithDescription:@"Expectation for collection completion"]; + + [manager startCollection]; + [self waitForExpectationsWithTimeout:10.0 handler:^(NSError *error) { + XCTAssertNil(error); + }]; + XCTAssertEqual(_errorCount, 2); +} + +#pragma mark - delegate + +- (BOOL)healthCollector:(ORKHealthCollector *)collector + didCollectSamples:(NSArray *)samples { + + XCTAssertEqual(samples.count, 1); + [_healthCollectionExpectation fulfill]; + NSLog(@"Did collect health samples"); + return _acceptDelivery; +} + +- (BOOL)healthCorrelationCollector:(ORKHealthCorrelationCollector *)collector + didCollectCorrelations:(NSArray *)correlations { + + XCTAssertEqual(correlations.count, 1); + [_corrolationCollectionExpectation fulfill]; + NSLog(@"Did collect correlation samples"); + return _acceptDelivery; +} + +- (BOOL)motionActivityCollector:(ORKMotionActivityCollector *)collector + didCollectMotionActivities:(NSArray *)motionActivities { + + XCTAssertGreaterThan(motionActivities.count, 0); + NSLog(@"Did collect CMMotionActivity samples"); + return _acceptDelivery; +} + +- (void)dataCollectionManagerDidCompleteCollection:(ORKDataCollectionManager *)manager { + NSLog(@"dataCollectionManagerDidCompleteCollection %@", @(_acceptDelivery)); + [_completionExpectation fulfill]; +} + +- (void)collector:(ORKCollector *)collector didDetectError:(NSError *)error { + NSLog(@"didDetectError %@", error); + if (_acceptDelivery) { + XCTAssertNil(error); + } + _errorCount++; +} + +@end diff --git a/Testing/ORKTest/ORKTestTests/ORKJSONSerializationTests.m b/Testing/ORKTest/ORKTestTests/ORKJSONSerializationTests.m index a71e7a20..8f3370ae 100644 --- a/Testing/ORKTest/ORKTestTests/ORKJSONSerializationTests.m +++ b/Testing/ORKTest/ORKTestTests/ORKJSONSerializationTests.m @@ -200,6 +200,13 @@ ORK_MAKE_TEST_INIT(ORKLocation, (^{ ORKLocation *location = [self initWithCoordinate:CLLocationCoordinate2DMake(2.0, 3.0) region:[[CLCircularRegion alloc] initWithCenter:CLLocationCoordinate2DMake(2.0, 3.0) radius:100.0 identifier:@"identifier"] userInput:@"addressString" addressDictionary:@{@"city":@"city", @"street":@"street"}]; return location; })); +ORK_MAKE_TEST_INIT(HKObjectType, (^{ + if (self.class == [HKQuantityType class]) { + return (HKObjectType *)[HKObjectType quantityTypeForIdentifier:HKQuantityTypeIdentifierHeartRate]; + } else { + return (HKObjectType *)[HKObjectType correlationTypeForIdentifier:HKCorrelationTypeIdentifierBloodPressure]; + } +})) @interface ORKJSONSerializationTests : XCTestCase @@ -301,6 +308,7 @@ ORK_MAKE_TEST_INIT(ORKLocation, (^{ return [classesWithSecureCoding copy]; } +// JSON Serialization - (void)testORKSerialization { // Find all classes that are serializable this way @@ -312,7 +320,11 @@ ORK_MAKE_TEST_INIT(ORKLocation, (^{ NSArray *classesExcludedForORKESerialization = @[ [ORKStepNavigationRule class], // abstract base class [ORKSkipStepNavigationRule class], // abstract base class - [ORKPredicateSkipStepNavigationRule class], // NSPredicate doesn't yet support JSON serialzation + [ORKPredicateSkipStepNavigationRule class], // NSPredicate doesn't yet support JSON serialzation + [ORKCollector class], // ORKCollector doesn't support JSON serialzation + [ORKHealthCollector class], + [ORKHealthCorrelationCollector class], + [ORKMotionActivityCollector class] ]; if ((classesExcludedForORKESerialization.count + classesWithORKSerialization.count) != classesWithSecureCoding.count) { @@ -364,6 +376,7 @@ ORK_MAKE_TEST_INIT(ORKLocation, (^{ @"ORKImageChoice.normalStateImage", @"ORKImageChoice.selectedStateImage", @"ORKImageCaptureStep.templateImage", + @"ORKVideoCaptureStep.templateImage", @"ORKStep.requestedPermissions", @"ORKOrderedTask.providesBackgroundAudioPrompts", @"ORKScaleAnswerFormat.numberFormatter", @@ -459,7 +472,7 @@ ORK_MAKE_TEST_INIT(ORKLocation, (^{ [instance setValue:@"blah" forKey:@"value"]; } else if ([aClass isSubclassOfClass:[ORKConsentSection class]]) { [instance setValue:[NSURL URLWithString:@"http://www.apple.com/"] forKey:@"customAnimationURL"]; - } else if ([aClass isSubclassOfClass:[ORKImageCaptureStep class]]) { + } else if ([aClass isSubclassOfClass:[ORKImageCaptureStep class]] || [aClass isSubclassOfClass:[ORKVideoCaptureStep class]]) { [instance setValue:[NSValue valueWithUIEdgeInsets:(UIEdgeInsets){1,1,1,1}] forKey:@"templateImageInsets"]; } else if ([aClass isSubclassOfClass:[ORKTimeIntervalAnswerFormat class]]) { [instance setValue:@(1) forKey:@"step"]; @@ -556,7 +569,7 @@ ORK_MAKE_TEST_INIT(ORKLocation, (^{ return YES; } -- (void)testORKSecureCoding { +- (void)testSecureCoding { NSArray *classesWithSecureCoding = [self classesWithSecureCoding]; @@ -570,6 +583,9 @@ ORK_MAKE_TEST_INIT(ORKLocation, (^{ @"requestedHealthKitTypesForWriting", @"healthKitUnit", @"firstResult", + @"correlationType", + @"sampleType", + @"unit" ]; NSArray *knownNotSerializedProperties = @[@"ORKConsentDocument.writer", // created on demand @"ORKConsentDocument.signatureFormatter", // created on demand @@ -593,6 +609,7 @@ ORK_MAKE_TEST_INIT(ORKLocation, (^{ @"ORKImageChoice.normalStateImage", @"ORKImageChoice.selectedStateImage", @"ORKImageCaptureStep.templateImage", + @"ORKVideoCaptureStep.templateImage", @"ORKConsentSignature.signatureImage", @"ORKConsentSection.customImage", @"ORKInstructionStep.image", @@ -633,7 +650,11 @@ ORK_MAKE_TEST_INIT(ORKLocation, (^{ NSKeyedUnarchiver *unarchiver = [[NSKeyedUnarchiver alloc] initForReadingWithData:data]; unarchiver.requiresSecureCoding = YES; unarchiver.delegate = self; - id newInstance = [unarchiver decodeObjectOfClasses:[NSSet setWithArray:classesWithSecureCoding] forKey:NSKeyedArchiveRootObjectKey]; + NSMutableSet *decodingClasses = [NSMutableSet setWithArray:classesWithSecureCoding]; + [decodingClasses addObject:[NSDate class]]; + [decodingClasses addObject:[HKQueryAnchor class]]; + + id newInstance = [unarchiver decodeObjectOfClasses:decodingClasses forKey:NSKeyedArchiveRootObjectKey]; // Set of classes we can check for equality. Would like to get rid of this once we implement NSSet *checkableClasses = [NSSet setWithObjects:[NSNumber class], [NSString class], [NSDictionary class], [NSURL class], nil]; @@ -674,7 +695,7 @@ ORK_MAKE_TEST_INIT(ORKLocation, (^{ NSKeyedUnarchiver *unarchiver2 = [[NSKeyedUnarchiver alloc] initForReadingWithData:data2]; unarchiver2.requiresSecureCoding = YES; unarchiver2.delegate = self; - id newInstance2 = [unarchiver2 decodeObjectOfClasses:[NSSet setWithArray:classesWithSecureCoding] forKey:NSKeyedArchiveRootObjectKey]; + id newInstance2 = [unarchiver2 decodeObjectOfClasses:decodingClasses forKey:NSKeyedArchiveRootObjectKey]; NSData *data3 = [NSKeyedArchiver archivedDataWithRootObject:newInstance2]; if (![data isEqualToData:data2]) { // allow breakpointing @@ -707,7 +728,8 @@ ORK_MAKE_TEST_INIT(ORKLocation, (^{ ([c isSubclassOfClass:[ORKAnswerFormat class]]) || ([c isSubclassOfClass:[ORKRecorderConfiguration class]]) || (c == [ORKLocation class]) || - (c == [ORKResultSelector class])) + (c == [ORKResultSelector class]) || + [c isSubclassOfClass:[HKObjectType class]]) { return [[c alloc] orktest_init]; } diff --git a/docs/Account/Account-template.markdown b/docs/Account/Account-template.markdown new file mode 100644 index 00000000..487e4a7b --- /dev/null +++ b/docs/Account/Account-template.markdown @@ -0,0 +1,82 @@ +# +These materials are for informational purposes only and do not constitute legal advice. You should contact an attorney to obtain advice with respect to the development of a research app and any applicable laws. + +# The Account Module +Registration is an important aspect of validating users of your ResearchKit app. The Account module provides all of the logic to perform this necessary functionality. + +The basic operations of the Account module are: + + * Registration. Here, the user can enter an email address, password, and additional information such as first and last name, gender, and date of birth. + * Verification. In order to properly vet new users, your app can opt to perform a verification step after registration. + * Login. After your user has registered and verified their registration, this operation allows them to log in to your app. + +##The Registration Step +To register new users, use the `ORKRegistrationStep` class. The resulting view shows a title and helpful registration text. There, the user can type an email address and password, along with other optional information. + +The following example specifies a registration step that includes requesting the user's full name, gender, and birthday: + + ORKRegistrationStep *registrationStep = [[ORKRegistrationStep alloc] initWithIdentifier:@"identifier" + title:@"Account Registration" text:@"Please register at this point." + options:ORKRegistrationStepIncludeGivenName | ORKRegistrationStepIncludeFamilyName | ORKRegistrationStepIncludeGender |ORKRegistrationStepIncludeDOB]; + ORKOrderedTask *task = [[ORKOrderedTask alloc] initWithIdentifier:@"registrationTask" steps:@[registrationStep]]; + ORKTaskViewController *taskViewController = [[ORKTaskViewController alloc] initWithTask:task taskRunUUID:nil]; + taskViewController.delegate = self; + [self presentViewController:taskViewController animated:YES completion:^{}]; + + +Here's how the registration view appears: + +![](Registration.png) + +After all of the information has been properly set, the user can touch the Done button to proceed. Your app is responsible for sending the user-provided data to a server to perform the actual registration. + +##The Verification Step +Email verification is a common way to validate proper registration for a user. After the user registers, your backend server can send an email to the provided email address. + +To enable email verification in your app, use a combination of the `ORKVerificationStep` class along with a subclass of the `ORKVerificationStepViewController`. Subclassing `ORKVerificationStepViewController` allows you to provide custom behavior when the user taps the Resend Email Verification button. The following code demonstrates how to set up your subclass: + + @interface MyVerificationStepViewController : ORKVerificationStepViewController + @end + + @implmentation MyVerificationStepViewController + + - (void)resendEmailButtonTapped { + // perform custom logic here + } + + @end + +Next, create a verification step and pass in the subclass object: + + ORKVerificationStep *verificationStep = [[ORKVerificationStep alloc] initWithIdentifier:@"identifier" + text:@"Please verify." + verificationViewControllerClass:[MyVerificationStepViewController class]]; + +You can then insert the step into your `ORKOrderedTask` object. When the step is executed, it instantiates the view controller and shows the following: + +![](Verification.png) + +##The Login Step +After the user has registered and has been verified, you can provide them access to further functionality in your app by helping them log in. + +Logging in requires subclassing the `ORKLoginStepViewController` class, which is similar to what you did to implement the verification step. Override the following method in your subclass so that you can add custom logic to handle the situation when the user forgets their password: + + - (void)forgotPasswordButtonTapped; + + +Here's a code snippet that shows how to create a subclass of `ORKLoginStepViewController`: + + @interface MyLoginStepViewController : ORKLoginStepViewController + @end + + @implmentation MyLoginStepViewController + + - (void)forgotPasswordButtonTapped { + // perform custom logic here + } + + @end + +When the login step is executed, the following view appears: + +![](Login.png) diff --git a/docs/Account/Login.png b/docs/Account/Login.png new file mode 100644 index 0000000000000000000000000000000000000000..b573ae37bfef05baa793445e5b05abb5df764fd3 GIT binary patch literal 61473 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≷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 G^#1_=+@=u# literal 0 HcmV?d00001 diff --git a/docs/Account/Registration.png b/docs/Account/Registration.png new file mode 100644 index 0000000000000000000000000000000000000000..67bb1d50ca02b69c4b7130027793a20d800d0ade GIT binary patch literal 86015 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 Active tasks in ResearchKit @@ -57,7 +55,7 @@ Accelerometer (optional) Touch activity
Correct answer
Actual sequences -Paced auditory and/or visual serial addition test (PSAT) +Paced Serial Addition Test (PSAT) Multi-Touch display Addition results @@ -84,23 +82,28 @@ from user Audio Tone audiometry - + N/A Minimum amplitude for the user to recognize the sound
+Hole Peg + Hand dexterity + Multi-Touch display +Completion time
Move distance + + - #### Options for Predefined Tasks -You can disable the instruction or completion steps automatically -included in the framework when instantiating one of the predefined -active tasks by passing an appropriate combination of the -`ORKPredefinedTaskOption` constants. +You can disable the instruction or completion steps that are automatically +included in the framework by passing an appropriate combination of the +`ORKPredefinedTaskOption` constants when you instantiate one of the predefined +active tasks. -Other options flags can be used to exclude certain types of data +Options flags can also be used to exclude certain types of data collection if they are not needed for your study. For example, if you want the user to perform the fitness task but do not need heart rate data, use `ORKPredefinedTaskOptionExcludeHeartrate`. @@ -120,14 +123,13 @@ during the rest period. The screenshots below show how a fitness task might look. -

Instruction step giving motivation for the task.

Instruction step describing what the user must do.

Count down a specified duration to begin the task.

-

-

Displays distance and heart rate.

The rest step. This step is skipped if heart rate data is unavailable.

Confirms completion.

-

+

Instruction step giving motivation for the task.

+

Instruction step describing what the user must do.

+

Count down a specified duration to begin the task.

+

Displays distance and heart rate.

The rest step. This step is skipped if heart rate data is unavailable.

Confirms completion.

+

-All of the data is collected from public CoreMotion and HealthKit APIs on iOS, -and serialized to JSON. No analysis is applied to the data by -the ResearchKit framework. +All of the data is collected from public
CoreMotion and HealthKit APIs on iOS, and serialized to JSON. No analysis is applied to the data by the ResearchKit framework. #### Audio @@ -135,22 +137,22 @@ In the audio task (see the method [ORKOrderedTask audioTaskWithIdentifier:intend recording is made. Analysis of the audio data is not included in the ResearchKit framework, but might naturally involve looking at the power spectrum and how it relates to the ability to produce certain -sounds. The ResearchKit framework uses the `AVFoundation` framework to collect this +sounds. The ResearchKit framework uses the AVFoundation framework to collect this data and to present volume indication during recording. No data analysis is done by ResearchKit; you can define your analysis on this -task according to requirements. +task according to your own requirements. The screenshots below show an example of an audio task.

Welcome ScreenInstruction step giving motivation for the task.

Instruction ScreenInstruction step describes user action during the task.

Task Completion ScreenCount down a specified duration to begin the task.

-

+

Task ScreenDisplays a graph during audio playback (Audio collection step).

Task Completion ScreenConfirms completion.

-

+

#### Gait and Balance In the gait and balance task (see the method [ORKOrderedTask shortWalkTaskWithIdentifier:intendedUseDescription:numberOfStepsPerLeg:restDuration:options]([ORKOrderedTask shortWalkTaskWithIdentifier:intendedUseDescription:numberOfStepsPerLeg:restDuration:options:])), the user walks for a short distance, which may be indoors. You might -use this semi-controlled task to collect objective measurements which +use this semi-controlled task to collect objective measurements that can be used to estimate stride length, smoothness, sway, and other aspects of the participant's walking. @@ -159,9 +161,9 @@ The screenshots below show an example of a gait and balance task.

Welcome/introduction ScreenInstruction step introducing the task.

Instruction step giving motivation and instruction for the task.

Count down a specified duration into the task.

Asking user to walk.

Asking user to walk.

Asking user to rest.

-

+

Task completion.

-

+

#### Tapping Speed @@ -176,7 +178,7 @@ The screenshots below show an example of a tapping speed task.

Welcome/introduction ScreenMotivation for the task.

Providing instruction for the task.

The user rapidly taps on the targets.

Task completion.

-

+

#### Spatial Memory @@ -188,7 +190,7 @@ can be used to assess visuospatial memory and executive function. The span (that is, the length of the pattern sequence) is automatically varied during the task, increasing after successful completion of a sequence, and decreasing after failures, in the range from `minimumSpan` to -`maximumSpan`. The `playSpeed` property lets you control the speed of sequence +`maximumSpan`. The `playSpeed` property lets you control the speed of sequence playback, and the `customTargetImage` property lets you customize the shape of the tap target. The game finishes when either `maxTests` tests have been completed, or the user has made `maxConsecutiveFailures` errors in a @@ -200,79 +202,102 @@ the game, and the touch inputs made by the user. The screenshots below show an example of a spatial memory task.

Welcome/introduction ScreenGives the purpose of the task.

Instruction stepDescribes what the user must do.

Initial sequence playback screenThe flowers light up in sequence.

-

+

Recall sequence screenThe user must recall the sequence.

Consecutive failure screenIf users make a mistake, they will be offered a new pattern.

Welcome/introduction ScreenThe user is offered a shorter sequence.

-

+

Task Completion screenTask completion.

-

+

-#### Paced Serial Addition Test (PSAT) +#### Paced Serial Addition Test (PSAT) -In a a paced serial addition test (PSAT) task (see method [ORKOrderedTask PSATTaskWithIdentifier:intendedUseDescription:presentationMode:interStimulusInterval:stimulusDuration:seriesLength:options]([ORKOrderedTask PSATTaskWithIdentifier:intendedUseDescription:presentationMode:interStimulusInterval:stimulusDuration:seriesLength:options:])), -single digits appear every 2 or 3 seconds on the screen of the device and the user must add each new digit to the one immediately before. A PSAT task measures the cognitive function that assesses auditory and/or visual information processing speed, flexibility, and the calculation ability of the user. +The Paced Serial Addition Test (PSAT) task (see method [ORKOrderedTask PSATTaskWithIdentifier:intendedUseDescription:presentationMode:interStimulusInterval:stimulusDuration:seriesLength:options]([ORKOrderedTask PSATTaskWithIdentifier:intendedUseDescription:presentationMode:interStimulusInterval:stimulusDuration:seriesLength:options:])) measures the cognitive function that assesses auditory and/or visual information processing speed, flexibility, and the calculation ability of the user. + +Single digits are presented every 2 or 3 seconds and the user must add each new digit to the one immediately before. + +There are three variations of this test: + +1. PASAT: Paced Auditory Serial Addition Test - the device speaks the digit every 2 or 3 seconds. +2. PVSAT: Paced Visual Serial Addition Test - the device shows the digit on screen. +3. PAVSAT: Paced Auditory and Visual Serial Addition Test - the device speaks the digit and shows it onscreen every 2 to 3 seconds. -The score for the PSAT task is the total number correct answers out of the number of possible correct answers. Data collected by the task is in the form of an `ORKPSATResult` object. +The score for the PSAT task is the total number correct answers out of the number of possible correct answers. Data collected by the task is in the form of an `ORKPSATResult` object. -The screenshots below show an example of a PSAT task. Note that the visual and auditory components of the task are optional. You can choose to include either of them or both. +The screenshots below show an example of a PVSAT task. Note that the visual and auditory components of the task are optional. You can choose to include either of them or both.

Welcome/introduction ScreenGives the purpose of the task.

Instruction stepDescribes what the user must do.

Countdown screenCount down a specified duration into the task.

-

+

The user must add each new digit on the screen to the one immediately prior to it.The user must add each new digit on the screen to the one immediately prior to it.

Task completion screenTask completion.

-

+

#### Reaction Time In the reaction time task (see the method [ORKOrderedTask reactionTimeTaskWithIdentifier:intendedUseDescription:maximumStimulusInterval:minimumStimulusInterval:thresholdAcceleration:numberOfAttempts:timeout:successSound:timeoutSound:failureSound:option]([ORKOrderedTask reactionTimeTaskWithIdentifier:intendedUseDescription:maximumStimulusInterval:minimumStimulusInterval:thresholdAcceleration:numberOfAttempts:timeout:successSound:timeoutSound:failureSound:options:])), -the user is asked to shake or move the device in response to a visual clue on the device's screen. The task is divided into few attempts (you can decide number of attempts). To complete an attempt in a task, the user must shake/move the device with greater acceleration as set in the property `thresholdAcceleration` within the given time. The task finishes when the user successfully completes all the attempts as instructed in the task. Use this task to evaluate a user's response to the stimulus and calculate their reaction time. +the user is asked to shake the device in response to a visual clue on the device's screen. The task is divided into a few attempts (you can decide the number of attempts). To complete an attempt in a task, the user must shake or move the device with an acceleration that is greater than the value of the `thresholdAcceleration` property within the given time. The task finishes when the user successfully completes all the attempts as instructed in the task. Use this task to evaluate a user's response to the stimulus and calculate their reaction time. -Data collected by this task is in the form of `ORKReactionTimeResult` objects. Each of these objects contain a timestamp representing the delivery of the stimulus and an `ORKFileResult` object that references the motion data collected during an attempt. To present this task, use `ORKTaskViewController` object. +Data collected by this task is in the form of `ORKReactionTimeResult` objects. Each of these objects contain a timestamp representing the delivery of the stimulus and an `ORKFileResult` object that references the motion data collected during an attempt. To present this task, use an `ORKTaskViewController` object. The screenshots below show an example of a reaction time task.

Welcome/introduction ScreenGives the purpose of the task.

Instruction stepDescribes what the user must do.

-

+

Actual task screen.Actual task.

Task completion screenTask completion.

-

+

#### Tone Audiometry In the tone audiometry task (see the method [ORKOrderedTask toneAudiometryTaskWithIdentifier:intendedUseDescription:speechInstruction:shortSpeechInstruction:toneDuration:options:]([ORKOrderedTask toneAudiometryTaskWithIdentifier:intendedUseDescription:speechInstruction:shortSpeechInstruction:toneDuration:options:])), -users are is asked to listen to some tones (using headphones connected to the device running the task) and tap the button on the screen when they hear it. These tones are of different audio frequencies, playing on different channels (left and right), with the volume being progressively increased until the user taps the button. A tone audiometry task measures different properties of a user's hearing ability, based on their reaction to a wide range of frequencies. +users are asked to listen to a series of tones (using headphones connected to the device running the task) and to tap the button on the screen when they hear each tone. These tones are of different audio frequencies, playing on different channels (left and right), with the volume being progressively increased until the user taps the button. A tone audiometry task measures different properties of a user's hearing ability, based on their reaction to a wide range of frequencies. Data collected in this task consists of audio signal amplitude for specific frequencies and channels. The screenshots below show an example of a tone audiometry task.

Gives the purpose of the task.

Describes what the user must do.

Preparing user for the task.

-

+

Count down a specified duration to begin the task.

Actual task.

Task completion.

-

+

#### Tower Of Hanoi -In the Tower of Hanoi task (see the method [ORKOrderedTask towerOfHanoiTaskWithIdentifier:intendedUseDescription:numberOfDisks:options:]([ORKOrderedTask towerOfHanoiTaskWithIdentifier:intendedUseDescription:numberOfDisks:options:])), the user is asked to solve the classic tower of hanoi puzzle in minimum number of moves. To solve the puzzle the user must move the entire stack to the highlighted platform making minimum moves. This task measures the user's problem solving skills. A Tower of Hanoi task finishes when the user completes the puzzle correctly or concedes that they cannot solve the puzzle. +In the Tower of Hanoi task (see the method [ORKOrderedTask towerOfHanoiTaskWithIdentifier:intendedUseDescription:numberOfDisks:options:]([ORKOrderedTask towerOfHanoiTaskWithIdentifier:intendedUseDescription:numberOfDisks:options:])), the user is asked to solve the classic Tower of Hanoi puzzle in a minimum number of moves. To solve the puzzle, the user must move the entire stack to the highlighted platform in as few moves as possible. This task measures the user's problem solving skills. A Tower of Hanoi task finishes when the user completes the puzzle correctly or concedes that they cannot solve the puzzle. Data collected by this task is in the form of an `ORKTowerOfHanoiResult` object. It contains every move taken by the user and indicates whether the puzzle was successfully completed or not. The screenshots below show an example of a Tower of Hanoi task.

Welcome/introduction ScreenGives the purpose of the task.

Instruction stepDescribes what the user must do.

-

+

Actual task screen.Actual task.

Task completion screenTask completion.

-

+

#### Timed Walk -In the timed walk task (see the method [ORKOrderedTask timedWalkTaskWithIdentifier:intendedUseDescription:distanceInMeters:timeLimit:options:]([ORKOrderedTask timedWalkTaskWithIdentifier:intendedUseDescription:distanceInMeters:timeLimit:options:])), the user is asked to walk for a specific distance quickly with safety. The task is immediately administered again by having the user walk the same distance in the opposite direction. The timed walk task differs from both the fitness and the short walk tasks in that the distance walked by the user is fixed. A timed walk task measures user's lower-extremity function. +In the timed walk task (see the method [ORKOrderedTask timedWalkTaskWithIdentifier:intendedUseDescription:distanceInMeters:timeLimit:options:]([ORKOrderedTask timedWalkTaskWithIdentifier:intendedUseDescription:distanceInMeters:timeLimit:options:])), the user is asked to walk for a specific distance quickly with safety. The task is immediately administered again by having the user walk the same distance in the opposite direction. The timed walk task differs from both the fitness and the short walk tasks in that the distance walked by the user is fixed. A timed walk task measures the user's lower-extremity function. The data collected by this task includes accelerometer, device motion, pedometer data, and location of the user. Note that the location is available only if the user agrees to share their location. Data collected by the task is in the form of an `ORKTimedWalkResult` object. The screenshots below show an example of a timed walk task.

Welcome/introduction ScreenGives the purpose of the task.

Gather information about the user's assistive device.Gathers information about the user's assistive device.

Instruction to perform the taskInstructions on how to perform the task.

-

+

Count down a specified duration to begin the task.Count down a specified duration to begin the task.

Actual task screenActual task screen.

Actual task screenActual task screen.

-

Task Completion screenTask completion.

-

+

Task Completion screenTask completion.

+

+ +#### 9-Hole Peg Test + +The 9-hole peg test is a two step test of hand dexterity to measure the MSFC score in Multiple Sclerosis, Parkinson's disease, or stroke. This task is well documented in the scientific literature (see Earhart et al., 2011). + +The data collected by this task includes the number of pegs, an array of move samples, and the total duration that the user spent taking the test. + +Practically speaking, this task generates a two step test in which the participant must put a variable number of pegs in a hole (the place step), and then remove them (the remove step). This task tests both hands. + +The `ORKHolePegTestPlaceStep` class represents the place step. In this step, the user uses two fingers to touch the peg and drag it into the hole using their left hand. + +The `ORKHolePegTestRemoveStep` class represents the remove step. Here, the user moves the peg over a line using two fingers on their right hand. + +The screenshots below show an example of both place and remove tasks. + +

The peg place task.

The peg remove step.

### Getting the Data @@ -298,31 +323,31 @@ a database on the device. For example: * The pedometer sensor returns a `CMPedometerData` object that provides step counts computed by the motion coprocessor on supported devices. * The accelerometer sensor returns a `CMAccelerometerData` object that provides raw accelerometer samples indicating the forces on the device. -* A fused sampled accelerometer, gyroscope, and magnetometer device motion returns a `CMDeviceMotion` object that provides information about the orientation and movement of the device. +* A `CMDeviceMotion` object provides information about the orientation and movement of the device by combining data collected from the accelerometer, gyroscope, and magnetometer. * HealthKit returns sample types, such as heart rate. -* CoreLocation returns location data, fused from GPS, Wi-Fi and cell tower information. - +* CoreLocation returns location data (combined from GPS, Wi-Fi and cell tower information). The recorders used by ResearchKit's predefined active tasks always use `NSFileProtectionCompleteUnlessOpen` while writing data to disk, and then change the file protection level on any files generated to `NSFileProtectionComplete` when recording is finished. - ## Creating New Active Tasks You can also build your own custom active tasks by creating your own custom subclasses of `ORKActiveStep` and `ORKActiveStepViewController`. In doing this, you can follow the example of -the active steps in the predefined tasks that are already in the ResearchKit framework. +the active steps in the predefined tasks that are already in the ResearchKit framework. (A helpful tutorial on creating active tasks can be found here). -Some of the steps used in the predefined tasks may also be useful to + + +Some of the steps used in the predefined tasks may also be useful as guides when you create your own tasks. For example, the `ORKCountdownStep` displays a timer that counts down with animation for the step duration. To give another example, the `ORKCompletionStep` object displays a confirmation that the task is completed.

Countdown stepExample of a countdown step.

Completion stepExample of a task completion step.

-

+

diff --git a/docs/ActiveTasks/AudioImages/AboutTaskIntroduction.png b/docs/ActiveTasks/AudioImages/AboutTaskIntroduction.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/AudioImages/AudioTaskCompletionStep.png b/docs/ActiveTasks/AudioImages/AudioTaskCompletionStep.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/AudioImages/AudioTaskCountdownStep.png b/docs/ActiveTasks/AudioImages/AudioTaskCountdownStep.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/AudioImages/AudioTaskIntroduction.png b/docs/ActiveTasks/AudioImages/AudioTaskIntroduction.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/AudioImages/AudioTaskStep.png b/docs/ActiveTasks/AudioImages/AudioTaskStep.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/FitnessImages/FitnessCountDownStep.png b/docs/ActiveTasks/FitnessImages/FitnessCountDownStep.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/FitnessImages/FitnessTaskCompletionStep.png b/docs/ActiveTasks/FitnessImages/FitnessTaskCompletionStep.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/FitnessImages/FitnessTaskIntroduction.png b/docs/ActiveTasks/FitnessImages/FitnessTaskIntroduction.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/FitnessImages/FitnessTaskRestStep.png b/docs/ActiveTasks/FitnessImages/FitnessTaskRestStep.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/FitnessImages/FitnessTaskWalkStep.png b/docs/ActiveTasks/FitnessImages/FitnessTaskWalkStep.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/FitnessImages/TaskIntroduction.png b/docs/ActiveTasks/FitnessImages/TaskIntroduction.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/HolePegTaskImages/HolePegPlaceStep.png b/docs/ActiveTasks/HolePegTaskImages/HolePegPlaceStep.png new file mode 100644 index 0000000000000000000000000000000000000000..c4c49254a2274ae619a60db2be3fbca0f6dbe056 GIT binary patch literal 32490 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 X6VkZb;u(#3{iLG2iX1}5*!O<{20$&D literal 0 HcmV?d00001 diff --git a/docs/ActiveTasks/HolePegTaskImages/HolePegRemoveStep.png b/docs/ActiveTasks/HolePegTaskImages/HolePegRemoveStep.png new file mode 100644 index 0000000000000000000000000000000000000000..9a280a9fdd4468014bc7404f82daf4a420a2c355 GIT binary patch literal 35493 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 bEHrih`gxt#n{^2L<#-8E*_TDadcOY+aQ_w~ literal 0 HcmV?d00001 diff --git a/docs/ActiveTasks/PsatTaskImages/Old/PSATStep1.png_old.png b/docs/ActiveTasks/PsatTaskImages/Old/PSATStep1.png_old.png new file mode 100755 index 0000000000000000000000000000000000000000..23ee572c018e31173006abc9174ac48f70d5ec2e GIT binary patch literal 35220 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 literal 0 HcmV?d00001 diff --git a/docs/ActiveTasks/PsatTaskImages/Old/PSATStep2.png_old.png b/docs/ActiveTasks/PsatTaskImages/Old/PSATStep2.png_old.png new file mode 100755 index 0000000000000000000000000000000000000000..0ef038e5416926e8317551fdc75ce6ad01940b45 GIT binary patch literal 40473 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 literal 0 HcmV?d00001 diff --git a/docs/ActiveTasks/PsatTaskImages/PSATStep1.png b/docs/ActiveTasks/PsatTaskImages/PSATStep1.png index 23ee572c018e31173006abc9174ac48f70d5ec2e..64abf46e00dbe7de81bfdb284857c74d0ed8f8c6 100644 GIT binary patch literal 32648 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 literal 35220 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 diff --git a/docs/ActiveTasks/PsatTaskImages/PSATStep2.png b/docs/ActiveTasks/PsatTaskImages/PSATStep2.png index 0ef038e5416926e8317551fdc75ce6ad01940b45..a48ddb7c5cf02cd9d846c54e7dfe6e646b8f9c27 100644 GIT binary patch literal 40695 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

Pie Chart

Line graph chart

Line graph chart with multiple lines

+

+

Discrete graph chart

Discrete graph chart with multiple points

+

+ + + +##Adding a Chart to Your App +Chart objects adhere to the Model-View-Controller (MVC) paradigm, which emphasizes separation between the data (model), the presentation of that data (view), and the class required to coordinate the data and its view (controller). This design pattern is pervasive in iOS programming and is an integral part of the charts feature. + +In a research app, the chart object (view) must be connected to a data source object (model), which is responsible for supplying the data. The chart is then presented to a view controller object (controller), which establishes the necessary connections between the data source and the view. + +To add a chart or graph to your app, first create a data source class to supply the data. Next, create a chart or graph object (such as an `ORKPieChartView` object), connect it to the data source, customize the chart object as you want, and present it in a view controller. + +###Step 1: Implementing the Data Source Protocol +The data source provides the information that a chart object needs in order to construct a chart. This communication is enforced by a contractual obligation between objects known as a *protocol*. A protocol is composed of a name and a list of methods that the data source promises to implement. + +Two types of methods exist in a protocol: *required* and *optional* methods. As you might guess, you must implement the required methods in the data source, and you can choose to implement the optional methods. In the case of ResearchKit charts, one of the required methods of the protocol provides the number of points (or segments) and another required method provides the value of each point to the chart object. The optional methods of the protocol help in further configuring data, such as color of the x-axis or segments. + +To provide the data to a chart, the data source must adopt one of two protocols: the `ORKGraphChartViewDataSource` protocol (for a graph chart) or the `ORKPieChartViewDataSource` protocol (for a pie chart). For specific examples of implementing these protocols, see [Adding a Line or Discrete Graph Chart to Your App](http://????) and [Adding a Pie Chart to Your App](http://????). + +###Step 2: Creating a Chart Object and Adding it to a View Controller +To present data in a chart, create an instance of a ResearchKit chart object, such as `ORKPieChartView` or `ORKLineGraphChartView`. To do this, first create a `UIView` object in a `UIViewController` object and change the custom class of the view to the ResearchKit chart class you want to use. + +Next, use an IBOutlet connection to link the chart view to your code. This connection between your code and the view will allow you to update the contents of the chart on demand, as well as customize its look and feel. + +Then, connect the chart view with your data source so that the chart has access to the data. For example, to connect a pie chart object with a custom data source, you can use code similar to this: + + // Connect the pie chart-view object to a data source + pieChartView.dataSource = pieChartDataSource + +###Step 3 (Optional): Customizing the Chart Object +Although the default ResearchKit charts and graphs are ready to use with your data, it's easy to customize them to suit your app. Each chart object includes several properties that let you customize its look and feel. For example, you can title the segments in a pie chart by implementing the `titleForSegmentAtIndex` method in a pie chart data source class, as shown here: + + func pieChartView(pieChartView: ORKPieChartView, titleForSegmentAtIndex index: Int) -> String { + switch index { + case 0: + return "Steps taken" + case 1: + return "Tasks completed" + case 2: + return "Surveys completed" + default: + return "task \(index + 1)" + } + } + +The code above displays the titles in the pie chart shown here: + +

+
+ +
Pie chart with custom titles.
+
+
+ + +To learn about the customizable properties of pie, line graph, and discrete graph chart objects, see `ORKPieChartView`, `ORKGraphChartView`, and `ORKDiscreteGraphChartView`. + +##Adding a Pie Chart to Your App +The data source object that provides data to a pie chart adopts the `ORKPieChartViewDataSource` protocol. To construct a pie chart, you need to know the number of segments and the value of each segment. + +To specify the number of segments in a pie chart, implement the `numberOfSegmentsInPieChartView` method, returning an integer that indicates the number of segments in the pie chart. For example, the code below specifies a pie chart that has three segments: + + func numberOfSegmentsInPieChartView(pieChartView: ORKPieChartView) -> Int { + return 3 + } + +Before you can draw the segments in a pie chart, you need to specify the value of each segment. To provide a value for each segment of the pie chart, implement the `valueForSegmentAtIndex` method. + +The values themselves are percentages whose sum should equal 100.0. For example, the code below returns the values 50, 30, and 20 for segments at indexes 0, 1, and 2 in the pie chart: + + func pieChartView(pieChartView: ORKPieChartView, valueForSegmentAtIndex index: Int) -> CGFloat { + switch index { + case 0: + return 60.0 + case 1: + return 25.0 + case 2: + return 15.0 + } + } + +You can use the optional methods in the pie chart data source protocol to help you customize the look and feel of the data in the chart. For example, you can specify a color and a title for each segment. (To learn more about using properties in the pie chart data source protocol to customize your chart, see `ORKPieChartViewDataSource`.) + +Here's an example of a pie chart data source class that includes both required and optional methods: + + class PieChartDataSource: NSObject, ORKPieChartViewDataSource { + // Specify three different colors + let colors = [ + UIColor(red: 217/225, green: 217/255, blue: 217/225, alpha: 1), + UIColor(red: 142/255, green: 142/255, blue: 147/255, alpha: 1), + UIColor(red: 244/255, green: 200/255, blue: 74/255, alpha: 1) + ] + + // Values for each of the three segments + let values = [60.0, 25.0, 15.0] + + // Required methods + func numberOfSegmentsInPieChartView(pieChartView: ORKPieChartView ) -> Int { + return colors.count + } + + func pieChartView(pieChartView: ORKPieChartView, valueForSegmentAtIndex index: Int) -> CGFloat { + return CGFloat(values[index]) + } + + // Optional methods + // Give a color to each segment in the pie chart. + func pieChartView(pieChartView: ORKPieChartView, colorForSegmentAtIndex index: Int) -> UIColor { + return colors[index] + } + + // Give a title to each segment in the pie chart + func pieChartView(pieChartView: ORKPieChartView, titleForSegmentAtIndex index: Int) -> String { + switch index { + case 0: + return "Steps taken" + case 1: + return "Tasks completed" + case 2: + return "Surveys completed" + default: + return "task \(index + 1)" + } + } + } + +After you create a pie chart data source class, create a pie chart object that presents the data it receives from the data source object. For example, the following code shows how to create a pie chart object, connect it to the data source, and customize some of its properties: + + // Create a pie chart object + @IBOutlet weak var pieChartView: ORKPieChartView! + + override func viewDidLoad() { + super.viewDidLoad() + + // Connect the pie chart object to a data source + pieChartView.dataSource = pieChartDataSource + + // Optional custom configuration + pieChartView.showsTitleAboveChart = false + pieChartView.showsPercentageLabels = true + pieChartView.drawsClockwise = true + pieChartView.titleColor = UIColor.purpleColor() + pieChartView.textColor = UIColor.purpleColor() + pieChartView.title = "Weekly" + pieChartView.text = "Report" + pieChartView.lineWidth = 10 + pieChartView.showsPercentageLabels = true + } + +The screenshot below shows the pie chart created by the code in this section. + +
+
+Instruction step +
Pie chart.
+
+
+ + +##Adding a Line or Discrete Graph Chart to Your App +You add data to line and discrete graph by implementing methods in the `ORKGraphChartViewDataSource` protocol. There are several methods that you must implement for correct behavior. + +Line and discrete graphs can display one or more plots. A plot is a graphical representation of a relationship between two variables. + +Start by implementing the `graphChartView:numberOfPointsForPlotIndex:` method. Here, you will return the number of points for the specific plot index (a graph may have more than one plot associated with it). + +Next, implement the `graphChartView:pointForPointIndex:plotIndex:` method. In this method, you will return a `ORKRangedPoint` (which represents a ranged point used in an graph plot) for the given point index and plot index. + +An optional method that you can implement is `numberOfPlotsInGraphChartView:`. Here, you can return the number of plots for the passed graph. If you don't implement this method, one plot is assumed. + +Other optional methods allow you to provide titles as well as set minimum and maximum values for the y-axis. + +Here's an example of a data source class for a line graph. This class returns five points for the two plots that will appear on the graph: + + class LineGraphDataSource: NSObject, ORKGraphChartViewDataSource { + + var plotPoints = + [ + [ + ORKRangedPoint(value: 200), + ORKRangedPoint(value: 450), + ORKRangedPoint(value: 500), + ORKRangedPoint(value: 250), + ORKRangedPoint(value: 300), + ORKRangedPoint(value: 600), + ORKRangedPoint(value: 300), + ], + [ + ORKRangedPoint(value: 100), + ORKRangedPoint(value: 350), + ORKRangedPoint(value: 400), + ORKRangedPoint(value: 150), + ORKRangedPoint(value: 200), + ORKRangedPoint(value: 500), + ORKRangedPoint(value: 400), + ] + ] + + // Required methods + + func graphChartView(graphChartView: ORKGraphChartView, pointForPointIndex pointIndex: Int, plotIndex: Int) -> ORKRangedPoint { + + return plotPoints[plotIndex][pointIndex] + } + + func graphChartView(graphChartView: ORKGraphChartView, numberOfPointsForPlotIndex plotIndex: Int) -> Int { + return plotPoints[plotIndex].count + } + + // Optional methods + + // Returns the number of points to the graph chart view + func numberOfPlotsInGraphChartView(graphChartView: ORKGraphChartView) -> Int { + return plotPoints.count + } + + // Sets the maximum value on the y-axis + func maximumValueForGraphChartView(graphChartView: ORKGraphChartView) -> CGFloat { + return 1000 + } + + // Sets the minimum value on the y-axis + func minimumValueForGraphChartView(graphChartView: ORKGraphChartView) -> CGFloat { + return 0 + } + + // Provides titles for x-axis + func graphChartView(graphChartView: ORKGraphChartView, titleForXAxisAtPointIndex pointIndex: Int) -> String? { + switch pointIndex { + case 0: + return "Mon" + case 1: + return "Tue" + case 2: + return "Wed" + case 3: + return "Thu" + case 4: + return "Fri" + case 5: + return "Sat" + case 6: + return "Sun" + default: + return "Day \(pointIndex + 1)" + } + } + + // Returns the color for the given plot index + func graphChartView(graphChartView: ORKGraphChartView, colorForPlotIndex plotIndex: Int) -> UIColor { + if plotIndex == 0 { + return UIColor.purpleColor() + } + } + } + +Note: A discrete graph uses the same data source protocol as a line graph, so the data source class for a discrete graph tends to look similar to the line graph data source class shown above. + +After you create the data source class for a graph, create a graph chart object to present the data. For example, the following code shows how to create a line graph chart object, connect it to the data source shown above, and customize some of its properties: + + // Create a line graph view object + @IBOutlet weak var lineGraphView: ORKLineGraphChartView! + + override func viewDidLoad() { + super.viewDidLoad() + + // Connect the line graph view object to a data source + lineGraphView.dataSource = lineGraphChartDataSource() + + // Optional custom configuration + lineGraphView.showsHorizontalReferenceLines = true + lineGraphView.showsVerticalReferenceLines = true + lineGraphView.axisColor = UIColor.whiteColor() + lineGraphView.verticalAxisTitleColor = UIColor.orangeColor() + lineGraphView.showsHorizontalReferenceLines = true + lineGraphView.showsVerticalReferenceLines = true + lineGraphView.scrubberLineColor = UIColor.redColor() + } + +The screenshot below shows the line graph created by the code in this section. + +
+
+Instruction step +
Line graph chart
+
+
+ +To display a discrete graph chart instead of a line graph chart, you can use code similar to the code below to create a discrete graph chart object, connect it to a data source, and customize some of its properties: + + // Creating discrete graph chart-view object + @IBOutlet weak var discreteGraphChart: ORKDiscreteGraphChartView! + + //Connecting discrete graph chart-view object to a data source + let discreteGraphChartDataSource = DiscreteGraphDataSource() + + override func viewDidLoad() { + super.viewDidLoad() + + // Connect the line graph view object to a data source + discreteGraphChart.dataSource = discreteGraphChartDataSource + + // Optional custom configuration + discreteGraphChart.showsVerticalReferenceLines = true + discreteGraphChart.drawsConnectedRanges = true + } + + +The screenshot below shows a discrete graph that uses the same data source class created for the line graph chart at the beginning of this section. + +
+
+ +
Discrete graph chart
+
+
+ + +###Drawing Multiple Lines in a Graph +By default, the graph object assumes that it has a single plot to draw. To draw more than one plot on a graph, use the `numberOfPlotsInGraphChartView` method and specify the number of plots in the graph. This optional data source method is useful when you are drawing more than one plot on a graph chart. + +For example, the code below shows how a graph object can draw two plots: + + // Optional methods + func numberOfPlotsInGraphChartView(graphChartView: ORKGraphChartView) -> Int { + return 2 + } + +###Adding Titles to a Graph Chart +Titles on the x-axis and y-axis provide clarity to the presented data and are strongly encouraged. To add titles along the x-axis in a line or discrete graph, implement the `titleForXAxisAtPointIndex` method in the data source class and return the title to display adjacent to each division on the x-axis. For the y-axis, you can display maximum or minimum values using the `maximumValueForGraphChartView:` or `minimumValueForGraphChartView:` properties (to display images instead of values, use the `maximumValueImage` and `minimumValueImage` properties). + +The following code shows how to display titles on the x-axis of a discrete graph chart: + + func graphChartView(graphChartView: ORKGraphChartView, titleForXAxisAtPointIndex pointIndex: Int) -> String? { + switch pointIndex { + case 0: + return "Jan" + case 1: + return "Feb" + case 2: + return "Mar" + case 3: + return "Apr" + default: + return "Month \(pointIndex + 1)" + } + } +The code above displays the titles you can see in the discrete graph shown here: +
+
+ +
Discrete graph chart with custom titles
+
+
+ +###Supporting the Pan Gesture +By default, the graph chart object implements the pan gesture for you. When the user drags a finger along the graph in a view, a label appears above the point that's closest to the user's finger, displaying the point's value. + +You can extend the default pan gesture behavior by implementing the `ORKGraphChartViewDelegate` protocol. The graph chart view delegate protocol forwards the pan gesture events occurring within the bounds of an `ORKGraphChartView` object. + +There are three optional methods that can be implemented: + +- `graphChartViewTouchesBegan:` alerts the object when the user has started touching the graph chart view. + +- `graphChartView:touchesMovedToXPosition:` provides the position on the x-axis where the touch has moved. + +- `graphChartViewTouchesEnded:` alerts the object when the user has stopped touching the graph view. + + diff --git a/docs/ChartsAndGraphs/ChartsImages/CustomizedChart.png b/docs/ChartsAndGraphs/ChartsImages/CustomizedChart.png new file mode 100644 index 0000000000000000000000000000000000000000..c519de7def723a585a3cbf350074b65bca705dde GIT binary patch literal 68841 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 iSAA1d2#B5;LM5pYqJC;wVf?7W;UV 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%0Anrs~ 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 z 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

jq$w}a(c3T&L3A4n13XDUVxr&CPhO7*)p{@0M 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 bTIjEYrL0WJqwy#rr++AfGo| zYdX|c+lplPW>%BB6JVvE0o(c8f>_gckgyCs{_l&;Rt{PGYtCfq++4Ks$l>v+?dS}? zFgdItD7q6$m`HPaZ2g|ORz3}qOebxGdm&&j6aWmzo1ghi~?Y2o0)TyIc?8f#x z;jQ>j0ceNdh`tgV=&Q=>BI5{=i~8_70nH%_TpnPloX}*VDdKG<&lnrG+&7%>+_>o2rqxB- z)I}gNs@j}xuY-lu`z}Z&_?u{*v<(oc6_Gb9WP)aC>Nk;zqrqK?o4d0zYNc*Q;d6}^ z#Y9{lf4BP5&{pZzh?K+o z!SH;|@nSI2?X#lY1;6L;&+}QXCqh~bu6z8~lXPwLu6I3M$RDJ+ck3Z-8lDdFsg@-B zkwbbnchU*ri{(*Xf=Lc%uZ?L44;c)wOyY;2vcH-y9%aJ^)W1YLbbo zh{wIDzWJ=u6Cu>v^5s44=CX(9ANP*H=g)@LyZCXm?R#Q;zMNSfD3>ml?kuX~v{7Ae zEt08j__qWF+{RuCUR+K2uL+qbdAlNS{WADOr1krn-q<~EMtY4sx)LE50nxQo2drT@ z`sEfXO)VpqCexK}Za0}ujRNt&eRx~TQ{|*hH!K{drEHT61OXDvxmFoBzm=u#CvdK3 zDEhvJD)+q)%DApqUL`_*5`$xx>*(! zsIz;SAm93HlBU4Bgq-{!)b=Zj8Ge^9R2CqTIDSd5;uesgBluFwBy}w&CKPM>!{R7# zQGEd-RiwbB_Qp7+d8@&w5IINYt7QkZ?;mEydbW#$Hnn3fG~d#4&lG%eC-`x zZle-=k!}<}e;s69u6&`ix#*luc+smGS!P2rtq*lN9&%NuuYkzs&f;=+bmbcjN$#J;=wroMm@1!fD zy*&cGSVr6kIOk{=9uD5<37ffd zU1(7nzDOV*uD9!=;>CN_6rOszRpONv`-sA8g#Dwa;=m2wk4Pe!G6~q9w+=i(?xE>CbCT;t!?XT&1RF! zzAP2DRB*J_zRvHONOSc_{nL7C_RlUe9|Ggq>ki9!&by*Gif;?h}he=2o$b_G~a~+@@HF}n{KY{gveNYDujkkq)a~{ypmnU zntiU5d!`C}h1|dVnM7!QegqI)cdmyepYYRxqND9%^==4o

N#a_!v$0X;G<;ZLzF4NS; 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 literal 0 HcmV?d00001 diff --git a/docs/ChartsAndGraphs/ChartsImages/PieChart/CustomTitlePieChart.png b/docs/ChartsAndGraphs/ChartsImages/PieChart/CustomTitlePieChart.png new file mode 100644 index 0000000000000000000000000000000000000000..5380aa244fb7882ae69594337b62a3f6e2a323c8 GIT binary patch literal 29604 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 NnuZU{9z1{je*h#YBpm<% literal 0 HcmV?d00001 diff --git a/docs/ChartsAndGraphs/ChartsImages/PieChart/CustomizedChart.png b/docs/ChartsAndGraphs/ChartsImages/PieChart/CustomizedChart.png new file mode 100644 index 0000000000000000000000000000000000000000..65b90003b67abb1b715423df89c3c77226ecd5b6 GIT binary patch literal 28953 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 z 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 materials are for informational purposes only and do not constitute legal advice. You should contact an attorney to obtain advice with respect to the development of a research app and any applicable laws. + +# Passcode +ResearchKit apps often hold sensitive user data. In order to protect that data, your app can use Apple's Passcode technology from within ResearchKit. With Passcode, your users can provide a four or six digit user-selected code for access or use their fingerprint via Touch ID on devices that provide that feature. + +There are several operations that you should know about in order to support Passcode in your app: + + * Creation. This is accomplished using a step where the user enters their desired passcode twice—once to establish it and a second time to confirm it. + * Access. After the passcode is created, the app can insist on the four digit passcode or Touch ID. + * Editing. The user may want to change the passcode by editing it. + + The passcode is stored in the user's keychain on the device. + +##Creating a Passcode +The creation of a passcode starts with the creation of an `ORKPasscodeStep` object. The `ORKPasscodeStep` class inherits from the `ORKStep` class and provides step functionality that is common in ResearchKit. + +The following code demonstrates how to create a passcode step using a four digit passcode: + +First, create the step object: + + ORKPasscodeStep *passcodeStep = [[ORKPasscodeStep alloc] init]; + +Next, set the passcode type. Here, a four digit passcode is used: + + passcodeStep.passcodeType = ORKPasscodeType4Digit; + +For additional security, consider using a six digit passcode: + + passcodeStep.passcodeType = ORKPasscodeType6Digit + +After the step is created, create an `ORKOrderedTask` object. Pass a string identifier as the first parameter, and the newly created passcode step (along with any additional steps for your app) into an array as the second parameter: + + ORKOrderedTask *task = [[ORKOrderedTask alloc] initWithIdentifier:@"passcodeTask" steps:@[passcodeStep]]; + +Pass the newly created task to an `ORKTaskViewController` object and set the view controller's delegate: + + ORKTaskViewController *taskViewController = [[ORKTaskViewController alloc] initWithTask:task taskRunUUID:nil]; + taskViewController.delegate = self + +Finally, present the task view controller: + + [self presentViewController:taskViewController animated:TRUE completion:nil]; + +The user is instructed to type in a passcode twice—once for the initial passcode, and again to confirm it. Here is the initial view: + +

+ +
+ +If the confirmation fails, an alert appears indicating a mismatch. The user can then type the passcode again: + +
+ +
+ +Upon a successful match, the user is alerted that the passcode is saved. Passcodes are stored in the keychain of the device. + + +##Using the Passcode to Protect Content +With the passcode set, you can protect sensitive data in your app by enforcing user confirmation. The `ORKPasscodeViewController` class is responsible for displaying the view that requires the user to enter their passcode before proceeding. Note that a passcode *must* be set prior to enforcement, or an exception occurs. + +To enforce passcode entry, use the following class method: + + ORKPasscodeViewController * passcodeViewController; + + if ([ORKPasscodeViewController isPasscodeStoredInKeychain] == YES) { + self.passcodeViewController = [ORKPasscodeViewController passcodeAuthenticationViewControllerWithText:@"Upon success, you'll go to the next step." delegate:self]; + // present the view + } else { + } + +Your class must adhere to the `ORKPasscodeDelegate` protocol in order to know whether the passcode was entered correctly or not, or if the user canceled. + +When the view is presented, the user is prompted to enter their 4 or 6 digit passcode: + +
+ +
+ + +The following method is called if the passcode was successfully entered: + + - (void)passcodeViewControllerDidFinishWithSuccess:(UIViewController *)viewController; + +You should perform any steps that would follow a successful authentication at this point. + +If the user does not input the passcode correctly, the following method is called: + + - (void)passcodeViewControllerDidFailAuthentication:(UIViewController *)viewController; + +The `passcodeViewControllerDidFailAuthentication` method gives your app the opportunity to attempt a reauthentication or rejection of additional steps going forward. + +If you want to provide a Cancel button so that the user has the option to back out of the authentication process, implement the following method: + + - (void)passcodeViewControllerDidCancel:(UIViewController *)viewController; + +The `passcodeViewControllerDidCancel` method is also called if the user taps the Cancel button. + +##Editing an Existing Passcode +Provide users the ability to conveniently edit their passcode by using the following code: + + ORKPasscodeViewController *passcodeViewController; + + if ([ORKPasscodeViewController isPasscodeStoredInKeychain] == YES) { + self.passcodeViewController = [ORKPasscodeViewController passcodeEditingViewControllerWithText:@"Choose something unique." delegate:self passcodeType:OKPasscodeType4Digit]; + // present the view + } else { + } + +When the editing view controller appears, the user is prompted to enter their old passcode: + +
+ +
+ +If it is entered correctly, the user has the opportunity to enter a new passcode of the specified type and should enter it again to verify it. + +Note that the passcode type (four or six digit) is passed as the last parameter to the method, allowing the user's new passcode to be of a different type than their current one. + +##Adding or Removing an Existing Passcode +At times it is necessary to know if the user has already created a passcode. The following class method on the `ORKPasscodeViewController` class returns YES or NO to indicate whether or not a passcode exists: + + + (BOOL)isPasscodeStoredInKeychain; + +You can remove the user's passcode from the keychain with the following class method on the `ORKPasscodeViewController` class: + + + (BOOL)removePasscodeFromKeychain; + +The value YES is returned if the passcode was successfully removed from the keychain. + diff --git a/docs/Passcode/Passcode.png b/docs/Passcode/Passcode.png new file mode 100644 index 0000000000000000000000000000000000000000..dcd5d53781f299eb378796f241b9857030ea31ec GIT binary patch literal 87632 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�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

@!ls?s~;B>+WUmUguk0J)6wETIfza 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 BU%>zX literal 0 HcmV?d00001 diff --git a/docs/Passcode/Passcode_ask.png b/docs/Passcode/Passcode_ask.png new file mode 100644 index 0000000000000000000000000000000000000000..dcd5d53781f299eb378796f241b9857030ea31ec GIT binary patch literal 87632 zcmeEuWmuGH^fw|(iIj+dgp!gXF(6V(H&RQhDBTT1Du{q|Nh2vBjDW-d1A-vkJq#(G zl0);}!>+sgzpnrL_5JW(d+mpnXP)PdbDwkW-^pM#6>NYIQi5gL`0mrMHU~KZLaxt*Di`0K1z6xa|urZ3!B6b3x@&g5+1*Rf3dQm z2s`foczS?Cvf)LF`Th5+y_fJ9P$Ckn>e7Ed0>3h#4zK@y1M_mmWfF-hH$Rokkl*8D zewC=&q5W&RiUxo#cVYfySK2Vl*bY7ATkm}|kY4ef zSRC~ug5K`URie^j!7FL#lh9 zMLh0h+xZ@kPwtP~ZMv)ucdhp4D4vzCSB!gBPWeCy%;ct;czh2#yhP8>(Diw~uVXpu zw%a)-r6~>Ph-e@38&BOgL0@?{0Xt#O+h)R(U@*kCtKE9*w%x`G)weDQJV%Rg$vE%+3ha%9iGb4d1P1GPE>oU#CeY8C?=pZ?XMLY=fMDbIc#h7Bzv*LY6dr*?5{#Fy}duzk;V(hSzFN?tDB^v#Py z^qnVfZ^Zh}2D5IrDA;)IX3=x8IW6ZT#J9KmV7Sl&yJoF46!NP5#)Pn+Rk_`y zA)|CH9zzZ-)uGBX%>?@dIm&=K@8cuJRT@F-))DC!2bA>(fvmi+NAxGtxH~PQY^u}r z=LbQH2FBaQbrPSgG&ebn4@1y^4j$b@tiIpx3?H40)SnI2tP~X1dZQ;GJip%X|NQ8nMSO$SsgrloG}$H|mh3dP0~4RweuGQgouES_ zb}~a8L`-SJV_f&hj&J%XU)8&Sja~#JoKpBWBdro&aYrIeJ#}cc#B(z0`dpb#4a)3C zKEht5N^MV(dE#2T(ugSM- z7Q3fr;>WsLuC3QD;mzS0IJPmL38KMZ5ld1ABbCI1vL|9ugU5M9f|zid5;d;p>lVslP}QtL zZ%$1OXf!=tK3awKREkz@+(9Y!y%5J?AYsX{di(Sb$d!>OQ%~aJc}ef@HlIvu7TWR? z3|$lD5}hC=m9_I+#dKR1=cnjOauuP59_VUO<;_=);#m7&iIXWJVel5*GaN-owMjRm zhHW$1uFhfuw^0lY?>THa`xPYq0a|NWvr%1mI*lvdx>&#UgXYvrRdg@5D^+BqZY#|0 z!%iDNBq^>Z3qQYfFDk-|sh+3WVagkwNb~#wI?KuqIzHYRRxu`ie%NC!c-$p_4mwPLPR) zk5Zd^@v6?zYPmDtgOZcS=QjIXnnk+^X}Km1N?ruQX;Nn|)1XhlMt8@J9$d!7u!$x^ zhLt*B-r&mOHLcWzuH=OJGLOUg1de#)D*KO%QePo1D}%3Vi68y)8-W>%PsMLYy^iv* zL2pcq*X(qQ5N_AdONwvW)~qiGe@x-YJ5lLe+(~m8);;5eui!+a#mU0HrM67q9Hir3 zyA{bpX}uIxb?neRzS);0>oZ%la?s4I$gT{aEU=Y!oYU6-y}kGq0-P*MP&VJt+EX2r+Eo6Hpx4(-ts5+s^|oEplYg! zRr$G+7P?i$KGN#wgV4NQvJjN}XI6yR%4NqaZmoD!>_phN1F^89l82kMJC9EB6zo^- z(kVTC`ZD&{&mrA1)5AqAlX;!-dTQ{N-zu3E}>g|l&J9U+cSrBgvFGf>;#<#wU%E~?f znxKiaR{+q&mH&b!xJm2lcD^-YEGh!{Zin)Ookr00xC5!a_k5EmdOW9&hARoU z585j|_bh#1#8cSc+NEji@J+K)s;*%IuAK$936iYr!S z1vuZvr0^Bf#qBS*`DJe7(5B20Qq5_>pRU84jl!Q`Vb9|WjU=29OQYUF5BuR+gf}@` zLk$k!2f^;i2S5??ibK4?_HMX-kEs= z!=mF0?%^uokGjtqMUD2oCk=CKkY6pXwCqYAPOy3Roh@BQj}E2K$UD1@^=z{yoY%Bh zw~R}BOh~Ca@xAE^n{F8{ig&u1%JlVTp7?2g+lUe8ZhxlYMzCLf>ri_f$EmmHNTbe% zOzRvY{hXFCWK7^?m@>c!gxE*vh0MYZmPs{PR!El-!$ltIr(vm{9jw9$HHp7q!PVT= ztPu-o{0Ae{5Gq0AlN6`!Hal5JO5sQEr6=^;Zs$iM^@5NOkv+3%*N!TN&K!5bwy%t0 z09kJvp80h(fqbYy;+tAVnfJdSi#_S|YXz%@g`X{F<5>zU^?6Q(*qV#53WC*bV{>PP zU7XZx9DNSzeho?SFH)21qeO4+@33tOj$3O)=7HVadgs*}@JFg_jGg!|f8qmjn+eAG z*9P84yCn$p(CKpiLod^qe11>dK)ImOtKSLU z{6Pu!RQ?UsrtkT&BJDo9rj_4yZ%8K@nq-;O3bTrRdjFnQ!(|qw57Wl0CzntBF}t~o z6TLKcKO`xjX6JO@MrdmLOHo0k;UmZ6-8^xdZWv;vRF}e@`%#_6;`NuFaf%L6cJ1@9 zy$|}=nj=D-cKc*?_-E+g2jXuxJx6Lz@I?Fas3?dcFJY6I<6RQ9i8UWN|14!woC{?q07gFdbn=O$4Y7aNP2TEp*yON5d(!Pf7Pg(Wn6?eu{0iVlGekeDSIM+o4e< zM%ZIkb~uIBDSeWoU@EaC{ChsF6DbWRCoQ$=q^s9vh6R~lGk6N zX5|5pMJD*62qyGyx(=$#CWhXMfpseKAYN8qWnacmLQQ4Lk7zRoL&GdN+C-&i>{hup zX%r7yq(7Hvs0cHsk4t0oQMOF_F6S~@L<=R@kB~Rv(tGv#ocyFemcFc>K6w2QbFVnx z#3l%&yKa`2Z76_`R?m`23>}`0h-Z_jPJX7hZ?J9R{1I<``VFxl+>y-?x?WykJMmCt zIXi}vyABEsyHO)=>T`-(dFML%Jm_$|Ygbm>D`e-k>z!z!-T{AoTX?e%x@PJSBH5*B zwu0@i&6L3!U7gk{Yp~2 zoG{!oBN}X_l~ENCpkHibP2aU?4U>684v;q%c9B%ZFkBs|u;7)#;_7zF$ZhpOIRysy ztX=_9`HlN}cx{2F?ey1KQmb#pA9^>uJz?PBS|XiOKK2G+U{Bd{>u%Ul%ORZwFNN}8 zv}%F=k;poGY`I(OouCh))6amBFcq?GQ7qW?~~9??6a%rG{p|m?jutqYh2g zqRCs?qWh!Yr|8|XNato~0rTGWHwhR1!J?XGtv953HsNosL&U%RIWDz>Ijq0KQ06jo zU+rEzkJ}_?1pEv9tbHWu1eQG&rDwoZ_L;Hb4wiqo{I@`?N`{r^d=(OVii|ErEv*0> zKgYdo??*qW$cTtxQ7%OzHobF0%Vd1rCOynz+^5CZnFH`osyP`klfra z!Rd#cW?sfJ^F*v&nL`nYQhEAPO~eTIO$7QV>%g{;nMTypSqS>164+d_=N8|fQ^!X7 zr7wdw-@p#O+u}P-`5M@=2hsbuKUuvYnmAj|p;EK*(aoC$D3C5$KhpU|F?A+t(YD&< z+~gAv)j-)pj6I+65W7EvAfYIDqu*ki)~+I9CFdwVt-ww+Kh(;=h9jscWvIw{MZ7=G zI8UZq0Gr;GFZkZ<=F^uqg58weZ7Spy8nfColdiEZ$s;uiQrCk1wu4FJ68v5}88~$b z>^G6CW?KnKTiLo;`}V09m1w9cXjP49khcF1^Bg+|e{h~%1Ia1-Z|?z?KR-SLY9Kq9 z>)+mkmr__WX{3L2{(ArhWo$e&zr_o}zdaN{R;frOs?2b1mi^nQAQywxD5{(^`j5>H z1Wg9`EvWpPIWJrr;6uy@{Y-xLsxd4T|6Wfd>7@Xu%rjoXe;geDEfHw+3zGdu#lP79 z{}nI#Z%~c>n`b3LaBjjLKo4G(jVX5Bgs(?k?yR7-teCi8_WbneBlXZ^&*ybx`{xO7 z>~~+5iA;?=k|5dW8lW7+`CDdgkh-sF0R#Nme($xiJ(`f~$0DxuHv4;wos(j`XF^aB z+)Dz;mX8R&zdn<`h;eBgLmitc)vA_*VK;c)qbv1LSpItgvG!sa4)n9 zuSkC|TDFImW)!NSTk#MV2;kz9tRB#^e=;5GUHhLgftlXEtfRhAy;`2*I6KJk{D7_V znQhrCtIjkhF(fPM#eNH4r>FC(l$v?S4Ey(le>{Qwr2bl~oprwwlqnvXK+14?-czo( z4-MtR2Mp6{R3WPf2f2O!WmCwby0)wOsc*0v5l*{|MZdk088IXW^}Zjv9HLBOE0CzQ zmX^dlrD;ZoUiY%X>pgJ;Q~K#+Ukxp--t1(hBbwI6M!MpQx#Ktv&*H3{Hbe#}6Wd%x zm*XH^rnS#mjL-FA788}7ToUVRwF$elxEn??;Ot5^f9oF!Gv!B2kkUZHFLi6%8K#{e#IPiwpkT8Hnd?n+gs#x+w+-Gb{k*%~D14p=|&DaZ{Zsg8kEoOR=bqcuI2b@ow#H!c;dY-!enlhY6Y9os;E; z@Ff1t67Dp`E`3qUtAA@ty`XQW8eQR4_eLiBlHsI_p)p|wzkZCvviu_HtFog8`1_?V6eL38?* zAk{ue$?uONbaNc%_Em4Kr7@+vtjJ5wph@6=?7M9fH}2M;KS2~tm`;UedLy*q@N(>5 zj%ziEXVv6sk`GZ~Ph0Rirrq<=6Ee;8eR8|c#k;~vIf62~*C5^2^k}4GwC(h zf7~LVCf^>y8Bvo*SSgIY6SlT$@m)!$aw=83;8hpAzVZ9ph0pxu|J-G%QGNjyk#kdN zrbjU}T?tn2`x#in>5o5+2|jU3e^Z}8Z@n*EIXaL)_aMgoe9+sJIECsqm(O`-2PxiZ?&sme1+sXU5nTEvzdik1+t24W=7OS1Mi%ij~ ze94O^Lp=v!$zN8xsZ0P#@4j2&*yco7pmydE$}c>+ z+BG)hsp>zvU<^M%7Bz5lgKU;kIDrDe6rPnS`mFF*G_`<^XFq&GQ(?;6t;Ad>@l1u^ zcrpA+lBusTQ$f1;u_oZ4l28RZw3FiHqK*Zn4x2m7L^x~pPM|1CG1)< zP@KCc6(l?|#b?Q_mUi;yPuHtwv8`KRFteG|M-=VaO%86ie&bAfX-Id_@ zEaoe@TuXZ@mnd9Gi?A4^|N9W_u?p)&ciB>4cYSCUe)eNPEJW(a|FB`)k7- zI?B0xw`C1So1M_S$!m9OrKD@NIeGZ*XtfN;Ro}t)nk(-w^jfo$r+!5*a$mOGmXSZ-3>Qk2OdIWJi)og6bpK&a=wxiL*T47bytjMU^hCE7xUWt0Csh~;} z%YP{F?pe(E0Q~GON<_!EpZfQN4}~sqMcz2Du$rA~*>K%p>VB2`wExo{+|8!l1<9Q( zGmy$EFLp0U3BEhP3MrD%<2I&l5v$u|;V?c=9t$Z?7HhHbUaB-TI~PM+5(@wDb?;Gz zmw)Pi8x~^(S?59>Z9jnz>6Bxy4h9CcBps4BA`+oN)fg|xh2zN)=WB28;$%hs*htN< zx0_YMmACqH5rO(i_MX2Yy1qWl@BiXs`ds}aULAgV#4&Zagfld~>tA$MQB=3Fy z6q^2@FnAsrjqEBUwaBCLLkhCi`$^aDd)Ztan_BX0fWNH9sP&S2Z}58Cl`%i##t@U#~Q>b6t`ubF)cs%8RnA zV#%6ZH`2e}9;};MM!Kvo3)j+vIX#9V5)Hgv&+EpvMCP;&*2lkxy{oA{-Ni3U5Db5B zHKp7_IkHA=Cadl=$G!9Oe9k&`CGFwb!XIsB=e(@_^I|tRYqNt(riA)Gi&9pz+e#mb z;-R;_gg{W?FI$INMS>i%Da5=;c6Wq=InbXobcS5<42+RUr++lCrXNv-zKZWwlznsnH)Wl&+(&tp33J~(b~~pk9?D%m+pq|j z3jeUbF4Da=LySRui7fl=!)9l-`PS}=x$0 zRO#bgn$)@dyIVd09wdD!_!T~rt-kMsc3rO-T^n8hE=y3^yj;JS=>3Ze&Wal->qH85 z4yWX~FXHLAYrf;VF$*6&8Onb9x6znUj?b3;^9f()*N025DNMf~FQN=?9DCECS9AmE z15xsGrdbEeWbG#7lAjY+l|@P2e;gLTY&ziU?{BM}{m6;s3j7e;Q={!Z)D>)NU+p^m z+$sQ?pJoc;R=+JLES#iw61a7X=66Fhul%h5MgX=wilQGdGy~Bf79nbD*na*|MB9VQuv>^{3RRzDV@Lc^na@R zFUQG$x65C*@Bd$Sw6p4WybHMTmHkrBjuMQB=8=AVT^AB5Sd}1VXRgKMQ&Z!*ZaGoy z;s7fiMnEB}$nsE^G8?g;U2V%nH-jTY%VI-HVlzq#z7?s zZn}>6qV|N%iJCld_LQjx8A}{zldqn8$Xdju%SQ*cvWK+R7fj;^=IW*d;bmYQe?yk9 zTFC^XxfdJSVdE%gF`NLzjU2_VEsmP^61 zVP{ukRFC)9=Vc}2cW#fet4c(9Y8M;)G>aa8k214Qz1QM07;&oMV}x5etk>QE2Vk()v7NW zB?oz9TqcAWT@NEFJaR1TzTZvHeNMaX~Ji{3Jd6p-ZD%dMDdr{FxO5U;I*6dgG+8FI!Wfci9<5Pl07eSA>d^!LF{09MtYRHC20{V^NTaSLZBR-~1 zcpCZes(%KIUtP;v?qWDga5_c9Kfh99leC8JPa2q80HD5pR=Nc<4#Sry zkZZVlT4aPES*P7oB;7UaO`t8O9i+i9P&t@)h>Q`KBE8S?*{J33m++GK(pK2 z4kk!_u$bY&Rt}ONBx8tuOz8Sh`K?4D8Qu#&j)%cF(ejLKh9(WKrS}(-6;UgNdad#w z36DpA%{(zY*{VC#`20sn|3Z)P(u*jVGdEpYXk`C)!6~l{A{xOao|v8w_Ke+=-~2D9 zAUW1OuFXC=(UgaaU%zBnNgevb&epY8+m!LDrb~5I=ZeVQOts7EY1M`#^yhXd$k6hW zFuU8^9Hvb|QpvZ+W&<)m6v+O7JBDpe6<_i8+-(gWk4_}N4W7gycKe+nA@wYRl}*Q^ zC0W+PpU3K|B02^Ob$G^YYl4UKRMV@zmmI&e>rU|~Y4O}&d#-OMI!U|wVjvf>hFlGB zQljQFjSZvXd$1rEY^ZmzM5&r2$}cMR{Zm(Gw|C)~0qc^T7s^_zlRYma&bOc2G{}zJ zE-M59)XP{1Md7Jhn&f*ldq@lgX3;?)47nLOA(I0{!xG>8{foBfIG+;9H%D6fwQT1{ zdp7%>d_5w4bUg1v31Y|kKN>0 z%KP)>=4}sw8)+{&ml%%|5iXBC^zp;FjcOZv1ni#~Ya^7ug>r(qTUh-fpe>tE^nhqE zF_1hmSfi_QVq(+a?kI$Ht4M!cy-iKwyI$V@!fPGrQfJSj1G5azCo0wD?Xu_QL5tZ8 zFQjqCLW|tEAIyj2w)pH5^Fdx1*%2H)SQ__SSEs{luMAkY5Gb*_IM5Rm*xMXBE5k)T zlvHDSRlmYCS14}jR@tjJ2gkRQe`RFT>46s0hO#HSFX{3b$0~lv`=wVqy0%3X*Q0+& zwl~4zLB74hb&SDku7jnnlGH#D z0V>;NS_g{0oeb}8JI)K3^#TFzn`A$Nu>vuJWz&rQtpe300;W=UXINwKQsGFigZo-k< zWq=sY<3!=c`IM@ah|%!jcvJ1#^gGVI!3?4fl#7UEkGdTggdIDivUrd=5NiYBx##>G z4;p{1{12^WLDP6;M0*anLXJzOJLdEEKUixkjYkMTw-ZCg3fk{`7-)_Ce1MA?)qrmQ z;;K->S#jH6Q{p!##3--;oVV8;2nljNyuC(c(1)CENX~lz7Zi#zP<~nV;-RzZBKuD- zl)y^b533J^E%2RT3RT6c7rq5Hrf=_{cZkI>W6DWAYkD`cf3&)z5xku_q%HgYmiAUH z8B))}WwQ2=Vuz(ILreRz_*Us*0Ll5rPddibR^kfl88u_Y=j*1YXy*hTBt9)hZ;y3b>*E}rFEd+(EdYo z;}?OH5Xeac%F_WTJqOKEOaO@Cl0UDBj9$HuH~AcAs`Nbb50Fjrj8@#IBYRA7fkxaX zrRLJ7*^jFq)J@G&HPh`kXSEX%CqEZ9o+=E7UcPXQs3if8;HL@4+|6u?65QP5)_e_~ zyPqCo1#v0_*p+oj#iUwBpRCG;DRA#+RcKYP(4P)WTDdOyzO-+@686m8<=WNyjDRYt4F5PiV&!Y>&+Opg)6lU zj}r*IU0;SIcc%PR`NI4Z^{v+@sK69c|>d0wK?$j0Rp=JiFD|f$= z0$ur6b^#W)vK+uZ0jZDU{_WW#VfM3+Ae-U))As-(P}3%pU_F#jSCS1OW!>|%MT*oHZDeHtT4b}JMv4us3bl*&dxpSWxH?{`+9&K%N5P>zcC@$p zS-)}vl=RS}CyV|ng^*wn23vR3p2KKmwP*>=ueel;or#Nfrp%KGoVu18d39?z+eg!} z(wpDk5|!YSS8yVY*TX^G%J_S#vJ=u%`!OSgClbH}o2A}{jjIi1V`YoTT92Jm(sPFN zG>N4HZT&FmZ@6minB*umW`Ay5=UjL9Tm{CLm%aww>gH0Q7|{WaZX)0HG(o9+Fo?GYwZ zcD-`yhv%-G8H%mLhieQEltF>>V#VBqtiMuj0vq5qPV_t1a!tlfM>Ba200@83Tkt^k zqvOpJU?;Kn_}W8U%U8o7lbjsLI5SWfWjlCAVH179V;KtI*xCJ~08jc!NJzYRv^GGu z#z*#`r0vh4u$w}*PR?pOuNoajSGd1(au}KdJ40HA#&w=AB!}9}w`(y+IQ_|l zv*2)l!oL8h>n949|LC8`ccF;uq=E^62fF)?Ig?(YNM()F)SivN=1RT0Ftyb#Q&{Z8e+?LDG$C zRw;m7VW5ySWiu*_Q&+krFUClX{svCW(pE=w)-dX2d(Nwl_ymzP`WSQHv%`CJgq=?* z(FlW;VXo8kkYdBtWKR9!y4x2wt}cGIufWFVY;#HsujBdOdEz)j#8^Y_`&p}2XB(m; zB%^$TE3Prq(Bno77-1mK4gOt#R>PU<_bPy})ABfCG(8(bMw~iDa_z8YsJn4xv2&;E z(32?B8{?wgIV|kRIAe8_cIH42CBA$7^9#wuN&`$6nP^{e0J|zW^MwI^EoJI8-%5LV z$W3f*0bqHg@Uo}=m59t95@^ z+g%;0G`NXDP~g<@v8&o+vA$oNL^+9hz_?Nb-EtUQP71xQ?~(aQrkxc;wEK#3Z}X+H zwvh)q3JPH|NHXFuS^5V_C_pPQjc4nygrsFoOdR$wpTCO$g6~+11{YO!M z0)C*gH`hd!j=@>E-idtc?z=ZMChekw^MT0$8A|YDZPaT=Qro8K7JNu4?NM8`o2u9f zENUMJ((vIJ`hEVDnhWk{xCdzd^yvlW0ut=mRAZnq>(v0%k0Gy@NwlSck{x1CTfX$> zJk|Y-`t_=xuE7S@SBdFfimWm8r5R}^WfGKNVkQ!y7;9Qic0dX2#v5<&?xfS%+)qN8 z?*eVR^9g2JDdtHaG>>b$5aFjoa9OuI-oTh?GKiR-I$3#xKg6!SOOSkZJ2XO|TLmKr zTnY?_W!*QgNR?qO_d!L8S;KqspIU|b>YjhUD$a6DW5-!s$WFZnE~jkzJGtCXXb2Tk zR6l&lA)+dUPgOj-GA#K<&?(b9MT>whQHBdB?1#Qri;j8oWtqoMPD^=Q{W)pxQwF>h;gJgGBWN*Lw=;ZLiB+ zTsV=mfatE)B^b;GfJ=&d1o=9LPVu(%G4OeWSepm6v+ExD8D;a+NB!@_3?!RL z_o>5k>M-EJ`>3Ph`5T?mqmW@TZjA?w7o|`V85$s$)U9A6n-`p;>|K&~=#1{2g)Z1F z4^yD8^Q8mvyE_15f|GE*26Sb3pXwkPP`PtBz$MkS(CLA&<_Nk@YyI;_70{mj4P^VxgG~ zK8E33NdG{1hKU}pDOS8_ZZCE9++DIAw}G_nP8RB@o>SZ~zq-W@NmsZhpQa!vbR8TU z7Pc^O=Si1u$5HBGcKlGtzd2Orfa@0jC*zt5sSR!(1bkZd2+i(Pse}2jS8aNStoFvI*|M_)=7`x_Ae|MQKmNz zb7ReQ5QD`4(P(LZz0uZS%q@FJ*=CRe*k$}s}sVT zo?SQdXgkjLXIS%$q4l4(1~y<-oXA#ejEw1FQyZo~ba~sA3=vmXhySoH9~zbNc%$U+ zzBvKac!cIenU>;-P$}6GAsheXbWIjNdsyeY+nBR0xSJuz9s!yKtLz`J%sX?YVs9#?RNKkJ%++DDJ)Inzxb-QSsz z)5ZpzAEE2eiIGBW{XX)xhSaSg#X{I{^wsOP)f7ugUtPV9`n=}wmtDjFLe)*PRPZc z!%B2f976IbT*6alcBNbKPnhx65A`C=_l&ucdZk**CK_+jb-buZHGQ|au&G9yEle?q z`TQjY>*A;-C!LoZo*z&0=8Sp)yiVj=hk#yM_R2Ok9pFey}V z(v+-9)N_~3s$dY8{C6(^WpXuEWokQWmu~hrnr7eAy(`=|OiJa;W{$#WMcT`Ypzb=# z<4NyCUbZd>#O07&kdamGT&rpbzaLaaXS~916_wdwrIt+Rw|K3;?wrx{xY7M+R|jR8 zX(MfYW4mOq;FENs73vP;#)Q<8>0R!w4_hI7t0O(0dkP!50|=;F^8M!=zI!7=$@2Sc zZ?yxN|Ge;RaBexk!f0~9v0ay8_|>OU>S@uRd+$Z4*AG^uTM3lw>>}>J7D{->%GnEU z>b5_;_o72Z#K!LO)!hiuIGoe37CfwaZ35O35Egw~VU}8st%?JVxmN-Z!npSro{OB5 z+ZSNE52H{$iJ$rc%bwI9)Sn+5_P?jEvmSGtTF8)m6S8vOT+Mb@R7kC>;FDyc=Ol9^ z#gupFhp3W|ELv_8?wZMS=|=01)hDXk@_aMflv%oN?7r%)v_Ss2i6NCKI0?HSMjur! zIF5-f4vFm7S7N)hWn-mptT_d&4|x7H+J~c{MF1$mU8UX5qX%xlP$Ry3f}UL|!aJN6 zwTJeG!1ZAZ+=XK5*@-Bkriys!gO&`QH+4iKQ8pLC9EB0)eRdlFd_(YB7xnLvK&7cH zNBio1jq3+d@SRYFp2VH%deztEh|_9;e#B09Oe&%3Ow6ST_rV7%#c!8QUk1@uxI{U4 zQkIL3-Wf@vbxT=0S$0Z!eQJTYpq8F%$%U1ri|_0}X*-;1J3RT(29j7iQx78c+ zsUZEa+;Gy%Mc{871?JC=*iKRayRQ##+XG;>v@3s`m^QFK;-~n@IsP7O6y($Zpiy&f zA&R5-*6#-!sQh29bnDI7eax%yMFCH?MdHSWdI@p>@8bto)_c_9O%*7&71H$?&mz5Y z{M3(>7MB57eD|$A&dPcn zx!3KIRZ0FqcqCEk3dc*mk{3BNuZ+#fV2AjKIoD_CT1Yxk7fezM0*tBJF@Z_R$pZPap zYah5i4r8`w3Gm2oxmJ>3EcgGV4}ZXlBVzBQm%AcqoWFU?#xBt|?<1J~9q=XKyio=x z?}CRDqe+n}RWc#pr7YonLn<2os2Fagw2sks{{oA&etwxz*KYN;!18aJT3U_wUb37> z($bvz6cIaUCKYYbwRx!sxEwk`#}PuX)p+KNThrdh`@7>XEur}*%9h;NE984&(MKUw z>s>?QgI9qa#0j*#iH8%gTQb`4c7dG}v0nH5%_6KI#MLhC`cq@`9R0m8l*ypZpOtKF#VB*yYbE?07?Ih?^8)-Ea67q3j3<~6}>)ASikSOLZ|{N ziuftP@|^Z?%fUU4jPh%$xp{!Ey%76s@UeLI4^p+=56|uvpiKDtyI&6e*jiKqM0LVA z&)v?|M8Jk<@je^YbO*N>c%kV;tB+&ul17ZVN^JzUAiY{;m8F{VMD-W`09x`P9hjwM zmCq8uWPU$Clt4U}ew?_*=A`IWS@(dP+Y?pcuOT*(H@2gecrOu6Vz|QkuAlu>(`yh| z!ot3S!%x6jNrkV-99G@o{e-7dzTl0YsZMZ_(d=iY$`7~or-%LHGr`(e0XW!fN>v;H zXXA_qB3})Zn==&J^N$(N-IUXqm{~L0>Swgnw4UB(M%K78_v$)EV|*}r82v{9O%(*x z6CjQBGcGelh%4L{>_tFz7LnipHX}oWGW)+)tJcc&QBcTm%ffY%i;Rt{9@=ayOS|Df z4?3Da{1MCl0g$Ix)Am4|{3LE)3Vs@_9(FrOb_T?PV3B?@BYXWsDuq+18__f5n77-( z+i_G;7l2M4n{2CLX&Z!AXk-%vkOo542K^GOq70P@m>UHf^dGT3%p-ZXr-Gc}2jym< z$~OS|)tY4zU-c}a>#b1B@K>Zjn6iH{wKlL`?hdp3djI>1b|Nav5 z?*C;-;5(ofSGYiKf6gM2aR;oMsG(CHGw1K=)#$;3yieGO{&|Fnkpfo1;bX-VJpX=I z!W(@3-y$#Q@gF7s#en}iPx@~V2^0Q{f$ovJujJ>g)g5ned^zfi@EN>HM6LNHf|z89 z6Yy1P4yy(3pS+gQjQ41N)Wj7Oy;6QX0`;I$Rg@$%Pt1T?*;GP|UAIZ(HFp1yf5vfsj;E9;!G_LN^g3-6ET{Zz~t#^=&a_=Q%Tr^8tS^ zJ_CVwU%32#}&W#tObp#k%*WmHp@E{xTR5fBj(bpLGJ&mx_ajs|$v7sw5|lLC@3!2ZGr;e>w=x9W1zdVBlWi&ziRi^pzIHuVxsB^krkx+2Pt>?ok}}GS zPB*+6FMG(`Q&e?aX4+K>8ao~BVOrR@tRw4w(o3cSSGF~1oC809T3^xP=GyT3iXdpH z1&;GQ5!Hiirk2md{EDK(z(2pU*aI1owNiZ-TsN)@b5alA1kU->qfbUhzT+=KxlSII zFQWe#nFu7LT!7V>w1nH}$mARd{46iiG#s1y%WYEO+yR%qb3n!(aee=A-kZ- zjqBJeO6a1UaK%sHkD&q&?A06F~xTi`$-rIGoFfs?Ykj^%h?wKpj4 z-#>nlWb&sPLI}e+9j$TK4-Dc@C|cWFh>L(Gscr z7ST3kU4j*$70-B(_{nn`A^T_cLgi@F{2=P=%`N(~U$_J4`94|ta>%56)~D3!k4T^6 z^>xsn>C2Pr!cF1A3m=rE3vjkT1CG^^)tMmreLJQ{Jsh8OKw~d!(B!_G`5w%7%+6%7^<6n5JMNiz!YgmtsG!Xtdix4MY@&0#8X= z$?eZ2m_X*!G^k`x^SMM|w1Hb_3bmkce*85<1@v6=^|xTXU&~Qk)##Mfb>%SACfH{K zczE1EBQH<8xBrB(}3`;D!}~_=M<-RLd+(1W z*?nttiM=&&ZdD|IcLU|rQ*;b1pO4q~tVB5~77hJse#tlZgvefXv9^P!9_3_v-^JT_ zP?f9qGJC1bo4RHQme6(52t)z^(q+ zP*Sx2#zvR@I;Z(Z8y3y!&L) zYf5yiFqYr3NWEu?!_t`1r0-FKS(qQIe76ot0qA6S63h*;~U1k znY=!Y%9)(Fjn@Oee|UZ#S7%)M(I0Cuh%O~}#SLP|*7qzpt$pcS5rWRC>o^j>HszPg zj7pwI>IxVTe8o7xJ6t@fi8kaK4aJZ8=v5c3R^%njZ^&jfG(^P67^OisgnJI39YvTc z!mr4^8-8%N$mreKeM6whTwKCeN;d0`e}r7d-@`OEfgUaAne=?Dc^lU7<~4J8h&p=5tWV5suK7_0!REZ4Tg{Y& z2C6Br8rE<$$|(X3IwIC*ul@joA2w#4Q-K{+gDN(h_*?(*w zzO0Gmh)ZLDdkCiO)T5cyvgEU7Y_ErHKGj;0pIFXI-w=QPF1~127qXUPU^0iDmFx_u zY#C6N6Pb)&)Fw$ekjN_ zi&FIu5C^AZ%R_GC(mJc9LBAPK`O+#zGey33Y^bsIo0w~4YCe5rS$|TM#rUh5SANBD zm~&6<4T@>wF3SriltYV$?PHS{+(#Q0zZj;eYppWADKn{B%Th&v_AYltX1#w&Tl@d&*}9O z`yPBhL35sn=2zGWgwS)tY~cFl{nlLfY@CW(!PUrUa;>KU%5yP z?g=Q0YW7rFr6C>G%SW^=W!4-F{||fb71!j~ZH-z$LhLYlq% zQ{C1Qe(r{tj;&nOJ$x0mrkONCv`0aU7hzhILJ>9s@pT^oseu8>cZnxFz3R-8o%Vm< zY_|(*uq2)zn9sLog$R<#XP3aA<-AoJd1zTL{1z3C&`^tLZA!iSbN;J(!xF~J^XM7# zMh7NK)8O_NkgUVC-qgRwamZteOU$8mPzd(+84Ga#C`CWCqW6)zSC6@KT;@8@SmR@) zhkjjIb;)N!FKN~sj7@39ktB(Bekuv+exlOD5);*>h0w_X_bKI?{}P{aSwW>A?zQ>r z?{S_moKxeR`oe-Te~5_|psK%kOkp$SD~)_VkaZ5b$mwhGgtF%F+tZ2Z)_iB-vif4&r z48w($IjT>5;0iX@`y`rt<1%<;DAc}>67(j${pd3x9e=)ewj^WM==yxgw$dpWN^J9* z<=p_`oZ*yoQRYO{98*DSq2*Kn+1!Y)cupj7jtg+STqE3WL`X3orCCke@zt$eAyNLH zd=D*;z!P}>kIAqH*I37Vc|0CeyL>99lzFc}a{AgovnzT!1G^{ln$C80F8NOw8>uFv zSL^Zhe(KE6*aDY4vYb(8wx+t+Qh_$vZu?WUE`_fgT52*OzCke>mWp)sLy>C?=G}=7 z?ei?CG@flZSB?127XS#d<^{YjPawEiYo{O>AglHLQ6XY^|H=yTaJO&*IANYXTS5aD zw?>vFgG@K|T^G@D>`Z-sAK;Rf^K1qxS7az_XEomUbTeQB1uK*=bwUoV-w(Bmv;+%zBBA$pepfh<@&SQ_@oGk z-J7y;MLAq#ouJHF9+2QMmb@>#)<^kZ$?)yz*z54A+4m?sVtcULOQ!+Xt6kZ#S_Fot z3XLn_Lcs$N79S@c=>`|6?SXYN#-Vx|rlE#n+@JNmbv^}^5uDp1sm~=Ol7+rd+9=@% z>Pj@_huve;QjqOXHwC7q%=yx6ti>9IRSbiY9Yie8-qw>K%5b5-BQu>xk(_w8I{JKq z$k!o+a5IO#ZgNkq3?zFE+W`y{-+b@~Wvu{xOLB_lBAtk$PP!H-^a^-`) zN)8{JT2}~K&Gxu|Rhp$#Ms>tf#v1y4{o5OYp7vrY@OWs^Rhg=Ln}ByszA#>HQ(vGK zrMKg~xXb7X*Y zu^jcB$hXi?!g|i1CF4jtBUdNAt-4v2N?|^-VUd@j@lE|ma;~twW$_3UhN&}ipM0af zh*rZy=8WHE%&hXRT+}c@0)&o5f*EQJB%CxY(^jlQLKrdvAavRmnf0k%S0J6k)y!CS z0UJQW`u<~`Z~*%v8k%@0i_IUTun8Eh_%dut_m>oFmvfX5+P8}c-_zX`w*6ixt39)O zrn_($+YkEpNgYNVSV5D4iiL!^s0lu0qVSgIwp#3sd1;T8tlc zy?=}R_tfOpirv<0bnd%2sH*xa!{WXyA61 z08QIZS#oF(c_hU{=a92_<1S2vy|knLvG$*DC2F%zg1R1TP_#eI()*b`d{T(G=F^cL zPqNBm`X+em^Oh-#^A|D|>ATf;Z%W3P4`#crq|o9&diiwJ^sRJq2i|nFPz70qO7w%@ zgUbC|r$oC;g0i05QWD=4xtGc#@uGiz^Q^#_CtuPXi0f{p{F>izf4fb&JNhz9%0_xS z`UI(kS0>3wC%v6sBi*{FT~*jAIyoTaB`2Un2H598Ulv~4p&Pe`e~BEjO|&bA$;vS1 z@)nB1Q_VVqN#SG)YU~Z>Dv@?xI=|IK=lf#WSUm{pmqRJ}29R8Fa*D?}!@vHvV9Fxz z)2g%>xb|kc9*v&0{Wbk$iXm!Cb8Uj>Z&uJ3&A(w)bi+P9^l@h)?)vtfr084fmT%Y! zzMpI?w)%*ZR-p$-l8b)^N=?exY7HlyfS+xAqor7T+&In3EQo`&Q3!(y25vC0;C?o~ zMf71Q`+J^4-(=uXWpmK$xfQg6^fqXeDLXbd^veH!%J1WRa-Lw8YT+Q3AnaDj+~UF$ zB_1`$tv0$`VbXoUYHX=4Uy@&>{E1NH_!|lU5j>LQK~{b{ed^r9I>;uXKh06$L2mubZjDNHD?5A zt*JKks!h8#ACC+xvv7SdzR|5OQ2MZWb#4n4H#9gBF0=Od=AEKMb0aJBrPVfM>a5yb z=ruFcDAd~D>7~eiP=LaYJziuD3;x`V`ZMWH3>VcdP&?N_`($1F=?Sr_thsVM%-?+s z<$`}|c%3eZ`&QFt?C0y+Ik%9J{N`zlYq=$dUPd-qeo#Yibck=p*#;gt`-}3zM`wwD z-2mvqU1H9W|F?_KohZGhm?~+|)xM}9PTMW(FAOs(@7^AyrWmrTpLvph< zx^?aYfBx$9_&F^gC(TUo}2Om${HJ+j1tV+OP1ixXs$slB&JQgk+5$ znkdm(kTi)zw%=?4^u<76 z!&68wO<_qOS!^)F`BAM|@a1)c?nCYpK`EO)1*xMKnargI_SZPW4scIz@SyjKE4J+G z8vkx(1}EuRGyo9yu4L+wM7rWFVg~v0?{v~+TELeRt@<~Cu;=a^KxTVhX?&M^s9_5r zE?*)Cws>v})wY&D9RRx{vR+$UiA@-!DK>h8#|MW+nxio_wpy6fWJ#iX=wq(jjeE1xp@$Jch?Cf8Yp;*BGCA3*0<>|L?KQaQTw<6x(nZ5=%UV;<{7>|(u zaI>7FPLBYSUHqx0LhJJhg9<&9hD)TR>s|3%#)0M)s(mI4Z}iou`2ur`7M$vDL-= zmx}h#mi}P!eQiRsZuk|+^>ptsV8^?jz4bVMDxtvMMGJY*WOp#wjq%KjbnurHoP%jo4b229z5c? z;n}q0hRsZ^M{XPmtuwa=x|@Er5UnT4)LJLLyU{$U& zydzKUkc1x0-F26N>@n2k8`wtAI&x0R#TK0Y0KmPLa^9b7t$o|SnVIz<*VQQIf2@;w zqx98YYckg7)29#gC4_B%!d07BWgng-puw$vu(*isWz;Tm4Hz{Fq#{F4G1sJ+R{|Jc zB&No5Q_hejI6Gtb2w7? z6PzEQ>iLN=atzLaw^O$rBqq`FzRfpr#~%;08}vCoRJgZe^>ap~ zm(YxLCOq8I?BHkCMm8?&?RE`77uIL<9&UhXB)l0pXV#d>Ddb*>nWFZ5*az6Wd(M2e zsl=A&4f&x`yW3R5&a})T-o>se zZeE1+@m4ZKyKP8qn`pc=4;FQ&@a%SdXY(2>Gd4Y@Q5|sjmW(eJ)RHY3G}=X6s$BMJ zwx~jA>XqHGvy|H+>fV~?d|%kW)fcuO>?Ghgw2Dy(yU`eAI{ZvBEo&J*?SBcz6Ep+y z<{I`VN0YFpc9_*B>5WeBon ziqgd$N!xxv-PXDs%<3t2m~P-+_I%Fy_KI;2`MAvTINOVuI#F?{^9pI{1A65Y59x38 zr_Gqf(4*u5wEnEdBcRDgDYR&5Sx>nsgrlYIYtY3SW`xa)kh+u$v}D?!o`4I*$!NO7lgX);TAPAv&n8IhCZ9YIp~c%GZ_=cjOWK{$#y32y zVF0;~)v1SNNjUM|BEY;*->Jh+Kb%DBir0_bUDDcLRYN_%7UOPfl&WKI*vL#|xG8&8 zH`Oc23k5$F^3?kv#4y@P`hgs7B&BT~?P;I}FE_11)Iemm)L$jlh&th%Ef)YYl2tgW zD0)_~auUa_%C24oq4FrjX#y7MlQFPjT_!z}3XJHHJo%7KC{T}A}2M_`~$+91h! z5}X(9`wlB-Gm|ZAn?dS&k-uD84pQ-g9(zEZ>$=}k+l7PyRV*7J)j!+ZrNI|(5 zINMGvOS-iKX1pj_>s-6*e6JXboDUA%(Nn*w>sM4GS8xdx`Yu7i@>Wkz-VOoFGOqz} z$_yag`%&?UN1D8RGdr!-FT4u+J} zr+OyG`G8M>MWfY)2*-s9n=rd(HJs$0Zl>Ix{CEq->q$ zNn};}=DR!px~NE9$>an}mb#vpr8sLW6cg`Z)6yK_Jflq9*^mmL^Khi$1ETV4A$rlm zh)2w!*^LDUhJ(UK^24iLKZfYz^o$i(ySi=@9)4K_JG?N8LD%vYz?$$iE8go8+jhPo zj?jNg?RaZEZG#Hs?T?3{AJ=Rve}~Bi!Wd^X9?77tL);3o_djoCZ^yMOSuPhaq%{g~ z<^-QDG0ngB+w{qcUCmsKCtl2T{hJfnGAiCYhwn>61i3cclgi8gsEH5WmEdy9woE2TZmuzc!!J~z?|t4xoDr%BOD)f*=!rOj5vI}g)LgA-mgvNM^k$>m6E~`-=eLjPMapK4?=kSb)F1Z% zJWk9+lo+`YGbzKxz$UH~oNiae)m<=qc;oqEgsj`~by<0c#h17-;+y`3#ZCjV-3VSX z7b7{7pCa$4?oSS+vp2m-CjpMdvfqt-o`H;4fsYw}7be~UJkXnrIs#%);zd$*I8=EX z`0RRm+KoBh&rkfk))LGZ!UrBCbGep15BKxjJxI;Ab)e)&pRJgnJmok?z0U<2zrobc z_hL=#x~X6!@?EU3y}z8~4MPyUGxI{}y1v*s;bSqH6CQ%J#<>~>VsD@kC`eMO8l(HO zom%{}YnP+@89zgskK}ZLvxJj!;Kt<}LXp*aMt2_6b&;+1m<%7igInaR{t!BQ|8l>z zm2qG=I@gZSx^^ATm4AEx0TWPv8U)|JB*rMmIOec*qHsCt{@nTq>WE{;`%*sr&+l5v z9CA!Vq>w=ixpfK|@3J#At?Q+21xsbQGd%2uS2Kpa8XvRijb=^_(bhlhl5Lkmw_=8` z2!}=IrI2{5ppg`xIS`s9`yuVeDd1@Xr3)Hko%5@)P|fhn)z@W{|mplM% zgXBZP%H{0x5&(Z-8HJuq7D|Ba)vs$@8IFckglz8v+Apo}e2pJh8sL)^L;2^~GEu$3 zP_GD{XWjtpyFl;B>`W#~PYQXF&uf7>3rlY34)x0n3jU_UFD%7V948U>$(SABRR zaN~0r)?a&==3OGJ#IR4E!ic;*hN48`4-7sq#)a+DTu*JpD2te7^J>})L*-_tRE>8C z&$&MMqW{)0DiJaJ!UuYOx5!X0*~2l)w~tieBtEI!Y%ic4X#u-6gk+8LsZaWrxaC&J z$sqOt4Ed;V9RHh;uXva@0jpCf01uthJJ(i;LYdb*zZHg%Z;$S+M(Nw$%qn)ZFbFUZ zPdP>nBejn7$27yPsBvt@u477_#pls!&0L>n%~-ClX>}{#PRpD=mphGo*Gm!e){yqC zYVRq>vDI*qq^wF!nuZ5T_Ow{LlEjb}8s`=CHuy#7RoP(Ay*_>-Nmo0`4s=gHF@9Q66bC9G3d#4%-OVcB zltJ?+_%Dmh`z~2of8~Fxjs7LA!n^qdN%jO|D)Qg2rzc|B%@tXYXaBEm;Q!+;G%d{4 zdI#KNUccwYDs9+eK`w`ItOaqD|G0I|OZi`#C>G*)+A3w}&F}dCb9>-U?ZQi6Mc?{w z#UxOOjeWWi?tvfr2A)xDfO|f(K-)Pd}{~ z+@_<&D6s#14R{~(zx)FJ>!tjgAnp{8a3B7+$PLK4!0-0>f2p_d@BXQq{PFH9XgdF& z@9_lI`yV1spu&EAqr3Tzl*HTrxCXora_2uj9zYGZ`1g2T5n z12vozU!S9-#T}4o*dl>`iBY{W8?>&-Kl_X+PWM2nb}F!SyU8}(V;+(A780dS34$>5 zY3U`FJJ?IM-)a`zt*$4-o-)$4DOl?9clVif*6*NL23wW+C0~i&TEOlV z>MfsOXMrwJyJ z>UWhpaS7rPhh)QGu0lB?=I>Ah6l&o!`euC08F-&zV9unw-({;DdwsUtPMlKG?Igq6 zPBPsyVqRkTn)Or5`k`huQqGk3JsVdb5`lG3S5wbkvgU6)-ev0`z{&lq zuIG7hM1&51(NzJ(7`sO&tHJkmPLLm7m`Fdde{0I8zX@-CB7C`1<@i`paPzrO5dO|@ z0^z?utUqIu{W=0l)agq2q=C@oVO(qSbYFwj$jBvT&g5xqZ4-SGG*8DrA`C1=F zRA-8ri!w_AD1Pin8OkL`rGiS*)9oJ-CqlsnMs-{KliN+FLg{IpKG$YfG!h? znaWtn0qQi7oUG6t6VA(D(xQ>gOZXpusqIPB*A&#gO3Gx5lU(npSA?n-V@3dSbb~Qz z35HdFeDO>vKQ`IBOlX@SEC?FDH}uEkz(8Sc%34yb%HHZ!8z&p`t7A%hGQa~f_;m27 zA|d~9MX(iMB(jo3aiH$*X5iY%f_GYojcN4rh3|gj8bJUJf2q9t+MxQWl^U3LyKNQ?xvD)OfhO zuYaKX;k#rdrh-8vs_m1}3;t@(+BQy6je+FMGT$$PB`ElS8Cg)wz%rc$D)-5HBwy)m!IV?&{CJO@6*eTE#;l-$=nqP1T`rCuAqZEwYMjuqf;#N=`JPk_mZ8A7 zEMD4PAexP1gO91YCG*d_>e@RU-6uLGx@SSfm~^G|ZkoBqm7_Ie6!R*+;K!-NvnK!Wyg6`rH)R1bF-h@GsLzr&TANUAI{$ zr*<;oo>gV?`mRe}wnC*W@@{=aB@UNapz?hMGWj=KuQcU9f*D(EP$Hqdjv4U*tN!}= z)7&Im!J81-0l(NjafFhyn8K&Sk~~%@1$v} z+PWB%?Iif;PGLYl+qbd^1Z`{wcbLoAaHDrfM%ADLAn?ZS^Lqt~`;}9GaHH$)$j!=|Be^m+u~D4({JIBh}4J36j~_RJLy#+%=ga4{l>`}kuAt( zMZsqDNg3?)53*|ET^=a$0od2@i!V!t&+%{a{Mnv*nY+52i$-HiUnX&4oOg=zguMpq znsfOKF$^5ag7zwU9xwTeVqky;vy>BLK34i3@I@8&u;}yOqa7im$K{8Aumc$7GKHXV`O2v6sCln^#?R;UM4RJ~F)q7Y`H zy~J)7Z=mw8zGnEEO5J<48NUPNVc07&L=}$iyqj-0%EycKQeG7-Y_frmYuI*@YC0u4 zzunZv3s#bbYU_Ix=Wfzl+_{!fSzDe{=T#CwkocGf(Z~M1-CD9XP}co&RQ}paIJevn z?k(WB<|&$(!7{ga`f#^jphr^2Gy!^OW0SoqEMNcREm{o;!TZ)e0JtLW+HPu(GmllU z;q5KkF=AM}3WEg{cnGHM|D1Dv>7R1+Q@VOs&TW@(yPz&luqS{0U3tNp$7JKEj?t_E z(X3hsalp5&`OM>hdYF?}uS4OnpntS`pyx4ljV$(c)1;8$emc;K!_nv2>kU`;{P#WA zg=_)iglu_T$9t9QjpOe`c@E}H(D$gxsjS%g_rY$eusH)p8QBsyNs%8CV(A^60b%O| z}2rMD%RdU(5y>5&zS^*_N0OY_#<#~8^S#^k|0{4 z%Z;i`_^5(Q<%$|+y}#hLMB{W%nF2^I^4`61nD%3fJ5l)P4#}k$HC7J$s(>Be4YASW z%s=HRS2^;oz|}gSaa;W^&qhJJ(6C*qE8n%>4L{}0F*hZg!97sRGNy@g)1g)1sVDO* z!AkCiaQWy7Q7sn=cxL#M^{yn0K2$t8Nowft+?0`aJ{b10@Zym}$Xeh)-_uwL5XXF0 zq@`b1LsV*>L*|uI&Nh-Qp>MQNt=E^W;lsNfzq;WOmAECJn0JK>DUb%eR?;^(QbPAX zlMEj4HyeD|IcAUgTA?rw&C(wdDPn)sdlXaV36-;gH*ESlaP~J!y5-fuj8g)b^LDkq ztP~ux�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

kn9wb(T>O-=wl|4DR-I0FKg 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 dZv!FKl>Dl_$$0CBdbR?8*-^jS{{y25g}wj) literal 0 HcmV?d00001 diff --git a/docs/Survey/CreatingSurveys-template.markdown b/docs/Survey/CreatingSurveys-template.markdown old mode 100644 new mode 100755 index 93c0ccfd..e343b823 --- a/docs/Survey/CreatingSurveys-template.markdown +++ b/docs/Survey/CreatingSurveys-template.markdown @@ -3,10 +3,25 @@ #Creating Surveys -A survey task is a collection of step objects (`ORKStep`) representing -a sequence of questions, such as "What medications are you taking?" or -"How many hours did you sleep last night?" You can collect results -for the individual steps or for the entire task. +A survey is composed of a sequence of questions that you use to collect data from your users. To start a survey, you create a survey task, which is a collection of step objects (`ORKStep`). Each step object handles a specific question in the survey, such as "What medications are you taking?" or +"How many hours did you sleep last night?" + +You can collect results for the individual steps or for the entire task. There are two types of survey tasks that you can create: an ordered task (`ORKOrderedTask`) and a navigable ordered task (`ORKNavigableOrderedTask`). + +In an ordered task, the order that the steps appear are always the same. +

+
+
An example of a survey that uses ordered tasks.
+
+
+ +In a navigable ordered task, the order of the tasks can change, or branch out, depending on how the user answered a question in a previous task. + +
+
+
An example of a survey that uses navigable ordered tasks.
+
+
The steps for creating a task to present a survey are: @@ -139,7 +154,7 @@ For example, the following code shows how to create a form that requests some ba [items addObject: [[ORKFormItem alloc] initWithIdentifier:kBloodTypeItemIdentifier text:@"Blood Type" - answerFormat:bloodTypeFormat]; + answerFormat:bloodTypeFormat]]; ORKAnswerFormat *dateOfBirthFormat = [ORKHealthKitCharacteristicTypeAnswerFormat @@ -148,8 +163,9 @@ For example, the following code shows how to create a form that requests some ba ORKFormItem *dateOfBirthItem = [[ORKFormItem alloc] initWithIdentifier:kDateOfBirthItemIdentifier text:@"DOB" - answerFormat:dateOfBirthFormat]; + answerFormat:dateOfBirthFormat]]; dateOfBirthItem.placeholder = @"DOB"; + dateOfBirthItem.optional = YES; [items addObject:dateOfBirthItem]; // ... And so on, adding additional items @@ -164,6 +180,8 @@ The code above gives you something like this: +The [ORKFormItem](#) has an boolean property named `optional` which affects navigation to subsequent steps. It is set to NO by default, which requires the user to set that item before they can continue. If the property is set to YES, then the user can continue to the next step without setting the item. In the above code snippet, the `optional` property is for the `dateOfBirth` object is set to YES. This lets the user continue to the next step without putting in their date of birth. + ### Answer Format In the ResearchKit™ framework, an answer format defines how the user should be asked to @@ -182,8 +200,12 @@ The screenshots below show the standard answer formats that the ResearchKit fram

Numeric answer format

TimeOfTheDay answer format

Date answer format

-

Text answer format (unlimited text entry)

Text answer format (limited text entry)

Scale answer format (vertical)

-

Email answer format

+

Text answer format (unlimited text entry)

Text answer format (limited text entry)

+

Validated text answer format

+

+

Scale answer format (vertical)

+

Email answer format

+

Location answer format

In addition to the preceding answer formats, the ResearchKit framework provides diff --git a/docs/Survey/SurveyImages/BooleanAnswerFormat.png b/docs/Survey/SurveyImages/BooleanAnswerFormat.png old mode 100644 new mode 100755 diff --git a/docs/Survey/SurveyImages/DateAnswerFormat.png b/docs/Survey/SurveyImages/DateAnswerFormat.png old mode 100644 new mode 100755 diff --git a/docs/Survey/SurveyImages/EmailAnswerFormat.png b/docs/Survey/SurveyImages/EmailAnswerFormat.png old mode 100644 new mode 100755 diff --git a/docs/Survey/SurveyImages/FormStep.png b/docs/Survey/SurveyImages/FormStep.png old mode 100644 new mode 100755 diff --git a/docs/Survey/SurveyImages/FormStep_2.png b/docs/Survey/SurveyImages/FormStep_2.png old mode 100644 new mode 100755 diff --git a/docs/Survey/SurveyImages/ImageChoiceAnswerFormat.png b/docs/Survey/SurveyImages/ImageChoiceAnswerFormat.png old mode 100644 new mode 100755 diff --git a/docs/Survey/SurveyImages/InstructionStep.png b/docs/Survey/SurveyImages/InstructionStep.png old mode 100644 new mode 100755 diff --git a/docs/Survey/SurveyImages/LocationAnswerFormat.png b/docs/Survey/SurveyImages/LocationAnswerFormat.png new file mode 100644 index 0000000000000000000000000000000000000000..090131dc6f6b0fa71e47655342ca819509242f73 GIT binary patch literal 102163 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 literal 0 HcmV?d00001 diff --git a/docs/Survey/SurveyImages/NavigableOrderedTasks.png b/docs/Survey/SurveyImages/NavigableOrderedTasks.png new file mode 100644 index 0000000000000000000000000000000000000000..2d334fee09266e37bdf8ffe623b0a02a86ffdf2f GIT binary patch literal 35107 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 literal 0 HcmV?d00001 diff --git a/docs/Survey/SurveyImages/SurveyIntroduction_1.png b/docs/Survey/SurveyImages/SurveyIntroduction_1.png old mode 100644 new mode 100755 diff --git a/docs/Survey/SurveyImages/SurveyIntroduction_2.png b/docs/Survey/SurveyImages/SurveyIntroduction_2.png old mode 100644 new mode 100755 diff --git a/docs/Survey/SurveyImages/TextAnswerFormat_1.png b/docs/Survey/SurveyImages/TextAnswerFormat_1.png old mode 100644 new mode 100755 diff --git a/docs/Survey/SurveyImages/TextAnswerFormat_2.png b/docs/Survey/SurveyImages/TextAnswerFormat_2.png old mode 100644 new mode 100755 diff --git a/docs/Survey/SurveyImages/TextChoiceAnswerFormat_1.png b/docs/Survey/SurveyImages/TextChoiceAnswerFormat_1.png old mode 100644 new mode 100755 diff --git a/docs/Survey/SurveyImages/TextChoiceAnswerFormat_2.png b/docs/Survey/SurveyImages/TextChoiceAnswerFormat_2.png old mode 100644 new mode 100755 diff --git a/docs/Survey/SurveyImages/TimeIntervalAnswerFormat.png b/docs/Survey/SurveyImages/TimeIntervalAnswerFormat.png old mode 100644 new mode 100755 diff --git a/docs/Survey/SurveyImages/TimeOfTheDayAnswerFormat.png b/docs/Survey/SurveyImages/TimeOfTheDayAnswerFormat.png old mode 100644 new mode 100755 diff --git a/docs/Survey/SurveyImages/ValidatedTextAnswerFormat.png b/docs/Survey/SurveyImages/ValidatedTextAnswerFormat.png new file mode 100644 index 0000000000000000000000000000000000000000..5282f56694d1be56d3f788c0d308fc3b5525ae09 GIT binary patch literal 35219 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 materials are for informational purposes only and do not constitute legal advice. You should contact an attorney to obtain advice with respect to the development of a research app and any applicable laws. + +# Utility +ResearchKit diff --git a/docs/templates/html/document-template.html b/docs/templates/html/document-template.html index 16332841..6d34c13f 100755 --- a/docs/templates/html/document-template.html +++ b/docs/templates/html/document-template.html @@ -30,10 +30,12 @@

diff --git a/docs/templates/html/hierarchy-template.html b/docs/templates/html/hierarchy-template.html index 1676ab2d..954855a4 100755 --- a/docs/templates/html/hierarchy-template.html +++ b/docs/templates/html/hierarchy-template.html @@ -30,10 +30,12 @@ diff --git a/docs/templates/html/index-template.html b/docs/templates/html/index-template.html index cc175f07..4bce8d1e 100755 --- a/docs/templates/html/index-template.html +++ b/docs/templates/html/index-template.html @@ -30,10 +30,12 @@ diff --git a/docs/templates/html/object-template.html b/docs/templates/html/object-template.html index d651b30f..7bb3768b 100644 --- a/docs/templates/html/object-template.html +++ b/docs/templates/html/object-template.html @@ -30,10 +30,12 @@

@!ls?s~;B>+WUmUguk0J)6wETIfza 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 BU%>zX literal 0 HcmV?d00001 diff --git a/docs/Passcode/Passcode_edit.png b/docs/Passcode/Passcode_edit.png new file mode 100644 index 0000000000000000000000000000000000000000..558a4f7fe8a2c7897603aa7cc6bdd20e69e8ec6a GIT binary patch literal 74514 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�} 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

`%OO{AAtm@j^lY z=D3I_Ke(PK`y+p`hg}`!K`417@*X#s9~cWL@ReI=YtjBNIwZjMU=***hPQ+&w;S;u zL^53528VBQ9LNWO?k=*NU&1bhJC}+<2Or#ZT-GB80XBY6D_*8%z>78(s1#RKa+Rsltrf#j!E<_qS zrJ-YIl&B1^8yK{7j6<@o zB5JQ^c*%$+9zOkr!q=)o>gZNYWd7C-2=R7!;Y^22-gQU#dZZBhsao6yGt~aG4wIvC z_T9nkn+IgbxoV1tH`1EsW-?Vy&!xS$I49jL=T^UGmx~FU%D?+xB8ql1=Do>)o&ka@qbv39WIOck=>C1M303A`- zTi6n1es*CnEKwMT*I{WoF0dn&@zPn(iVYS9W#fK^2RT-r)$ax325GND<8$(lXWp&M z*2;J<$kg?_hXyMuOS6lH7)6|N7AC^f>8|9kvYJ1pHTxMjr@N=~=n0mS-HJ)8kPlA8 z478nT*2uxhm#IMtA%&QnfD$w-JYI_(%hwJ5&kwS|#|p_)dJ=8+u=)f?^` z-Wy2g$b82-g~XCR^~$=lstU6-LfZ4mAZtiqWm%MNO!j$+#*mzAWjVG%X$cL|j;2q$-saoPV|HzD4Vc;iVf5vP__3+R?0adGg&9r~Np?ta z&QAH`LcM_a0(9JhEs@ZjxuY3V+sC7cB#{ANGf5Wuc)d~>0>$sik=5~BAncfB1&7sv zP|cN>&D1Z)*a7TZQ(bm5rLd6Tjj-p_b>c1;gH4lfZ>gL!nHx(#{Jo%pIBE?p~cAanH!w!%ZFAAJ*R7D zKmh$ylQ0CQ@Icv~L|*O8@CCFLEy-wwuhG$+FzK0$YR;Uz6TYN;j?mp*H+zI`rV@99 z>oFGmJ5?jyfu-dM)+I52_w?@fvdTTJ6<%};hLXRWIZP$WI5-^QfECmCr4gVD#t#2QjEu2L|Os3i_Qo7S}9gU+Eip?I>8h z#MBwYJ+u82r}@Ue#kW(Ng^tC}Eo!zNN&AZv<+PQIfLnG>M}@!5CQFYfE?gwiZ)L!$ z(QlJMKFx6P{3_|2{Rt)X^0d0k*=8@X({=vRr27fN{_D*l0?W-qc$vF*_YjE@oHLU= zut+&m5oz)V!78k8q^jdclsK7yln+}vN@MAesdu%BLCQ@KA;Hd^WIeUV=skQXZe7&J zzfJ5UE~BgZ3+mZ>uW+ibxJ&e}J_sKHc|}QMuiu_tIGrfW9=z)0?%M~dQ$$BiS`ma% zAJN-tB!BXZ76|e0E2>cAHXX=A5nY&iIL+A zF2||}+otH~t?wYE>if)r?&a`PeN9hoKOB-1{SOITnaHe==-Nn_U6ucTxqSi?&a+E=}i{qJ4J00+m{H(WYcRurW!hA?A&N_3QT+t1xmH$|l_hUwQu?q^g zpKeO(Sj!s+Hj>E0Xpg9|4LR2|;%uK38xGKORP)6}==C+p5W721+~9-3uSXLC{1!f> z(JF^vt6l+W$70mrL6RbdCv(hyQNlzZyy9e!(&}Dnq!lqoQ7m-7xl%2Q23dN-tOw7> z(9ISAuC4BDX(isJzFZ|r!Bqm6d%1fkH5a^x;wrX0C5xv@lz<8DHV7A;*?jQY~2EJB_I z3KBRgVpKB!0ucpqvoBdgSz6mz=n&a?PBDM5Ny@m69dwg=czcwB0>BHb1B!*gCMnap zt0KwGu*zWC@YS-dUxwGFBZF>^o%$U~Lje`# zUm3M+>P}Ab%BFZJ&992wT@gE8V=w!bX#%JFotkHu+A!5v3l_pz(`nP1=8>rh0Q?3JFqPhp%L@u@l#E<^87qM zIl;p&Rjxfr#3=(MENbJUkR~K$*fp!5_Z-1D&8t5~PS0^=mI-SFWx|9k(iywm%8wiX z<655z9JOudas?9yCWj1@^7CRqhBw)vjCEB|>)}d`s~SO3Q{`;~=d6j`$Azc&bgwJK zrSvHZak$^?vu?aI+W@+qoA*wh-Gh3(-><7Q=Eo0z|6zy{PrkUnySOYqN^~FLsdU8v zGq^(H02_f@e3X+}v-&{xyk@doyjRC=iu8MFB$Pg5;HCOlzpaRnyyOL3gy^>>i5I-g zNRv$vJ_l^ZHxa!xP1&Y6_>sF0fmvCzitMv{3)v|lH@qXN@fiFv&@zGmS~2WYGvT!# zQR1N5Dv!%!º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 RX8s>e9)le%JL3J<{{d=E_mBVp literal 0 HcmV?d00001 diff --git a/docs/ChartsAndGraphs/ChartsImages/LineChart/LineChart1.png b/docs/ChartsAndGraphs/ChartsImages/LineChart/LineChart1.png new file mode 100644 index 0000000000000000000000000000000000000000..1917201fb9b0f3321b0a625ec842019834bee055 GIT binary patch literal 37294 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�-iXe02}ZtQX3-GVbtF(PifB zH#cBM3Y?%i8n?zzdNJh6G*Kzb!>|jbohG_ayw0PFQXdG&Oiy2joUA++wbyIs`#jBq zUb+HeoOI{e+}&TS%U{CztHTNitCfb={K;?f?L%H P2K-5g%8FD7>H7UY_iOUu literal 0 HcmV?d00001 diff --git a/docs/ChartsAndGraphs/ChartsImages/Overview/DiscereteGraphChartMultipleLinesOverview.png b/docs/ChartsAndGraphs/ChartsImages/Overview/DiscereteGraphChartMultipleLinesOverview.png new file mode 100644 index 0000000000000000000000000000000000000000..dadf00793af957178a5aeff3cfa54ad3045deaa5 GIT binary patch literal 23467 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�xL$Ys!ir7p@!;VL?$ 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 TK!|@2_)(Bimi{4W^y&Wt4B8sW literal 0 HcmV?d00001 diff --git a/docs/ChartsAndGraphs/ChartsImages/Overview/LineGraphChartOverview.png b/docs/ChartsAndGraphs/ChartsImages/Overview/LineGraphChartOverview.png new file mode 100644 index 0000000000000000000000000000000000000000..61bae4f42f385b59425300b2e486e2208d5c0576 GIT binary patch literal 25396 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 IM6N<$f-{qrIRF3v literal 0 HcmV?d00001 diff --git a/docs/ChartsAndGraphs/ChartsImages/Overview/PieChartOverview.png b/docs/ChartsAndGraphs/ChartsImages/Overview/PieChartOverview.png new file mode 100644 index 0000000000000000000000000000000000000000..990c466c024a08e6e010500b299b8a0cebac45b3 GIT binary patch literal 29847 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 literal 40473 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 diff --git a/docs/ActiveTasks/PsatTaskImages/PSATStep3.png b/docs/ActiveTasks/PsatTaskImages/PSATStep3.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/PsatTaskImages/PSATStep4.png b/docs/ActiveTasks/PsatTaskImages/PSATStep4.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/PsatTaskImages/PSATStep5.png b/docs/ActiveTasks/PsatTaskImages/PSATStep5.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/PsatTaskImages/PsatActivityCompletionStep.png b/docs/ActiveTasks/PsatTaskImages/PsatActivityCompletionStep.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/ReactionTimeTaskImages/ReactionTimeStep1.png b/docs/ActiveTasks/ReactionTimeTaskImages/ReactionTimeStep1.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/ReactionTimeTaskImages/ReactionTimeStep2.png b/docs/ActiveTasks/ReactionTimeTaskImages/ReactionTimeStep2.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/ReactionTimeTaskImages/ReactionTimeStep3.png b/docs/ActiveTasks/ReactionTimeTaskImages/ReactionTimeStep3.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/ReactionTimeTaskImages/ReactionTimeStep4.png b/docs/ActiveTasks/ReactionTimeTaskImages/ReactionTimeStep4.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/ShortWalkTaskImages/ShortWalkTaskStep1.png b/docs/ActiveTasks/ShortWalkTaskImages/ShortWalkTaskStep1.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/ShortWalkTaskImages/ShortWalkTaskStep2.png b/docs/ActiveTasks/ShortWalkTaskImages/ShortWalkTaskStep2.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/ShortWalkTaskImages/ShortWalkTaskStep3.png b/docs/ActiveTasks/ShortWalkTaskImages/ShortWalkTaskStep3.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/ShortWalkTaskImages/ShortWalkTaskStep4.png b/docs/ActiveTasks/ShortWalkTaskImages/ShortWalkTaskStep4.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/ShortWalkTaskImages/ShortWalkTaskStep5.png b/docs/ActiveTasks/ShortWalkTaskImages/ShortWalkTaskStep5.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/ShortWalkTaskImages/ShortWalkTaskStep6.png b/docs/ActiveTasks/ShortWalkTaskImages/ShortWalkTaskStep6.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/ShortWalkTaskImages/ShortWalkTaskStep7.png b/docs/ActiveTasks/ShortWalkTaskImages/ShortWalkTaskStep7.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/SpatialSpanMemoryTaskImages/SpatialMemoryTestStep1.png b/docs/ActiveTasks/SpatialSpanMemoryTaskImages/SpatialMemoryTestStep1.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/SpatialSpanMemoryTaskImages/SpatialMemoryTestStep2.png b/docs/ActiveTasks/SpatialSpanMemoryTaskImages/SpatialMemoryTestStep2.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/SpatialSpanMemoryTaskImages/SpatialMemoryTestStep3.png b/docs/ActiveTasks/SpatialSpanMemoryTaskImages/SpatialMemoryTestStep3.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/SpatialSpanMemoryTaskImages/SpatialMemoryTestStep3_1.png b/docs/ActiveTasks/SpatialSpanMemoryTaskImages/SpatialMemoryTestStep3_1.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/SpatialSpanMemoryTaskImages/SpatialMemoryTestStep3_2.png b/docs/ActiveTasks/SpatialSpanMemoryTaskImages/SpatialMemoryTestStep3_2.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/SpatialSpanMemoryTaskImages/SpatialMemoryTestStep3_3.png b/docs/ActiveTasks/SpatialSpanMemoryTaskImages/SpatialMemoryTestStep3_3.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/SpatialSpanMemoryTaskImages/SpatialMemoryTestStep3_4.png b/docs/ActiveTasks/SpatialSpanMemoryTaskImages/SpatialMemoryTestStep3_4.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/SpatialSpanMemoryTaskImages/SpatialMemoryTestStep4.png b/docs/ActiveTasks/SpatialSpanMemoryTaskImages/SpatialMemoryTestStep4.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/TOHTaskImages/TOHStep1.png b/docs/ActiveTasks/TOHTaskImages/TOHStep1.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/TOHTaskImages/TOHStep2.png b/docs/ActiveTasks/TOHTaskImages/TOHStep2.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/TOHTaskImages/TOHStep3.png b/docs/ActiveTasks/TOHTaskImages/TOHStep3.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/TOHTaskImages/TOHStep4.png b/docs/ActiveTasks/TOHTaskImages/TOHStep4.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/TimedWalkTaskImages/TimedWalkStep1.png b/docs/ActiveTasks/TimedWalkTaskImages/TimedWalkStep1.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/TimedWalkTaskImages/TimedWalkStep1_notification.png b/docs/ActiveTasks/TimedWalkTaskImages/TimedWalkStep1_notification.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/TimedWalkTaskImages/TimedWalkStep2.png b/docs/ActiveTasks/TimedWalkTaskImages/TimedWalkStep2.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/TimedWalkTaskImages/TimedWalkStep3.png b/docs/ActiveTasks/TimedWalkTaskImages/TimedWalkStep3.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/TimedWalkTaskImages/TimedWalkStep4.png b/docs/ActiveTasks/TimedWalkTaskImages/TimedWalkStep4.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/TimedWalkTaskImages/TimedWalkStep5.png b/docs/ActiveTasks/TimedWalkTaskImages/TimedWalkStep5.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/TimedWalkTaskImages/TimedWalkStep6.png b/docs/ActiveTasks/TimedWalkTaskImages/TimedWalkStep6.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/TimedWalkTaskImages/TimedWalkStep7.png b/docs/ActiveTasks/TimedWalkTaskImages/TimedWalkStep7.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/ToneAudiometryTaskImages/ToneAudiometryTaskStep1.png b/docs/ActiveTasks/ToneAudiometryTaskImages/ToneAudiometryTaskStep1.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/ToneAudiometryTaskImages/ToneAudiometryTaskStep2.png b/docs/ActiveTasks/ToneAudiometryTaskImages/ToneAudiometryTaskStep2.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/ToneAudiometryTaskImages/ToneAudiometryTaskStep3.png b/docs/ActiveTasks/ToneAudiometryTaskImages/ToneAudiometryTaskStep3.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/ToneAudiometryTaskImages/ToneAudiometryTaskStep4.png b/docs/ActiveTasks/ToneAudiometryTaskImages/ToneAudiometryTaskStep4.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/ToneAudiometryTaskImages/ToneAudiometryTaskStep5.png b/docs/ActiveTasks/ToneAudiometryTaskImages/ToneAudiometryTaskStep5.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/ToneAudiometryTaskImages/ToneAudiometryTaskStep6.png b/docs/ActiveTasks/ToneAudiometryTaskImages/ToneAudiometryTaskStep6.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/TwoFingerTappingTaskImages/TwoFingerTappingTaskStep1.png b/docs/ActiveTasks/TwoFingerTappingTaskImages/TwoFingerTappingTaskStep1.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/TwoFingerTappingTaskImages/TwoFingerTappingTaskStep2.png b/docs/ActiveTasks/TwoFingerTappingTaskImages/TwoFingerTappingTaskStep2.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/TwoFingerTappingTaskImages/TwoFingerTappingTaskStep3.png b/docs/ActiveTasks/TwoFingerTappingTaskImages/TwoFingerTappingTaskStep3.png old mode 100644 new mode 100755 diff --git a/docs/ActiveTasks/TwoFingerTappingTaskImages/TwoFingerTappingTaskStep4.png b/docs/ActiveTasks/TwoFingerTappingTaskImages/TwoFingerTappingTaskStep4.png old mode 100644 new mode 100755 diff --git a/docs/ChartsAndGraphs/ChartsAndGraphs-template.markdown b/docs/ChartsAndGraphs/ChartsAndGraphs-template.markdown new file mode 100644 index 00000000..c293f3a1 --- /dev/null +++ b/docs/ChartsAndGraphs/ChartsAndGraphs-template.markdown @@ -0,0 +1,387 @@ +# +These materials are for informational purposes only and do not constitute legal advice. You should contact an attorney to obtain advice with respect to the development of a research app and any applicable laws. + +# Charts and Graphs +The ResearchKit framework provides classes that allow you to display data in charts and graphs. Presenting information this way can help users understand your data better and provide key insights in a visual way. + +You can use the ResearchKit classes to create five kinds of charts: + + * Pie chart (`ORKPieChartView`). A pie chart is a circular chart divided into segments, which is useful for showing the magnitude of a particular data point as it relates to the whole. For example, a task-based research app could use a pie chart to display how many of the user's daily activities are complete. + * Line graph (`ORKLineGraphChartView`). A line graph is a type of chart that displays information as a series of data points connected by a straight line. For example, you might use a line graph to display the number of steps taken by a user every day in a week. + * Multiple line graph. A multiple line graph is a type of line graph that's useful for comparing multiple data sets over time. + * Discrete graph (`ORKDiscreteGraphChartView`). A discrete graph displays information as a series of data points in which each series is evenly spaced across the axis according to a tier row index. A discrete graph chart is a good choice for displaying data within a range, such as the range of a user's heart rate over the past month. + * Discrete graph with multiple points. A discrete graph with multiple points groups together noncontinuous values, which is useful for showing relationships between different types of discrete values that occur at the same time (for example, viewing a user's blood pressure and heart rate in a single discrete graph). + +Each of these charts is shown below.  + +