2015-06-19 15 views
12

Stworzyłem wbudowaną platformę zawierającą kilka szybkich klas i jestem w stanie ją zaimportować i wykorzystać w mojej głównej aplikacji za pomocą instrukcji import. Funkcje, których używam, są oznaczone jako publiczne i wszystko działa dobrze w głównej aplikacji.Zaimportowane oprogramowanie wbudowane do rozszerzenia zegarka

import FrameworkNameKit

Kiedy jednak dodać cel watchos2 gdy próbuję zaimportować ramy do zegarka Extension Xcode nie można znaleźć ramy i zawsze pojawia się „Nie ma takiego modułu” błąd. Próbuję zaimportować do pliku InterfaceController.swift, jeśli to pomaga.

Cały projekt jest napisany przez Swift i używam wersji beta wersji beta 7.0.

Czy ktoś zdołał to zrobić z powodzeniem? Jestem pewien, że brakuje mi czegoś podstawowego, ale nie mogę tego zrozumieć.

+1

Czy kiedykolwiek rozwiązałeś to? Mam bardzo podobny problem i nie udało mi się go rozwiązać. Pomyślałem, że sprawdzę, zanim spędzę dzień lub dwa na badaniu projektu Listera. –

Odpowiedz

9

Nie mogę znaleźć tego właściwie udokumentowanego gdziekolwiek, ale jeśli spojrzysz na Apple "Lister" project dla watchOS, wydaje się, że musisz mieć oddzielną platformę zbudowaną dla SDK watchOS, aby włączyć tę strukturę do systemu watchOS 2.0 rozszerzenie i uwzględnij dowolny wspólny kod zarówno w obiektach docelowych dla systemu iOS, jak i watchOS.

+1

Co z niestandardową strukturą CoreData do współdzielenia między główną aplikacją a rozszerzeniem oglądania? –

+0

@AceGreen: Tak, zakładam, że to prawda. Udostępnij kod między dwoma frameworkami i utwórz dwa osobne: jeden dla watchOS i drugi dla systemu iOS. – Arclite

+0

Jaki jest sens posiadania frameworka, jeśli nie możesz go udostępnić między systemem iOS a systemem WatchOS? Czy to nie to samo, co kod źródłowy do aplikacji iOS i watchOS? – mxb