ในบทความนี้ เราจะดูคำถามสัมภาษณ์เกี่ยวกับ Android ที่ถูกถามบ่อยที่สุด อาชีพของนักพัฒนาแอพพลิเคชั่น Android เป็นที่ต้องการสูง คำถามต่อไปนี้เป็นเรื่องปกติในการสัมภาษณ์นักพัฒนา Android ระดับกลางและระดับเริ่มต้น มีลักษณะเรียบง่าย และเหมาะสำหรับการทบทวนและฝึกฝนก่อนไปสัมภาษณ์ Android
คำถามที่ 1: อะไรคือความแตกต่างระหว่างรูปภาพ PNG ปกติและ 9-แพทช์?
นี่เป็นหนึ่งในคำถามสัมภาษณ์ Android ที่ได้รับความนิยมมากที่สุด มันถูกถามสำหรับนักพัฒนาที่มีประสบการณ์ 1-2 ถึง 5 ปี คำตอบก็คือว่าเป็นทรัพยากรบิตแมปที่ปรับขนาดได้ซึ่งสามารถใช้สำหรับพื้นหลังหรือรูปภาพอื่นๆ บนอุปกรณ์ได้ คลาส
NinePatchมอบความสามารถในการเรนเดอร์รูปภาพในเก้าพื้นที่ นามสกุลของรูปภาพดังกล่าวคือ.
9.png สามารถขยายได้เก้าวิธี: 4 มุมไม่ถูกปรับขนาด, 4 ขอบจะถูกปรับขนาดตามแกนเดียว และพื้นที่ตรงกลางจะถูกปรับขนาดตามแกนทั้งสอง
คำถามที่ 2: การแจ้งเตือน ANR ใน Android คืออะไร
ANRย่อมาจาก Application Not
Responding ระบบที่ทำงานบนระบบปฏิบัติการ Android จะแสดงกล่องโต้ตอบนี้หากแอปพลิเคชันกำลังทำงานที่ใช้ทรัพยากรมากในเธรดหลัก และยังคงไม่ตอบสนองเป็นระยะเวลานาน
คำถามที่ 3: เมธอด onResume() จะถูกเรียกเมื่อใด
วิธีการ
onResume()
เป็นหนึ่งในวิธีวงจรชีวิตของกิจกรรม มันถูกเรียกเมื่อมีกิจกรรมมาเบื้องหน้า คุณสามารถแทนที่วิธีการนี้ในกิจกรรมของคุณเพื่อรันโค้ดเมื่อกิจกรรมเริ่มต้น เริ่มใหม่ หรือมาถึงเบื้องหน้า นี่คือแผนภาพที่ชัดเจนซึ่งอธิบายลำดับการดำเนินการของวิธีการโทรกลับต่างๆ ใน Android รวมถึง
onResume()
:
คำถามที่ 4: อะไรคือความแตกต่างระหว่างเจตนาโดยนัยและเจตนาชัดแจ้ง?
เจตนาหรือเจตนาโดยทั่วไปหมายถึงข้อความที่ส่งระหว่างส่วนประกอบ (กิจกรรม บริการ เครื่องรับการออกอากาศ ผู้ให้บริการเนื้อหา
) เจตนามีสองประเภท: โดย
นัยและ
ชัดเจน เรามาดูกันว่าความแตกต่างของพวกเขาคืออะไร
1) โดยนัย: เจตนาโดยนัยคือการเรียกเจตนาของระบบเริ่มต้น เช่น การส่งอีเมล SMS การกดหมายเลขโทรศัพท์ ตัวอย่างเช่น
Intent sendIntent = new Intent();
sendIntent.setAction(Intent.ACTION_SEND);
sendIntent.putExtra(Intent.EXTRA_TEXT, textMessage);
sendIntent.setType("text/plain")
startactivity(sendIntent);
2) ชัดเจน: เจตนาที่ชัดเจนใช้เพื่อย้ายจากกิจกรรมหนึ่งไปยังอีกกิจกรรมหนึ่ง เช่น จากกิจกรรมหนึ่ง
first
ไปอีกกิจกรรมหนึ่ง
second
:
Intent intent = new Intent(first.this, second.class);
startactivity(intent);
คุณสามารถเรียนรู้เพิ่มเติมเกี่ยวกับเจตนาที่ชัดเจนและโดยนัยได้ในหนังสือ
บทนำสู่การพัฒนา Android โดย John Sonmez
คำถามที่ 5: รูปแบบ APK คืออะไร
ไฟล์
APKเป็นไฟล์บีบอัด
AndroidManifest.XML
ที่มีนามสกุล
.apk
. ประกอบด้วยโค้ดแอปพลิเคชัน (ไฟล์ .dex) ไฟล์ทรัพยากร และไฟล์อื่นๆ ที่บีบอัดเป็นไฟล์เดียว
คำถามที่ 6: Dalvik Virtual Machine คืออะไร
เช่นเดียวกับแอปพลิเคชัน Java ที่ทำงานบน
Oracle HotSpot JVMหรือ
Azul JVMแอปพลิเคชัน Android จะทำงานบน
Dalvik Virtual Machine (DVM ) โดยพื้นฐานแล้ว มันเป็นอะนาล็อกของเครื่อง Java ที่พัฒนาโดย Google และได้รับการปรับให้เหมาะสม การทำงานร่วมกับโปรเซสเซอร์
RISC
คำถามที่ 7: แอปพลิเคชัน Android ทำงานบนอุปกรณ์มือถือที่ใช้ระบบปฏิบัติการ Android ได้อย่างไร
เนื่องจากแอปพลิเคชัน Android ส่วนใหญ่มักเขียนโค้ดใน Java จึงมีการคอมไพล์ก่อนแล้วจึงดำเนินการ แต่เครื่องเสมือนที่สร้างโค้ดไบต์นั้นแตกต่างจาก JVM มาตรฐาน เครื่องเสมือน Dalvik ใช้เพื่อเรียกใช้แอปพลิเคชัน Android
GO TO FULL VERSION