2015-05-26 16 views
8

Uygulamamı Temel Yerelleştirmeyi kullanarak Türkçe'ye çevirmeyi tamamladım. Ancak, benim Info.plist dosyamda NSLocationWhenInUseUsageDescription anahtarını çevirmem gerekiyor.NSLocationWhenInUseUsage .strings dosyası kullanılarak yapılan bir yerel konumlandırma dosyası çalışmıyor

müfettiş Dosya gitti ve Türk kontrol:

enter image description here

Sonra yeni dizeleri kaynak gitti ve yerelleştirme için bu tuşa ekleyerek benim çevirisini tamamladı Ben her şey için yaptığımız tam olarak yaptım dosya:

enter image description here

"NSLocationWhenInUseUsageDescription" = "[my Turkish description of location permissions]";

Cihazdan kaydedilmiş, derlenmiş, hatta silinmiş bir uygulama kaydedildi ve yeniden oluşturuldu, ancak boşuna değil. Uygulamam konum izinleri istediğinde, hala İngilizce olan bir açıklama (Temel çeviri dosyası altında İngilizce çeviri de dahil olmak üzere denedim, ancak hiçbir şey değişmedi).

Diğer her şey türkçe, çeviri çok iyi. Sadece tercüme etmeyen konum izni. Ayrıca How to localise a string inside the iOS info.plist file?'u gördüm ve "Localized resources can be mixed" = YES anahtarını (tabii ki bu cümlede değil CFBundleAllowMixedLocalizations, tam anlamıyla değil) orijinal plistime ekledim ama aynı zamanda hiçbir şeyi değiştirmedim.

Sorunu nasıl çözebilirim?

+0

Hazırla temizlemeyi deneyin ve projeyi DerivedData klasöründen silin. –

+0

@DanieleCandotti temizlenen derleme klasörü, DerivedData içinde her şeyi silme, uygulama kaldırıldı, Xcode yeniden başlatıldı, yeniden oluşturuldu. hala aynı. –

+0

Temel kaldırmaya çalışın ve ardından İngilizce –

cevap

2

Baştan başladım. Çevirileri kaldırdı, projeyi temizledi ve tekrar denedi. İşe yaradı. Başlangıçta neden olmasın diye bir fikrim yok.

+0

simülatörde mi yoksa sadece cihazda mı çalışıyor? –

+0

@Zak problemin belirsiz doğası gereği kesin bir şey söyleyemem, ama güvenli tarafta olmak istiyorsanız, bunları denemeden önce simülatörü sıfırlamak :) –

+0

bunu deneyecektir. Teşekkürler! –

18

Xcode 7.1 adresinde aramda nelere son verdi.

Öncelikle dizini proje gidip elle iki InfoPlist.strings dosyaları en.lproj klasörünün içindeki birinci ve fr.lproj klasör içinde ikinci oluşturun.

iki dosya aşağıdaki içeriğe sahip olmalıdır: manuel proje demetine hem eklemek zorunda otomatik Xcode görünmez dosyaları yana

NSLocationWhenInUseUsageDescription = "YOUR TEXT HERE"; 

, bu sağ tıklayarak yoluyla elde olabilir Xcode'ta proje adı ve Add files to X seçeneğini seçerek yeni oluşturduğunuz dosyaları seçin. Eğer sonuç & test etmek istiyorsanız


Ayrıca Edit Scheme > Run > Options yılında Application Language yeterli değildir değişen, emin işlerin yapmak.

Benim InfoPlist.strings vardı daha düşük "i" bulucu ve Xcode (infoPlist:

Sen Settings > General > Language & Region > iPhone Language

+0

Xcode, denetçiden yerelleştirmeyi açtığınızda uygun dosya/klasörleri otomatik olarak oluşturmuyor mu? Yoksa Xcode'un takibi (değişiklik/silme/oluşturma vb.) Ile bu şekilde bir hata olduğunu mu söylüyorsunuz? –

+1

“Info.plist” işlevini, denetleyici menüsündeki yerelleştirme düğmesini kullanarak denedim, ancak temizleme ve kaldırma ve tekrar tekrar denemeden sonra bile benim için çalışmadım. –

+0

Yerelleştirme işleminin olduğu bir yerde kesinlikle bir hata var, el ile dosya/klasör oluştururken karşılaştığınızı görmek güzel. Bunu deneyeceğim. –

0

Benim sorun aracılığıyla simülatörü veya cihaz dilini değiştirmek gerekir harf duyarlı gibi görünüyor), ama üst olması gerekiyor.

Ben kaynak Xcode Projesi dosya adını ve referans değiştirdi ve çalışır (veya silinen ve sağ adıyla yeniden oluşturun).

İlgili konular