2015-12-06 17 views
10

google maps kullanarak bir uygulama geliştiriyorum. Google haritalarında ne yaptığımı açıklayacağım ve belki bana yardım edebilirsin.iOS, ld: framework Googlemaps mimarisi için kullanılmamıştır64

POD olmadan Google harita çerçevelerini kullanıyordum, ancak Google haritasıyla ilgili birkaç hatadan sonra Anahtar I google map framework referansını silip POD kullanarak kurdum. Her şey iyi çalışıyor, ama şimdi

Product -> TEST

vurduğunda bu hatayı alıyorum: Bunu düzeltmek nasıl

ld: framework not found GoogleMaps for architecture arm64 

bir fikrin?

Teşekkür ederiz! Bu v1.0 beta 6) Cocoapods gibi

Podfile görünür:

platform :ios, '8.0' 
use_frameworks! 

target 'Project' do 
    pod 'GoogleMaps' 

    target 'ProjectTests' do 
     inherit! :search_paths 
     pod 'Mockingjay' 
    end 
end 
+0

muhtemelen daha iyi bir fikir Cocoapod kullanmak olacaktır, projeye kütüphane/çerçeve eklemek oldukça basittir ve bu yaklaşım daha az hata eğilimli. – ztan

+1

Teşekkür ederim, dediğim gibi ... şu anda kakao podunu kullanıyorum – Asinox

+0

@Asinox pod dosyalarınızı güncelleyebilir misiniz? – HardikDG

cevap

2

Güncelleme sen hedeflerin Architectures ve Build active Architectures only anahtarlarında aynı yapı ayarlarına sahip olmadığını kontrol edin

Sizin podfile gerektiği şu şekilde görün

platform :ios, '8.0' 
use_frameworks! 

target 'Project' do 
    pod 'GoogleMaps' 
end 

target 'ProjectTests' do 
    //inherit! :search_paths 
    pod 'Mockingjay' 
end 

Başlamadan önce project hedefini sonlandırın ProjectTest hedef, neden inherit! :search_paths ekliyorsunuz? Test hedefte siz bakla isterseniz de testinde sonra eklemiş aynı şekilde eklemek zorunda den size


Eski bazı özel gereksinimi Cevap

yoksa Genellikle gerekli değil projenin ana hedefi

Yani bu gibi kakao meyveleri "SwiftCocoaPods"

//other top level imports 
target “SwiftCocoaPods” do 
pod "GoogleMaps" 
end 

target “SwiftCocoaPodsTests” do 
pod "GoogleMaps" 
end 

Sonra da test için bölmeleri eklemek gerekir ana hedef adıysa "SwiftCocoaPodsTests" gibi. Eğer def kullanabilir ve bu

def project_pods 
pod "GoogleMaps" 
//add other pods which you want in all the targets 
end 

target “SwiftCocoaPods” do 
project_pods 
end 

//only add project_pods instead of pods individually 
target “SwiftCocoaPodsTests” do 
project_pods 
end 
+1

Hayır. Sorun, GoogleMaps’i Test Hedefine dahil etmek istemiyoruz. Böylece sadece ana hedefe dahil etmek için Cocoapodlar kullanılır. Ancak, bazı nedenlerden dolayı Test hedefi, GoogleMaps’ın yüklenmesi gerektiğini düşünüyor. – GnarlyDog

+0

@GnarlyDog, bu yüzden googlemaps istemiyorsunuz ama test hedefi için de alıyor? Pod dosyalarınızı güncelleyebilir misiniz? – HardikDG

+0

@GnarlyDog aynı zamanda siz de test hedefinde cocoapod'lar istemediğinizi belirtmeniz gerektiğini söylemişsiniz hala hedefin cocoapod'larını gösterdiği/hedeflediğini söylemiyorsa, bu sadece derlemenin başarısız olduğunu söylüyor – HardikDG

0
benziyor Tüm hedefler odasını kullanabilirler birden hedefin aynı bölmeleri eklemek istiyorsanız size hedef adı Else

olduğunu test edin ne olursa olsun adın yerini alabilir

Bu benim için çalışıyor:

platform :ios, '9.0' 

source 'https://github.com/CocoaPods/Specs.git' 
use_frameworks! 

def all_pods 
    pod 'GoogleMaps' 
end 

abstract_target 'Map Base' do 
    all_pods 

    target 'Map' do 

    end 

    target 'Unit Tests' do 

    end 

    target 'Device Tests' do 

    end 
end 
İlgili konular