ปัญหาเกี่ยวกับทรัพยากรไลบรารีคลาส android หลังจากอัปเดต xamarin

หลังจากอัปเดตเป็นเวอร์ชันใหม่ล่าสุดจาก xamarin ฉันประสบปัญหาบางอย่างเกี่ยวกับทรัพยากร

เรามีไลบรารีคลาส Android ซึ่งประกอบด้วยฟีเจอร์หลักของแอป Android เช่น กิจกรรม ทรัพยากรของ Android (ไอคอนเริ่มต้น เป็นต้น)

สิ่งนี้ถูกอ้างอิงโดยโปรเจ็กต์ Android หลายโปรเจ็กต์ แต่ละโปรเจ็กต์มีทรัพยากร Android ของตัวเอง เช่น ไอคอน สาเหตุนี้เกิดจากการที่เราขายอินสแตนซ์ที่แตกต่างกันของแอปเดียวกัน เฉพาะกราฟิกทรัพยากรเท่านั้นที่แตกต่างกัน

เมื่อสร้างแอปพลิเคชัน Android จะใช้ทรัพยากรจากไลบรารีคลาส Android ไม่ใช่ทรัพยากรของตัวเอง

ก่อนหน้านี้แอป Android จะใช้ทรัพยากรของตัวเองดังนั้นฉันจึงไม่แน่ใจว่าตอนนี้มีอะไรแตกต่างออกไป

เราใช้การตั้งค่าเดียวกันสำหรับ iOS และใช้งานได้เหมือนก่อนหน้านี้


person Bjarke    schedule 08.05.2015    source แหล่งที่มา


คำตอบ (1)


หากคุณดูที่ด้านบนสุดของฟอรัม Xamarin โดยเฉพาะในส่วน Android คุณจะ ค้นหาโพสต์ที่กล่าวถึงการเปลี่ยนแปลงและปัญหาที่ทราบมากมาย นอกจากนี้ยังมีคำอธิบายอยู่ในบันทึกประจำรุ่น

วิธีแก้ปัญหาชั่วคราวในขณะนี้คือการหลีกเลี่ยงการใช้ชื่อทรัพยากรเดียวกันทั้งในไลบรารีและแอปพลิเคชัน ดู Xamarin Bugzilla 29326

person Cheesebaron    schedule 08.05.2015
comment
ขอบคุณมากสำหรับการตอบกลับอย่างรวดเร็ว - ฉันกำลังดูรายงานข้อผิดพลาดอยู่ในขณะนี้ แต่ฉันไม่แน่ใจว่าฉันเข้าใจวิธีแก้ปัญหา - วิธีแก้ปัญหา ณ จุดนี้คือการหลีกเลี่ยงการใช้คีย์สตริงเดียวกันกับที่ใช้ในแพ็คเกจ Nuget ในกรณีนี้คีย์คือ ApplicationName - - person Bjarke; 08.05.2015
comment
เป็นอะไรหรือเปล่า ไม่เข้าใจ? - person Cheesebaron; 08.05.2015
comment
ในไลบรารีคลาส Android ของฉันฉันใช้ทรัพยากร Android ชื่อ logo.png ซึ่งถูกเพิ่มลงในแพ็คเกจ nuget ‹file src=..\MissionsApp.App.Droid\Resources\drawable-hdpi\logo.png target=content\MonoAndroid\Resources \drawable-hdpi\logo.png /› หากจำเป็นต้องใช้โลโก้เฉพาะในแอป logo.png ใหม่จะถูกเพิ่มเข้าไปใน Drawable ในโปรเจ็กต์ Android ฉันจะใช้ชื่อที่แตกต่างกันสำหรับโลโก้ในไลบรารีและในแอปพลิเคชันได้อย่างไร ฉันชื่อมันหรือเปล่า ไม่งั้นจะไม่พบ logo.png - person Bjarke; 08.05.2015
comment
นี่ไม่ได้ตอบคำถามของฉันเกี่ยวกับสิ่งที่คุณไม่เข้าใจ - person Cheesebaron; 08.05.2015
comment
นั่นคือสิ่งที่ใช้ไม่ได้ในตอนนี้! ดังนั้นคุณไม่สามารถทำอย่างนั้นได้ วิธีแก้ปัญหาคืออย่าใช้ชื่อเดียวกันทั้งใน nuget และแอปพลิเคชัน ดังนั้นคุณต้องจัดการกับเรื่องนั้น - person Cheesebaron; 08.05.2015
comment
โอเค ฉันเข้าใจ มันแย่มาก ไม่รู้จะจัดการยังไง แต่ฉันจะหาวิธีแก้ไข ทักสกัลดูมี - person Bjarke; 08.05.2015