android:minSdkVersion="15"
ve android:targetSdkVersion="21"
ile bir Android Xamarin uygulaması var. IDE (xamarin stüdyosu, görsel stüdyo) ve derleme işleminin, API 15'in üzerinde, burada beklenen bir davranış değil, bir şey kullanıp kullanmadığımı görmezden geldiği ortaya çıktı.Android API düzeyindeki tutarsızlıklar için NoSuchMethodError çalışma zamanı hatası yerine derleme zamanı hatası nasıl alınır?
Örneğin API 21
numaralı telefondan Path.addArc(float,float,float,float,float,float)
bir yöntem var ve yukarıdaki bildirim ayarları ile bana çalışma zamanı hatası veren NoSuchMethodError
'u kullanabildim.
API 1
numaralı telefondan aşırı yükleme Path.addArc(RectF,float,float)
'u kullanmanın kolay bir düzeltmesi var ancak sorum, bir derleme zamanı hatası veya çalışma zamanı alma hakkında daha fazla şey var.
[UPDATE]
Temelde bir hedef robot versiyonu olarak API 21
yerken API 15
(en az robot versiyonu) için geriye dönük uyumluluk sağlamak istiyoruz. Ve API 15
'un üzerinde herhangi bir yöntem kullanmaya çalıştığımda IDE desteği almak istiyorum. Bu, tanımlanan en az android sürümde bulunmayan bir yöntem kullandığımı bildiren bir uyarıya ihtiyacım var, bu yüzden lütfen çalışma zamanı sürüm kontrolü yapın.
Mümkün mü?
Bağlantı için teşekkür ederiz, derhal bir derleme süresi hatası almak için derleme API düzeyini istediğiniz bir taneye çevirmeniz gerekiyor. Muhtemelen benim soru açık değildi, ben bunu rafine edeceğim, ama temel olarak, API 21'in bir hedef android versiyonu olarak kullanılmasına rağmen, API 15 için geriye doğru uyumluluğunu sürdürmek istiyorum. Ve API 15'in üzerinde herhangi bir yöntem kullanmaya çalıştığımda IDE desteği almak istiyorum. Bu, tanımlanmış minimum android sürümde bulunmayan bir yöntem kullandığımı söyleyen bir uyarıya ihtiyacım var demektir. çalışma zamanı sürümü kontrolü. Mümkün mü? –
Cevabı güncellendi. Bunu gerçekleştirmek için Xamarin stüdyosunda ayarlarınızı değiştirebilirsiniz. –
tatlı, tam olarak ihtiyacım olan şey bu. Burada komik bir şey, bir redline ile hata (hata seçtim) olarak işaretlenmiş, ancak yapıyı (ve tabii ki kazayı) çalıştırmama izin vermesidir. Ama yine de, bu gelişme sırasında bu tür sorunları tespit etmek için zaten yeterli. –