ต่อไปนี้เป็นการสาธิตวิธีสร้างโทเค็นโดยใช้ WeChat SDK โดยตรงใน Android นี่อาจเป็นงานที่ยากอย่างน่าประหลาดใจ เนื่องจากมีเอกสารและตัวอย่างโค้ดออนไลน์น้อยมาก เอกสารส่วนใหญ่เกี่ยวกับ WeChat เป็นภาษาจีน ซึ่งทำให้การแก้ไขจุดบกพร่องทำได้ยากมากหากคุณพบปัญหาใดๆ WeChat จะไม่ตอบสนองหากคุณมีการกำหนดค่าที่ไม่ดี เหลือให้ Google เพียงเล็กน้อย
นี่เป็นการสาธิตแบบง่ายสำหรับการเข้าสู่ระบบเท่านั้น ต่อไปนี้เป็นการสาธิตฟีเจอร์ WeChat ส่วนใหญ่ (ทั้งหมด) ที่ครอบคลุมมากขึ้นซึ่งช่วยให้ฉันเข้าใจการเข้าสู่ระบบได้มาก: https://github.com/cihm/WeChatDemo
ลิงก์ไปยังบทความที่ฉันเขียนเกี่ยวกับประสบการณ์นี้: http://aaronbruckner.com/article_weChat.html
หากต้องการใช้ WeChat คุณต้องเป็นนักพัฒนาที่ลงทะเบียน ไปที่ https://open.weixin.qq.com ฉันจะไม่บันทึกสิ่งนี้เนื่องจากฉันไม่ได้ผ่านกระบวนการเป็นการส่วนตัว คุณจะต้องสร้างแอปพลิเคชันบนมือถือซึ่งคุณจะต้องกรอกรายละเอียดบางอย่างเกี่ยวกับแอปพลิเคชันที่คุณกำลังสร้างซึ่งจะโต้ตอบกับ WeChat จากการอ่านออนไลน์ ดูเหมือนว่าคุณจะถูกบล็อกที่นี่ หากคุณไม่มีหมายเลขโทรศัพท์จีนที่จะส่งรหัสยืนยันไปให้
เมื่อส่งและยอมรับแล้ว คุณจะมีแอปพลิเคชันมือถือ WeChat ที่ลงทะเบียนแล้วพร้อมรหัสแอป WeChat รหัสแอปมีความสำคัญเนื่องจากเป็นวิธีที่ WeChat ระบุแอปพลิเคชันที่ขออนุญาต
ฉันไม่พบการนำเข้า gradle สำหรับ WeChat SDK เว็บไซต์อย่างเป็นทางการของพวกเขาให้คำแนะนำเกี่ยวกับวิธีนำเข้า SDK ลงในโฟลเดอร์ libs ของแอปพลิเคชันของคุณ http://dev.wechat.com/wechatapi/installguide
คุณต้องระบุชื่อแพ็คเกจและลายเซ็นที่ถูกต้องให้กับ WeChat สำหรับแอปพลิเคชันการพัฒนาที่คุณจะใช้เพื่อเรียกใช้ WeChat ผ่านทาง SDK สามารถตั้งค่าได้ในพอร์ทัลการพัฒนาที่ https://open.weixin.qq.com สำหรับชื่อแพ็คเกจ ให้ใช้ชื่อแพ็คเกจจากรายการของคุณ
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.company.your.package.name">
...
</manifest>
สำหรับลายเซ็น ให้ใช้แฮช MD5 ของคีย์ที่ใช้ในการลงนาม APK ที่เผยแพร่ของคุณ วิธีที่ง่ายที่สุดในการทำเช่นนี้คือการตั้งค่าลายเซ็นเพื่อใช้สำหรับบิลด์การดีบัก/รีลีสของคุณเสมอ หากคุณมีที่เก็บคีย์ Java ที่เก็บคีย์การลงนามภายในโปรเจ็กต์ของคุณ คุณสามารถเพิ่มสิ่งต่อไปนี้ลงในไฟล์ Gradle ของแอปเพื่อลงนามรุ่นการแก้ไขจุดบกพร่องของคุณด้วยลายเซ็นคงที่:
android {
...
// Keystore located in root project folder. Google can show many examples on how to generate keystores with signatures
signingConfigs {
debug {
storeFile file('keystore.jks')
storePassword 'password'
keyAlias 'weChatDebug'
keyPassword 'password'
}
}
...
}
หากคุณไม่ได้ใช้ชุดคีย์ในการลงนามบิลด์การแก้ไขข้อบกพร่อง android studio จะลงนาม dev APK ของคุณโดยอัตโนมัติ ในการพิจารณาว่าลายเซ็น MD5 ใดที่จะมอบให้กับ WeChat ฉันพบว่าบทความนี้มีประโยชน์: http://blog.sanuker.com/?p=691 มีลิงก์ไปยังแอปจีนที่ดึงแฮช MD5 ของคุณสำหรับแอปพลิเคชันที่ให้มา: https://github.com/mike623/cordova-WeChat-meteor-sharing/blob/master/README.md
คำเตือน นี่คือลิงก์แบบสุ่มที่ฉันพบบนอินเทอร์เน็ต ไม่มีการสัญญาใดๆ เนื่องจากฉันไม่มีส่วนเกี่ยวข้องกับซอฟต์แวร์
หากคุณใช้แอปพลิเคชัน เมื่อคุณเรียกใช้ ให้ระบุชื่อแพ็กเกจของคุณในช่องข้อความแรก การคลิกปุ่มแรกจะแสดง MD5 สำหรับแอปของคุณในช่องข้อความที่สอง วางสิ่งนี้ลงใน WeChat
ในที่สุดเมื่อคุณได้รับโทเค็นจาก WeChat มันเป็นรหัสที่คุณต้องแลกเป็นโทเค็นการเข้าถึงโดยใช้รหัสแอปและความลับของคุณ ความลับสามารถพบได้ในพอร์ทัลนักพัฒนา WeChat เพื่อให้การแลกเปลี่ยนเสร็จสมบูรณ์ เพียงเรียก WeChat API เพียงอย่างเดียว
การเรียก API: https://api.wechat.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code ข้อมูลเพิ่มเติม: http://admin.wechat.com/wiki/index.php?title=User_Profile_via_Web . เลื่อนลงไปที่ "รับโทเค็นการเข้าถึงด้วยรหัส"
เมื่อทุกอย่างถูกจัดเรียงแล้ว ก็จำเป็นต้องใช้โค้ดเพียงเล็กน้อยในการสร้างโทเค็น อย่างไรก็ตาม หากมีสิ่งใดไม่ถูกต้อง คุณจะไม่มีทางเห็นการเปลี่ยนไปใช้ WeChat ความล้มเหลวในการโหลด WeChat หากมีการเปลี่ยนแปลงเกิดขึ้น หรือไม่มีการตอบกลับจาก WeChat หลังจากที่คุณให้สิทธิ์การเข้าถึงแก่แอปพลิเคชันของคุณ
คุณสามารถใช้โค้ดใดๆ จากตัวอย่างนี้ได้อย่างอิสระ แต่คุณต้องยอมรับความเสี่ยงเอง! WeChat ใช้งานยากมาก
หมายเหตุ: ฉันไม่สามารถตอบคำถามใด ๆ เกี่ยวกับ WeChat ได้ มันนานเกินไปและรอยแผลเป็นเกินกว่าจะมองอีกครั้ง
ขอให้โชคดี!