01 มกราคม 2558

[Android Dev Tips] การ Export ไฟล์ APK บน Android Studio เพื่อนำไป Upload ขึ้น Play Store



        หลังจากที่เขียนแอพฯเสร็จแล้ว และพร้อมที่จะส่งขึ้น Google Play Store จะต้องใช้ไฟล์แอพฯที่มาจากการ Export เท่านั้น โดยไม่สามารถนำไฟล์ที่เกิดจากการคอมไพล์เพื่อทดสอบมาใช้แทนได้ (เรียกว่า Debug)

        ซึ่งเจ้าของบล็อกก็เคยทำบทความไว้นานแสนนานแล้วสำหรับ Eclipse ADT [Android Dev Tips] การ Export ไฟล์ APK บน Eclipse ADT เพื่อนำไป Upload ขึ้น Play Store คราวนี้ก็ขอทำบทความสำหรับ Android Studio กันบ้าง จะได้ไม่น้อยใจกัน

        สำหรับขั้นตอนนั้นจะมีอยู่สองขั้นตอนหลักๆคือ

        • สร้าง Keystore ในกรณีที่พึ่งเคย Export ครั้งแรก (ถ้ามีแล้วก็ข้ามไป)
        • Export เป็นไฟล์ APK


สร้าง Keystore 

        ในการ Export แอพฯทุกๆครั้งจะต้องใช้ไฟล์ที่เรียกกันว่า Keystore ที่เป็นเสมือนบัตรประจำตัวของนักพัฒนา แต่มีกี่ใบก็ได้ (ใช้ให้ถูกใบก็พอ) โดยขั้นตอนการ Export นั้นจะนำข้อมูลที่อยู่ใน Keystore ฝังลงไปด้วยในไฟล์ APK นั้นๆ จึงทำให้รู้ได้ว่า APK ตัวนั้นๆเป็นของใครนั่นเอง

        และถ้ายังไม่มี Keystore ก็สามารถสร้างจาก Android Studio ได้ตามขั้นตอนดังนี้

        • เลือกไปที่ Build > Generate Signed APK...



        • จะมีหน้าต่าง Generate Signed APK Wizard แสดงขึ้นมา ให้กดปุ่ม Create new... เพื่อทำการสร้าง Keystore



        • หน้าต่าง New Key Store จะแสดงขึ้นมาเพื่อให้ใส่ข้อมูลสำหรับ Keystore ที่จะสร้าง


        Key store path - Path ที่จะเก็บไฟล์ Keystore ที่สร้างขึ้นมา
        Password - รหัสผ่านหลักของ Keystore ตัวนี้ (ใส่รหัสยืนยันอีกครั้งในช่อง Confirm ที่อยู่ต่อท้าย)
        Key - ในนี้จะเป็นข้อมูลของนักพัฒนาแต่ละคนที่อยู่ใน Keystore นั่นหมายความว่า Keystore หนึ่งตัวสามารถมี Key ได้หลายๆตัวสำหรับนักพัฒนาหลายๆคนที่ใช้งานร่วมกัน
        Alias - Username ของเจ้าของ Key นั้นๆ ไม่ใช่ชื่อจริง
        Password - รหัสผ่านสำหรับ Key หรือ Alias นั้นๆ (ใส่รหัสยืนยันอีกครั้งในช่อง Confirm ที่อยู่ต่อท้าย)
        Validity (years) - ระยะเวลาของ Key ตัวนี้ ใส่กี่ปีก็ได้ แนะนำให้เป็น 25 ปีขึ้นไป
        First and Last Name - ชื่อและนามสกุลของนักพัฒนา
        Organizational Unit - หน่วยงาน
        Organization - บริษัทหรือองค์กร
        City or Locality - เมือง/ตำบล
        State or Province - รัฐ/จังหวัด
        Country Code (XX) - รหัสประเทศ (ประเทศไทยใช้ 66)

        กรอกข้อมูลให้เรียบร้อยแล้วกดปุ่ม OK


        • รอซักพักจนหน้าต่างหายไป ให้เปิดดูที่ Path ที่ได้กำหนดไว้ก็จะเห็นไฟล์ Keystore ที่สร้างขึ้นมา ให้ใช้ไฟล์ดังกล่าวนี้ในการ Export ทุกครั้ง



        ในกรณีที่อัพเดทแอพเวอร์ชันใหม่ก็จะต้องใช้ Keystore ตัวเดิม และไม่แนะนำให้สร้าง Keystore ไว้หลายอันสำหรับหลายๆแอพฯ เพราะอาจจะทำให้สับสนได้ง่าย

        สามารถศึกษาข้อมูลเกี่ยวกับ Keystore เพิ่มเติมได้ที่ [Android Dev Tips] Debug Keystore และ Signed Keystore คืออะไร? ต่างกันอย่างไร?


