today extension 예제

파일 메뉴를 열고 새 대상 -> 응용 프로그램 확장 ->오늘 확장 그룹을 확장 하 고 보기 컨트롤러, 스토리 보드 파일 및 Info.plist 파일이 표시 됩니다. 대상 구성은 또한 MainInterface.storyboard에서 인터페이스를 로드하도록 지시하며, 이 경우 클래스가 TodayViewController.swift로 설정된 단일 뷰 컨트롤러가 포함되어 있습니다. URL에서 예를 들어 ID 또는 개체의 이름을 지정할 수 있습니다., (논리 실현을 고려 하는 경우) 컨테이너 프로그램«학습» 어떤 ViewController, 서버에 보낼 요청 등. 만들 수 있는 다른 유형의 앱 확장에 대한 자세한 내용은 표 1-1을 참조하세요. 확장에는 별도의 컨테이너가 있지만 앞서 보았듯이 확장과 포함된 앱 간에 데이터 공유를 활성화할 수 있습니다. NSExtensionContext의 openURL:completeHandler: 사용자 지정 URL 스키마를 사용하여 위젯에서 앱을 시작할 수도 있습니다. 또한 코드가 확장 프로그램과 공유해야 하는 경우 앱 및 확장 프로그램에서 사용할 프레임워크를 만듭니다. 현재 iOS의 확장프로그램은 주 응용 프로그램이 있는 경우에만 존재할 수 있습니다. 스토어에 제출할 수 있는 별도의 응용 프로그램이 아니며, 응용 프로그램의 확장이며 위젯만 제출할 수 없습니다. 생소한 경우 BTC는 비트코인의 약어입니다. 미국 달러와 마찬가지로 미국 달러를 의미합니다. 오늘 확장은 크립토키커의 기본 보기의 축소 된 버전을 렌더링합니다.

Xcode의 도구 모음에서 BTC 위젯 스키마를 선택하고 빌드 및 실행해야 합니다. 이렇게 하면 iOS 시뮬레이터가 시작되고 알림 센터가 열리며, 이 센터는 위젯을 시작합니다. 알림 센터는 효과적으로 오늘 확장을위한 호스트 응용 프로그램입니다. 이로 인해 Xcode는 위젯 프로세스에 디버거를 연결합니다. 오늘 보기의 앱 확장을 위젯이라고 합니다. 위젯은 사용자에게 지금 중요한 정보에 빠르게 액세스할 수 있도록 합니다. 예를 들어 사용자가 오늘 보기를 열어 현재 주가 또는 기상 조건을 확인하거나, 오늘 일정을 확인하거나, 완료된 항목 표시와 같은 빠른 작업을 수행합니다. 사용자는 Today 보기를 자주 여는 경향이 있으며 관심 있는 정보를 즉시 사용할 수 있기를 기대합니다. 앱 확장을 사용하면 사용자 지정 기능 및 콘텐츠를 앱 이상으로 확장하고 사용자가 다른 앱 또는 시스템과 상호 작용하는 동안 사용할 수 있도록 할 수 있습니다. 그것은 몇 가지 특정 작업에 사용됩니다. 그것은 독립적 인 응용 프로그램이 아닙니다.

사용자 지정 뷰 컨트롤러 하위 클래스를 사용 하는 경우 사용자 지정 클래스 이름을 사용 하 여 NSExtensionPrincipalClass 키에 대 한 TodayViewController 값을 대체 합니다. 그리고 그것은 당신의 오늘 확장을 마무리! 여기에서 최종 프로젝트를 다운로드할 수 있습니다. 오늘뷰컨트롤러를 CurrencyDataViewController의 하위 클래스로 만듭니다. 대상이 추가될 프로젝트는 현재 작업 중인 프로젝트이며 확장이 포함된 응용 프로그램에 포함됩니다. 또한 확장에는 포함 된 응용 프로그램 중 하나에 따라 별개의 번들 식별자가 있습니다. 앞서 설명한 것처럼 확장 프로그램과 포함된 앱 간에 데이터를 직접 공유할 수 없습니다. 데이터를 공유하려면 앱 그룹을 사용해야 합니다. 새 위젯의 수명 주기를 살펴보겠습니다. 오늘 패널을 열면 시스템이 준비될 때까지 이전 스냅샷을 표시할 수 있습니다. 뷰가 로드되고 위젯이 NSUserDefaults에 캐시된 값을 검색하여 사용자 인터페이스를 업데이트하는 데 사용합니다. Xcode Today 템플릿은 주 클래스(TodayViewController라는 이름), Info.plist 파일 및 인터페이스 파일(즉, 스토리보드 또는 xib 파일)에 대한 기본 헤더 및 구현 파일을 제공합니다.