Próbuję użyć analizy w rozszerzeniu WatchKit. Zacząłem od nowego projektu (cel-c) i zainstalowałem najnowszy Parse (1.7.5) poprzez CocoaPods. Oto mój Podfile.Nie można użyć biblioteki Parse w rozszerzeniu WatchKit (CocoaPods)
Zacząłem od śledzenia na stronie tutorial. Opisano, jak włączyć lokalne udostępnianie danych, udostępnianie pęków kluczy i grupy aplikacji. Tutaj zacząłem napotykać problemy ...
Włączenie udostępniania danych w mojej aplikacji na iOS nie stanowi problemu. Zaimportowałem <Parse/Parse.h>
w moim pliku AppDelegate.h i udało mi się ukończyć konfigurację za pomocą następującego kodu.
// Enable data sharing in main app.
[Parse enableDataSharingWithApplicationGroupIdentifier:@”group.com.parse.parseuidemo”];
// Setup Parse
[Parse setApplicationId:@”<ParseAppId>” clientKey:@”<ClientKey>”];
Następnie udostępniłem udostępnianie danych w rozszerzeniu WatchKit. Otworzyłem mój interfejs InterfaceController.h i próbowałem zaimportować Parse, ale bez powodzenia, biblioteki nie można znaleźć. "W porządku - to ma sens, przypuszczam, że muszę dodać to do mojego Podfile" ... tak zrobiłem! Wypróbowałem kilka zaktualizowanych plików Podfiles.
V1
# Uncomment this line to define a global platform for your project
platform :ios, '8.3'
target 'WatchBumpTesting' do
pod 'Parse', '~> 1.7.5'
end
target 'WatchBumpTesting WatchKit App' do
end
target 'WatchBumpTesting WatchKit Extension' do
pod 'Parse', '~> 1.7.5'
end
V2
# Uncomment this line to define a global platform for your project
platform :ios, '8.3'
def shared_pods
pod 'Parse', '~> 1.7.5'
end
target 'WatchBumpTesting' do
shared_pods
end
target 'WatchBumpTesting WatchKit App' do
end
target 'WatchBumpTesting WatchKit Extension' do
shared_pods
end
V3
# Uncomment this line to define a global platform for your project
platform :ios, '8.3'
link_with 'WatchBumpTesting', 'WatchBumpTesting WatchKit Extension'
target 'WatchBumpTesting' do
pod 'Parse', '~> 1.7.5'
end
target 'WatchBumpTesting WatchKit App' do
end
target 'WatchBumpTesting WatchKit Extension' do
end
Wszystkie trzy wytwarzane różne wyniki, z których żadna nie były pożądane. V3 nie zainstalowałoby kapsuły. Stwierdzono [!] Targets with different platforms
.
V1 i V2 spowodowały ostrzeżenie i błąd. Ostrzeżenie ...
Pods-WatchBumpTesting WatchKit Extension was rejected as an implicit dependency for 'libPods-WatchBumpTesting WatchKit Extension.a' because it doesn't contain platform 'watchsimulator' in its SUPPORTED_PLATFORMS 'iphonesimulator, iphoneos'
Błąd został zmieniony w zależności od tego, czy zaimportowałem bibliotekę z rozszerzenia, czy nie. Z tego wszystkiego wynika, że mój plik interfejsu WatchKit Extension InterfaceController.h mógł teraz zobaczyć <Parse/Parse.h>
Jednak po jego zaimportowaniu narzekał, że PFPurchase.h nie może znaleźć biblioteki StoreKit.
próbowałem zaimportować bibliotekę w celach WatchKit rozszerzeniem „Linked ram i biblioteki”, ale nie udało się znaleźć - Zakładam, że to dlatego, że jest iOS 9 i nie WatchKit. Importowanie go do celu na iOS nie rozwiązało problemu.
Drugi błąd dostałam było, kiedy opuścił Podfile jak jest (V1 i/lub V2), ale nie importować <Parse/Parse.h>
lub <Parse.h>
w moim InterfaceController.h Tym razem otrzymaliśmy ...
ld: library not found for -lPods-WatchBumpTesting WatchKit Extension-Bolts
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Mam całkowitą i całkowitą stratę. Wyczerpałem wszystkie opcje! Jakiekolwiek propozycje będą mile widziane. Używam najnowszego Xcode 7 Beta i CocoaPods 0.37.2
Czy kiedykolwiek rozwiązałeś to? –
Niestety nie mogę Poyrazoğlu, przypuszczam, że będziemy musieli czekać na zaktualizowane CocoaPods i watchOS 2.0 –