Export เป็นไฟล์ APK

        APK ที่ได้จากการ Export นั้นจะต่างจากตอน Debug เพราะว่าไฟล์ Keystore เป็นไฟล์ของผู้ที่หลงเข้ามาอ่านเอง ซึ่งจะเรียกว่า Signed Keystore ส่วนตอนที่ Debug นั้นจะใช้ Keystore ที่ Android SDK สร้างขึ้นมาให้ ซึ่งเรียกว่า Debug Keystore ดังนั้น Google Play Store จึงสามารถตรวจสอบได้ว่า APK นั้นสร้างขึ้นมาจาก Signed Keystore หรือไม่

        สำหรับการ Export ไฟล์ APK จะมีขั้นตอนดังนี้

        • เลือกไปที่ Build > Generate Signed APK...



        • ให้กดที่ปุ่ม Choose existing แล้วเลือก Keystore ที่ได้สร้างเตรียมไว้




        • จากนั้นก็ใส่รหัสของ Keystore, ชื่อ Key และรหัสของ Key ให้เรียบร้อย แล้วกดปุ่ม Next



        • หน้าต่อมาจะเป็นการกำหนดเกี่ยวกับไฟล์ APK


        APK Destination Folder - เลือก Path สำหรับเก็บไฟล์ APK ที่ได้
        Build Type - เลือกรูปแบบการ Export ถ้ายังมือใหม่ให้เลือก release ไป

        เมื่อกำหนดเสร็จแล้วให้กดปุ่ม Finish


        • รอโปรแกรมทำการ Export เสร็จ ก็จะมีหน้าต่างแจ้งขึ้นมา


        จะเลือก Show in Explorer เพื่อเปิดหน้าต่างดูไฟล์ APK ก็ได้หรือจะกดปุ่ม Close เพื่อปิดหน้าต่างก็ได้

        • เพียงเท่านี้ก็จะได้ไฟล์ APK ที่พร้อมจะเอาขึ้น Google Play Store แล้ว



        เพิ่มเติม - ตอนที่เลือก Build Type จะมาจากการกำหนดไว้ใน Gradle ซึ่งผู้ที่หลงเข้ามาอ่านที่เป็นมือใหม่นั้นไม่จำเป็นต้องกำหนดอะไร ให้ใช้ค่าเริ่มต้นไปก่อน

        สำหรับใน Gradle นั้นสามารถตั้งค่าการ Export ได้และสามารถกำหนดแยกเป็น Build Type ต่างๆตามต้องการได้นั่นเอง


        ซึ่งผู้ที่หลงเข้ามาอ่านสามารถสร้าง Build Type ต่างๆขึ้นมาเพื่อ Export ไฟล์ APK ในแบบที่แตกต่างกันออกไปได้นั่นเอง


        เมื่อได้ไฟล์ APK แล้ว แต่ยังไม่รู้วิธีนำขึ้น Google Play Store ให้ดูต่อที่บทความนี้เลย [Android Dev Tips] การส่ง APK ขึ้น Google Play


บทความที่เกี่ยวข้อง

        • อยากจะเอา APK ขึ้น Google Play ต้องทำยังไง?
        • การส่ง APK ขึ้น Google Play
        • การ Export ไฟล์ APK บน Eclipse ADT เพื่อนำไป Upload ขึ้น Play Store
        • การ Export ไฟล์ APK บน Android Studio เพื่อนำไป Upload ขึ้น Play Store




เหล่าพันธมิตรแอนดรอยด์

Devahoy Layer Net NuuNeoI The Cheese Factory Somkiat CC Mart Routine Artit-K Arnondora Kamonway Try to be android developer Oatrice Benz Nest Studios Kotchaphan@Medium Jirawatee@Medium Travispea@Medium