เราเปิด แก้ไข และจัดทำแพ็กเกจแอปพลิเคชัน Android คำแนะนำการใช้งานโปรแกรม Lucky Patcher วิธีประกอบ mod ด้วยลายเซ็นต้นฉบับ

💖 ชอบไหม?แชร์ลิงก์กับเพื่อนของคุณ

บางครั้งแอปพลิเคชั่นบางตัวบน Android ไม่เหมาะกับผู้ใช้ในทางใดทางหนึ่ง ตัวอย่างคือการโฆษณาที่ล่วงล้ำ และมันก็เกิดขึ้นด้วยว่าโปรแกรมนี้ดีสำหรับทุกคน แต่การแปลในนั้นคดหรือขาดไปโดยสิ้นเชิง หรือตัวอย่างเช่น โปรแกรมนี้เป็นรุ่นทดลอง แต่ไม่มีวิธีรับเวอร์ชันเต็ม จะเปลี่ยนสถานการณ์ได้อย่างไร?

การแนะนำ

ในบทความนี้เราจะพูดถึงวิธีแยกแพ็คเกจ APK ด้วยแอปพลิเคชันดูโครงสร้างภายในแยกส่วนและถอดรหัสไบต์และพยายามทำการเปลี่ยนแปลงหลายอย่างในแอปพลิเคชันที่สามารถให้ประโยชน์แก่เราอย่างใดอย่างหนึ่ง

ในการทำทั้งหมดนี้ด้วยตัวเอง คุณจะต้องมีความรู้พื้นฐานอย่างน้อยเกี่ยวกับภาษา Java ที่ใช้เขียนแอปพลิเคชัน Android และภาษา XML ซึ่งใช้ทุกที่ใน Android จากการอธิบายแอปพลิเคชันและสิทธิ์การเข้าถึงไปจนถึงการจัดเก็บสตริงที่ จะแสดงบนหน้าจอ คุณจะต้องมีความสามารถในการใช้ซอฟต์แวร์คอนโซลพิเศษด้วย

ดังนั้นแพ็คเกจ APK ที่แจกจ่ายซอฟต์แวร์ Android ทั้งหมดคืออะไร?

การถอดรหัสแอปพลิเคชัน

ในบทความนี้ เราทำงานกับโค้ดแอปพลิเคชันแบบแยกส่วนเท่านั้น แต่หากมีการเปลี่ยนแปลงที่ร้ายแรงยิ่งขึ้นกับแอปพลิเคชันขนาดใหญ่ การทำความเข้าใจโค้ด smali จะยากขึ้นมาก โชคดีที่เราสามารถถอดรหัสโค้ด dex ให้เป็นโค้ด Java ได้ ซึ่งแม้ว่าจะไม่ใช่ต้นฉบับและไม่ได้คอมไพล์กลับ แต่ก็อ่านและเข้าใจตรรกะของแอปพลิเคชันได้ง่ายกว่ามาก ในการทำเช่นนี้ เราจะต้องมีเครื่องมือสองอย่าง:

  • dex2jar เป็นตัวแปล Dalvik bytecode ไปเป็น JVM bytecode ซึ่งเราสามารถรับโค้ดในภาษา Java ได้
  • jd-gui เป็นตัวถอดรหัสที่ช่วยให้คุณรับโค้ด Java ที่อ่านได้จาก JVM bytecode คุณสามารถใช้ Jad (www.varaneckas.com/jad) แทนได้ แม้ว่าจะค่อนข้างเก่า แต่ในบางกรณีก็สร้างโค้ดที่อ่านได้ง่ายกว่า Jd-gui

นี่คือวิธีที่ควรใช้ ขั้นแรก เราเปิดตัว dex2jar โดยระบุเส้นทางไปยังแพ็คเกจ APK เป็นอาร์กิวเมนต์:

% dex2jar.sh เมล apk

ด้วยเหตุนี้ แพ็กเกจ Java mail.jar จะปรากฏในไดเร็กทอรีปัจจุบัน ซึ่งสามารถเปิดใน jd-gui เพื่อดูโค้ด Java ได้

การจัดเรียงแพ็คเกจ APK และรับ

แพ็คเกจแอป Android นั้นเป็นไฟล์ ZIP ทั่วไปที่ไม่ต้องใช้เครื่องมือพิเศษใดๆ ในการดูเนื้อหาหรือแตกไฟล์ ก็เพียงพอแล้วที่จะมีผู้จัดเก็บ - 7zip สำหรับ Windows หรือคลายซิปคอนโซลบน Linux แต่นั่นก็เกี่ยวกับกระดาษห่อหุ้ม อะไรอยู่ข้างใน? โดยทั่วไปแล้ว เรามีโครงสร้างภายในดังนี้:

  • เมตา-INF/- มีใบรับรองดิจิทัลของแอปพลิเคชัน ระบุผู้สร้าง และการตรวจสอบไฟล์แพ็คเกจ
  • res/ - ทรัพยากรต่างๆ ที่แอปพลิเคชันใช้ในการทำงาน เช่น รูปภาพ คำอธิบายอินเทอร์เฟซ ตลอดจนข้อมูลอื่น ๆ
  • AndroidManifest.xml- คำอธิบายของแอปพลิเคชัน ซึ่งรวมถึงรายการสิทธิ์ที่จำเป็น เวอร์ชัน Android ที่จำเป็น และความละเอียดหน้าจอที่ต้องการ
  • คลาส.dex- รวบรวมโค้ดไบต์ของแอปพลิเคชันสำหรับเครื่องเสมือน Dalvik
  • ทรัพยากร.arsc- รวมถึงทรัพยากร แต่เป็นประเภทที่แตกต่างกัน - โดยเฉพาะสตริง (ใช่ ไฟล์นี้สามารถใช้สำหรับ Russification ได้!)

ไฟล์และไดเร็กทอรีที่อยู่ในรายการอาจอยู่ใน APK ส่วนใหญ่หากไม่ใช่ทั้งหมด อย่างไรก็ตาม มีไฟล์/ไดเร็กทอรีที่ไม่ธรรมดาอีกสองสามรายการที่ควรค่าแก่การกล่าวถึง:

  • สินทรัพย์- อะนาล็อกของทรัพยากร ข้อแตกต่างที่สำคัญคือในการเข้าถึงทรัพยากร คุณต้องทราบตัวระบุ แต่สามารถรับรายการสินทรัพย์แบบไดนามิกได้โดยใช้เมธอด AssetManager.list() ในโค้ดแอปพลิเคชัน
  • lib- ไลบรารี Linux ดั้งเดิมที่เขียนโดยใช้ NDK (Native Development Kit)

ไดเร็กทอรีนี้ถูกใช้โดยผู้ผลิตเกมที่วางเอ็นจิ้นเกมของตนเขียนด้วย C/C++ อยู่ที่นั่น เช่นเดียวกับผู้สร้างแอปพลิเคชันประสิทธิภาพสูง (เช่น Google Chrome) เราค้นพบอุปกรณ์ แต่คุณจะได้รับไฟล์แพ็คเกจของแอปพลิเคชันที่คุณสนใจได้อย่างไร เนื่องจากเป็นไปไม่ได้ที่จะรับไฟล์ APK จากอุปกรณ์ที่ไม่มีรูท (อยู่ในไดเร็กทอรี /data/app) และไม่แนะนำให้ทำการรูทเสมอไป จึงมีอย่างน้อยสามวิธีในการรับไฟล์แอปพลิเคชันไปยังคอมพิวเตอร์ของคุณ:

  • ส่วนขยาย APK Downloader สำหรับ Chrome;
  • แอป APK Leecher จริง;
  • การโฮสต์ไฟล์ต่างๆ และ Varezniks

จะใช้อันไหนเป็นเรื่องของรสนิยม เราต้องการใช้แอปพลิเคชันแยกกัน ดังนั้นเราจะอธิบายการใช้งาน Real APK Leecher โดยเฉพาะอย่างยิ่งเมื่อเขียนด้วยภาษา Java และดังนั้นจึงใช้งานได้กับ Windows หรือ Nix

หลังจากเริ่มโปรแกรม คุณจะต้องกรอกข้อมูลในสามฟิลด์: อีเมล รหัสผ่าน และรหัสอุปกรณ์ - และเลือกภาษา สองรายการแรกคืออีเมลและรหัสผ่านของบัญชี Google ที่คุณใช้บนอุปกรณ์ ตัวที่สามคือตัวระบุอุปกรณ์และสามารถรับได้โดยการพิมพ์รหัสบนตัวเรียกเลขหมาย # #8255## จากนั้นจึงค้นหาบรรทัด Device ID เมื่อกรอก คุณจะต้องป้อน ID โดยไม่ต้องใส่คำนำหน้า android

หลังจากกรอกและบันทึกแล้ว ข้อความ “ข้อผิดพลาดขณะเชื่อมต่อกับเซิร์ฟเวอร์” มักจะปรากฏขึ้น มันไม่เกี่ยวอะไรกับ Google Play ดังนั้นอย่าลังเลที่จะเพิกเฉยและมองหาแพ็คเกจที่คุณสนใจ

ดูและแก้ไข

สมมติว่าคุณพบแพ็คเกจที่คุณสนใจ ดาวน์โหลด แตกไฟล์... และเมื่อคุณพยายามดูไฟล์ XML บางไฟล์ คุณจะประหลาดใจที่พบว่าไฟล์นั้นไม่ใช่ข้อความ จะถอดรหัสมันและวิธีการทำงานกับแพ็คเกจโดยทั่วไปได้อย่างไร? จำเป็นต้องติดตั้ง SDK จริงหรือ? ไม่ ไม่จำเป็นต้องติดตั้ง SDK เลย ในความเป็นจริง ทุกขั้นตอนในการแยก แก้ไข และจัดทำแพ็คเกจ APK ต้องใช้เครื่องมือต่อไปนี้:

  • โปรแกรมเก็บ ZIPสำหรับการแกะและบรรจุ
  • สมาลี- แอสเซมเบลอร์ / แอสเซมเบลอร์เครื่องเสมือน Dalvik (code.google.com/p/smali)
  • เหมาะสม- เครื่องมือสำหรับการบรรจุทรัพยากร (โดยค่าเริ่มต้น ทรัพยากรจะถูกจัดเก็บในรูปแบบไบนารีเพื่อเพิ่มประสิทธิภาพแอปพลิเคชัน) รวมอยู่ใน Android SDK แต่สามารถรับแยกต่างหากได้
  • ผู้ลงนาม- เครื่องมือสำหรับการลงนามแบบดิจิทัลในแพ็คเกจที่แก้ไข (bit.ly/Rmrv4M)

คุณสามารถใช้เครื่องมือเหล่านี้แยกกันได้ แต่จะไม่สะดวกดังนั้นจึงควรใช้ซอฟต์แวร์ระดับสูงกว่าที่สร้างขึ้นบนพื้นฐานของเครื่องมือเหล่านี้ หากคุณทำงานบน Linux หรือ Mac OS X จะมีเครื่องมือชื่อ apktool ช่วยให้คุณสามารถแยกทรัพยากรในรูปแบบดั้งเดิม (รวมถึงไฟล์ XML ไบนารีและ arsc) สร้างแพ็คเกจใหม่ด้วยทรัพยากรที่เปลี่ยนแปลง แต่ไม่ทราบวิธีลงนามแพ็คเกจ ดังนั้นคุณจะต้องเรียกใช้ยูทิลิตี้ผู้ลงนามด้วยตนเอง แม้ว่ายูทิลิตี้นี้จะเขียนด้วยภาษา Java แต่การติดตั้งนั้นค่อนข้างไม่ได้มาตรฐาน ก่อนอื่นคุณต้องได้รับไฟล์ jar เอง:

$ ซีดี /tmp $ wget http://bit.ly/WC3OCz $ tar -xjf apktool1.5.1.tar.bz2

$ wget http://bit.ly/WRjEc7 $ tar -xjf apktool-install-linux-r05-ibot.tar.bz2

$ mv apktool.jar ~/bin $ mv apktool-install-linux-r05-ibot/* ~/bin $ ส่งออก PATH=~/bin:$PATH

หากคุณทำงานบน Windows แสดงว่ามีเครื่องมือที่ยอดเยี่ยมที่เรียกว่า Virtuous Ten Studio ซึ่งรวบรวมเครื่องมือเหล่านี้ทั้งหมด (รวมถึง apktool เอง) แต่แทนที่จะเป็นอินเทอร์เฟซ CLI จะให้อินเทอร์เฟซแบบกราฟิกที่ใช้งานง่ายแก่ผู้ใช้ซึ่งคุณสามารถทำได้ ดำเนินการเพื่อแกะกล่อง การแยกส่วน และการแยกส่วนออกด้วยการคลิกเพียงไม่กี่ครั้ง เครื่องมือนี้เป็น Donation-ware นั่นคือบางครั้งหน้าต่างปรากฏขึ้นเพื่อขอให้คุณได้รับใบอนุญาต แต่ในท้ายที่สุดก็สามารถยอมรับได้ ไม่มีประโยชน์ที่จะอธิบายเพราะคุณสามารถเข้าใจอินเทอร์เฟซได้ภายในไม่กี่นาที แต่ควรพูดคุยถึงรายละเอียดเพิ่มเติมเนื่องจากลักษณะของคอนโซล apktool


มาดูตัวเลือก apktool กัน กล่าวโดยย่อ มีคำสั่งพื้นฐานสามคำสั่ง: d (ถอดรหัส), b (สร้าง) และ if (ติดตั้งเฟรมเวิร์ก) ถ้าทุกอย่างชัดเจนด้วยสองคำสั่งแรก แล้วคำสั่งที่สามแบบมีเงื่อนไขจะทำอย่างไร? โดยจะคลายเฟรมเวิร์ก UI ที่ระบุ ซึ่งจำเป็นในกรณีที่คุณแยกแพ็คเกจระบบใดๆ

ลองดูตัวเลือกที่น่าสนใจที่สุดของคำสั่งแรก:

  • -ส- อย่าแยกไฟล์ dex;
  • -ร- อย่าแกะทรัพยากร
  • -ข- อย่าใส่ข้อมูลการดีบักลงในผลลัพธ์ของการแยกส่วนไฟล์ dex
  • --frame-เส้นทาง- ใช้เฟรมเวิร์ก UI ที่ระบุแทนเฟรมเวิร์กที่สร้างไว้ใน apktool ตอนนี้เรามาดูตัวเลือกสองสามตัวสำหรับคำสั่ง b:
  • -ฉ- บังคับประกอบโดยไม่ตรวจสอบการเปลี่ยนแปลง
  • -ก- ระบุเส้นทางไปยัง aapt (เครื่องมือสำหรับสร้างไฟล์เก็บถาวร APK) หากคุณต้องการใช้จากแหล่งอื่นด้วยเหตุผลบางประการ

การใช้ apktool นั้นง่ายมาก ในการดำเนินการนี้ เพียงระบุคำสั่งใดคำสั่งหนึ่งและเส้นทางไปยัง APK เช่น:

$ apktool และ mail.apk

หลังจากนี้ไฟล์ที่แยกและแยกส่วนของแพ็คเกจทั้งหมดจะปรากฏในไดเร็กทอรีเมล

การตระเตรียม. ปิดการใช้งานการโฆษณา

แน่นอนว่าทฤษฎีนั้นดี แต่ทำไมจึงต้องมีถ้าเราไม่รู้ว่าจะทำอย่างไรกับบรรจุภัณฑ์ที่แกะออกมาแล้ว เรามาลองใช้ทฤษฎีนี้เพื่อประโยชน์ของเรา กล่าวคือ ปรับเปลี่ยนซอฟต์แวร์บางตัวเพื่อไม่ให้แสดงโฆษณาให้เราเห็น ตัวอย่างเช่น ปล่อยให้เป็น Virtual Torch - คบเพลิงเสมือนจริง ซอฟต์แวร์นี้เหมาะสำหรับเรา เนื่องจากมีโฆษณาที่น่ารำคาญเต็มเปี่ยม และยิ่งกว่านั้น ยังเรียบง่ายพอที่จะไม่หลงไปกับโค้ดอันยุ่งเหยิง


ดังนั้นโดยใช้วิธีใดวิธีหนึ่งข้างต้น ให้ดาวน์โหลดแอปพลิเคชันจากตลาด หากคุณตัดสินใจใช้ Virtuous Ten Studio เพียงเปิดไฟล์ APK ในแอปพลิเคชันแล้วแตกไฟล์ สร้างโปรเจ็กต์ (ไฟล์ -> โปรเจ็กต์ใหม่) จากนั้นเลือกนำเข้าไฟล์ในเมนูบริบทของโปรเจ็กต์ หากตัวเลือกของคุณตกอยู่ที่ apktool ให้รันเพียงคำสั่งเดียว:

$ apktool และ com.kauf.particle.virtualtorch.apk

หลังจากนี้ แผนผังไฟล์ที่คล้ายกับที่อธิบายไว้ในส่วนก่อนหน้าจะปรากฏในไดเร็กทอรี com.kauf.particle.virtualtorch แต่มีไดเร็กทอรี smali เพิ่มเติมแทนไฟล์ dex และไฟล์ apktool.yml ไฟล์แรกประกอบด้วยโค้ดที่ถอดประกอบได้ของไฟล์ dex ที่ปฏิบัติการได้ของแอปพลิเคชัน ส่วนไฟล์ที่สองประกอบด้วยข้อมูลบริการที่จำเป็นสำหรับ apktool ในการประกอบแพ็กเกจกลับ

แน่นอนว่าที่แรกที่เราควรดูคือ AndroidManifest.xml และที่นี่เราพบบรรทัดต่อไปนี้ทันที:

เดาได้ไม่ยากว่าเป็นผู้รับผิดชอบในการให้สิทธิ์แอปพลิเคชันในการใช้การเชื่อมต่ออินเทอร์เน็ต ที่จริงแล้ว หากเราเพียงต้องการกำจัดโฆษณา เราก็มักจะต้องบล็อกแอปพลิเคชันจากอินเทอร์เน็ต เรามาลองทำสิ่งนี้กัน เราลบบรรทัดที่ระบุและพยายามสร้างซอฟต์แวร์โดยใช้ apktool:

$ apktool ข com.kauf.particle.virtualtorch

ไฟล์ APK ที่ได้จะปรากฏในไดเร็กทอรี com.kauf.particle.virtualtorch/build/ อย่างไรก็ตาม จะไม่สามารถติดตั้งได้ เนื่องจากไม่มีลายเซ็นดิจิทัลและเช็คซัมไฟล์ (เพียงแต่ไม่มีไดเรกทอรี META-INF/) เราต้องลงนามแพ็คเกจโดยใช้ยูทิลิตี้ apk-signer เปิดตัวแล้ว อินเทอร์เฟซประกอบด้วยสองแท็บ - แท็บแรก (ตัวสร้างคีย์) ที่เราสร้างคีย์ และแท็บที่สอง (APK Signer) ที่เราลงนาม หากต้องการสร้างคีย์ส่วนตัวของเรา ให้กรอกข้อมูลในช่องต่อไปนี้:

  • ไฟล์เป้าหมาย- ไฟล์เอาต์พุตที่เก็บคีย์; โดยปกติจะเก็บกุญแจไว้หนึ่งคู่
  • รหัสผ่านและ ยืนยัน- รหัสผ่านสำหรับจัดเก็บข้อมูล
  • นามแฝง- ชื่อของกุญแจในการจัดเก็บ
  • รหัสผ่านนามแฝงและ ยืนยัน- รหัสผ่านรหัสลับ;
  • ความถูกต้อง- ระยะเวลามีผล (เป็นปี) ค่าเริ่มต้นจะเหมาะสมที่สุด

โดยทั่วไปช่องที่เหลือจะเป็นตัวเลือก - แต่ต้องกรอกอย่างน้อยหนึ่งช่อง


คำเตือน

หากต้องการลงนามแอปพลิเคชันโดยใช้ apk-signer คุณต้องติดตั้ง Android SDK และระบุเส้นทางแบบเต็มในการตั้งค่าแอปพลิเคชัน

ข้อมูลทั้งหมดมีไว้เพื่อวัตถุประสงค์ในการให้ข้อมูลเท่านั้น ทั้งบรรณาธิการและผู้เขียนจะไม่รับผิดชอบต่อความเสียหายใด ๆ ที่อาจเกิดขึ้นจากเนื้อหาในบทความนี้

ตอนนี้คุณสามารถลงนาม APK ด้วยคีย์นี้ได้แล้ว บนแท็บ APK Signer ให้เลือกไฟล์ที่สร้างขึ้นใหม่ ป้อนรหัสผ่าน นามแฝงคีย์ และรหัสผ่าน จากนั้นค้นหาไฟล์ APK แล้วคลิกปุ่ม "ลงชื่อ" อย่างกล้าหาญ หากทุกอย่างเป็นไปด้วยดีจะมีการลงนามแพ็คเกจ

ข้อมูล

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

ลายเซ็นดิจิทัลจำเป็นสำหรับซอฟต์แวร์ของบริษัทอื่นเท่านั้น ดังนั้น หากคุณกำลังแก้ไขแอปพลิเคชันระบบที่ติดตั้งโดยการคัดลอกไปยังไดเร็กทอรี /system/app/ คุณไม่จำเป็นต้องเซ็นลายเซ็นเหล่านั้น

หลังจากนั้น ดาวน์โหลดแพ็คเกจลงในสมาร์ทโฟนของคุณ ติดตั้งและเปิดใช้งาน Voila โฆษณาหายไป! แต่มีข้อความปรากฏว่าเราไม่มีอินเทอร์เน็ตหรือไม่มีสิทธิ์ที่เหมาะสม ตามทฤษฎีแล้ว นี่อาจเพียงพอแล้ว แต่ข้อความดูน่ารำคาญ และบอกตามตรงว่าเราโชคดีกับแอปพลิเคชันโง่ๆ ซอฟต์แวร์ที่เขียนขึ้นตามปกติมักจะชี้แจงข้อมูลประจำตัวของตนให้ชัดเจนหรือตรวจสอบการเชื่อมต่ออินเทอร์เน็ต มิฉะนั้นก็เพียงปฏิเสธที่จะเปิดตัว ในกรณีนี้จะเป็นอย่างไร? แน่นอนแก้ไขโค้ด

โดยทั่วไปแล้ว ผู้เขียนแอปพลิเคชันจะสร้างคลาสพิเศษสำหรับการแสดงโฆษณาและวิธีการเรียกใช้คลาสเหล่านี้เมื่อแอปพลิเคชันหรือ "กิจกรรม" อย่างใดอย่างหนึ่ง (กล่าวง่ายๆ คือ หน้าจอแอปพลิเคชัน) เปิดตัว ลองหาคลาสเหล่านี้ดู เราไปที่ไดเร็กทอรี smali จากนั้น com (org มีเฉพาะไลบรารีกราฟิกแบบเปิด cocos2d) จากนั้น kauf (นี่คือที่ที่มันอยู่เพราะนี่คือชื่อของนักพัฒนาและโค้ดทั้งหมดของเขาอยู่ที่นั่น) - และนี่คือ ไดเร็กทอรีการตลาด ข้างในเราจะพบไฟล์จำนวนหนึ่งที่มีนามสกุล smali เหล่านี้เป็นคลาสและคลาสที่โดดเด่นที่สุดคือคลาส Ad.smali จากชื่อที่ง่ายต่อการเดาว่าเป็นคลาสที่แสดงโฆษณา

เราสามารถเปลี่ยนตรรกะของการดำเนินการได้ แต่จะง่ายกว่ามากในการลบการเรียกไปยังวิธีการใด ๆ ออกจากแอปพลิเคชันเอง ดังนั้นเราจึงออกจากไดเร็กทอรีการตลาดและไปที่ไดเร็กทอรีอนุภาคที่อยู่ติดกัน จากนั้นจึงไปที่ virtualtorch ไฟล์ MainActivity.smali สมควรได้รับความสนใจเป็นพิเศษที่นี่ นี่คือคลาส Android มาตรฐานที่สร้างโดย Android SDK และติดตั้งเป็นจุดเริ่มต้นในแอปพลิเคชัน (คล้ายกับฟังก์ชันหลักใน C) เปิดไฟล์เพื่อแก้ไข

ข้างในมีรหัส smali (ผู้ประกอบท้องถิ่น) มันค่อนข้างน่าสับสนและอ่านยากเนื่องจากมีลักษณะเป็นระดับต่ำ ดังนั้นเราจะไม่ศึกษามัน แต่จะค้นหาการอ้างอิงถึงคลาสโฆษณาทั้งหมดในโค้ดและแสดงความคิดเห็น เราป้อนบรรทัด "โฆษณา" ในการค้นหาและไปที่บรรทัดที่ 25:

โฆษณาส่วนตัวของฟิลด์:Lcom/kauf/marketing/Ad;

ที่นี่ฟิลด์โฆษณาถูกสร้างขึ้นเพื่อจัดเก็บออบเจ็กต์คลาสโฆษณา เราแสดงความคิดเห็นโดยติดเครื่องหมาย ### ไว้หน้าบรรทัด เราทำการค้นหาต่อไป บรรทัด 423:

อินสแตนซ์ใหม่ v3, Lcom/kauf/marketing/Ad;

นี่คือจุดที่การสร้างวัตถุเกิดขึ้น มาแสดงความคิดเห็นกัน เราทำการค้นหาต่อไปและค้นหาในบรรทัด 433, 435, 466, 468, 738, 740, 800 และ 802 การเรียกไปยังเมธอดของคลาสโฆษณา มาแสดงความคิดเห็นกัน ดูเป็นอันนั้นแหละ.. บันทึก. ตอนนี้จำเป็นต้องประกอบแพ็คเกจกลับเข้าด้วยกันและตรวจสอบการทำงานและการมีโฆษณา เพื่อความบริสุทธิ์ของการทดสอบ เราจะส่งคืนบรรทัดที่ลบออกจาก AndroidManifest.xml ประกอบแพ็กเกจ ลงนาม และติดตั้ง

หนูตะเภาของเรา โฆษณาที่มองเห็นได้

อ๊ะ! โฆษณาหายไปเฉพาะในขณะที่แอปพลิเคชันทำงาน แต่ยังคงอยู่ในเมนูหลัก ซึ่งเราจะเห็นเมื่อเราเปิดตัวซอฟต์แวร์ ดังนั้นเดี๋ยวก่อน แต่จุดเริ่มต้นคือคลาส MainActivity และโฆษณาหายไปในขณะที่แอปพลิเคชันกำลังทำงาน แต่ยังคงอยู่ในเมนูหลัก ดังนั้นจุดเริ่มต้นจึงแตกต่างออกไป หากต้องการระบุจุดเริ่มต้นที่แท้จริง ให้เปิดไฟล์ AndroidManifest.xml อีกครั้ง และใช่ มันมีบรรทัดต่อไปนี้:

พวกเขาบอกเรา (และที่สำคัญกว่านั้นคือ android) ว่ากิจกรรมชื่อ Start ควรเปิดตัวเพื่อตอบสนองต่อการสร้างเจตนา (เหตุการณ์) android.intent.action.MAIN จากหมวดหมู่ android.intent.category.LAUNCHER เหตุการณ์นี้สร้างขึ้นเมื่อคุณแตะที่ไอคอนแอปพลิเคชันในตัวเรียกใช้งาน ดังนั้นจึงกำหนดจุดเริ่มต้น ซึ่งก็คือคลาสเริ่มต้น เป็นไปได้มากที่โปรแกรมเมอร์จะเขียนแอปพลิเคชันโดยไม่มีเมนูหลักซึ่งเป็นจุดเริ่มต้นซึ่งเป็นคลาส MainActivity มาตรฐานจากนั้นจึงเพิ่มหน้าต่างใหม่ (กิจกรรม) ที่มีเมนูและอธิบายไว้ในคลาส Start และทำให้เป็นรายการด้วยตนเอง จุด.

เปิดไฟล์ Start.smali และมองหาบรรทัด "โฆษณา" อีกครั้ง เราพบการกล่าวถึงคลาส FirstAd ในบรรทัดที่ 153 และ 155 นอกจากนี้ยังอยู่ในซอร์สโค้ดและเมื่อพิจารณาจากชื่อแล้วจะมีหน้าที่แสดงโฆษณาบนหน้าจอหลัก ลองดูเพิ่มเติม มีการสร้างอินสแตนซ์ของคลาส FirstAd และเจตนาที่เกี่ยวข้องกับอินสแตนซ์นี้ตามบริบท ตามด้วยป้ายกำกับ con_10 ซึ่งเป็นการเปลี่ยนแปลงแบบมีเงื่อนไขซึ่งดำเนินการก่อนสร้างอินสแตนซ์ทุกประการ ของชั้นเรียน:

If-ne p1, v0, :cond_10 .line 74 อินสแตนซ์ใหม่ v0, Landroid/เนื้อหา/เจตนา; ... :cond_10

เป็นไปได้มากว่าโปรแกรมจะสุ่มคำนวณว่าควรแสดงโฆษณาบนหน้าจอหลักหรือไม่ และหากไม่เป็นเช่นนั้น ให้ข้ามไปที่ cond_10 โดยตรง ตกลง มาทำให้งานของเธอง่ายขึ้นและแทนที่การเปลี่ยนแปลงแบบมีเงื่อนไขด้วยการเปลี่ยนแบบไม่มีเงื่อนไข:

#if-ne p1, v0, :cond_10 ไปที่:cond_10

ไม่มีการกล่าวถึง FirstAd ในโค้ดอีกต่อไป ดังนั้นเราจึงปิดไฟล์และประกอบคบเพลิงเสมือนของเราอีกครั้งโดยใช้ apktool คัดลอกไปยังสมาร์ทโฟนของคุณ ติดตั้ง และเปิดใช้งาน Voila โฆษณาทั้งหมดหายไปแล้ว เราขอแสดงความยินดีกับพวกเราทุกคน

ผลลัพธ์

บทความนี้เป็นเพียงการแนะนำสั้น ๆ เกี่ยวกับวิธีการแฮ็กและแก้ไขแอปพลิเคชัน Android ปัญหาหลายประการยังคงอยู่เบื้องหลัง เช่น การลบการป้องกัน การแยกวิเคราะห์โค้ดที่สับสน การแปลและการแทนที่ทรัพยากรแอปพลิเคชัน รวมถึงการแก้ไขแอปพลิเคชันที่เขียนโดยใช้ Android NDK อย่างไรก็ตาม ด้วยความรู้พื้นฐานแล้ว มันก็แค่เรื่องของเวลาที่จะคิดออกทั้งหมด

ตามกฎแล้ว โปรแกรมและเกมส่วนใหญ่จะมีรหัสมาตรฐานเมื่อโต้ตอบกับ Google Market อย่างไรก็ตาม บ่อยครั้งที่เครื่องมือโปรแกรมได้รับการปกป้องอย่างดีจากการเปลี่ยนแปลง เพื่อไม่ให้สับสนและไม่เสียเวลาฉันพบโปรแกรมที่ยอดเยี่ยมชื่อ Lucky Patcher ซึ่งฉันจะพูดถึงการใช้งานโดยละเอียดด้านล่าง

แอป Lucky Patcher จะสแกนอุปกรณ์ของคุณเพื่อหาโปรแกรมทั้งหมดที่คุณติดตั้ง ถัดไป ทำการเรียงลำดับความเป็นไปได้หรือความเป็นไปไม่ได้ของแพตช์ จากนั้นแอปพลิเคชันที่แพตช์มีประโยชน์มากที่สุดจะแสดงขึ้น และข้อมูลจะแสดงที่ด้านบนของรายการ จากนั้นคุณสามารถนำแพทช์นี้ไปใช้กับโปรแกรมที่ต้องการได้ หากสำเร็จคุณจะได้รับใบสมัครที่ลงทะเบียนครบถ้วน

ใน Lucky Patcher เวอร์ชันใหม่กว่า คุณสามารถบล็อกแบนเนอร์และโฆษณาที่น่ารำคาญได้ ก่อนที่จะใช้โปรแกรมแก้ไข ขอแนะนำให้สำรองข้อมูลแอปพลิเคชันก่อน

คำแนะนำ: วิธีใช้ Lucky Patcher

  1. ติดตั้งโปรแกรมหรือเกมที่คุณต้องการ
  2. ติดตั้ง Lucky Patcher เอง
  3. เปิด Lucky Patcher จากนั้นกดปุ่มบนแอปที่คุณต้องการค้างไว้ จากนั้นเลือก Lucky Market Google Patch (หรือ "ทำลิขสิทธิ์") - รายการเมนูด้านบน
  4. หลังจากเสร็จสิ้นกระบวนการเรียบร้อยแล้วคุณสามารถเล่นได้ อย่างไรก็ตาม เป็นเรื่องที่ควรค่าแก่การระลึกว่าการใช้ Lucky Patcher มักจะช่วยให้คุณสามารถเปิดแอปพลิเคชันโดยไม่ต้องเชื่อมต่อกับเครือข่ายหลังการใช้งาน แม้ว่านักพัฒนาจะห้ามในตอนแรกก็ตาม!

ดังที่คุณเห็นโดยทั่วไปแล้ว การใช้ Lucky Patcher นั้นเรียบง่าย แต่การทราบรายละเอียดและแผนปฏิบัติการบางอย่างในบางสถานการณ์ก็ไม่เสียหาย

ประการแรก หากไม่สามารถค้นหาและลบใบอนุญาตได้โดยอัตโนมัติ คุณสามารถลองทำด้วยตนเองได้

เมื่อเปิดโหมดแมนนวล Lucky Patcher จะตรวจจับวัตถุทั้งหมดที่คล้ายกับใบอนุญาต (การควบคุมการกดแป้นพิมพ์ ตารางสี ความละเอียด ฯลฯ) ในรายการที่ปรากฏขึ้น คุณจะต้องค้นหารหัสใบอนุญาตที่ถูกต้อง สิ่งนี้ทำได้โดยใช้กำลังดุร้ายอย่างง่าย: ขั้นแรกเลือกวัตถุแรกแล้วคลิกปุ่ม "แพทช์" เมื่อกระบวนการเสร็จสิ้น ให้ลองเปิดแอปพลิเคชันโดยใช้ "เรียกใช้"

การใช้โปรแกรม Lucky Patcher ไม่ใช่เรื่องยาก คุณเพียงแค่ต้องทำตามคำแนะนำสองสามครั้งและเรียนรู้คุณสมบัติพื้นฐาน

หากคุณเดาไม่ถูก - เช่น หากไม่ได้ผลให้คลิก "กู้คืน" - และทุกอย่างจะกลับสู่สถานะเดิมโดยไม่มีปัญหาใด ๆ หลังจากนั้นเราจะทำซ้ำขั้นตอนกับวัตถุถัดไปและต่อไปเรื่อย ๆ จนกว่าเราจะประสบความสำเร็จ

นอกจากนี้ยังมีแนวคิดเช่น แพทช์ที่กำหนดเอง- แพตช์เฉพาะสำหรับแอปพลิเคชันเฉพาะที่สามารถเปลี่ยนแปลงอะไรก็ได้ ตั้งอยู่ในโฟลเดอร์ /sdcard/Luckypatcher/ ซึ่งเป็นไฟล์ที่มีนามสกุล .txt หากต้องการใช้แพตช์ดังกล่าว คุณเพียงแค่ต้องดาวน์โหลดไฟล์ข้อความและคัดลอกไปยังโฟลเดอร์ ครั้งต่อไปที่คุณเปิด Lucky Patcher แอปพลิเคชั่นจะถูกทำเครื่องหมายด้วยสีเหลือง และหากต้องการใช้ Custom Patch คุณเพียงแค่คลิกที่ “Patch for this program!”

โดยสรุปฉันจะพูดถึงฟังก์ชั่น แก้ไขเมื่อรีบูต- ฟังก์ชันนี้ได้รับการออกแบบมาเพื่อให้คุณสามารถเพิ่มแพตช์เฉพาะลงใน BootList ได้ จำเป็นเมื่อด้วยเหตุผลบางประการ "การแก้ไขการเปลี่ยนแปลง" ไม่ทำงานและคุณไม่สามารถบันทึกตำแหน่งของแพตช์ได้ (ความจริงก็คือว่าแพตช์พยายามเปลี่ยนไลบรารี) เพื่อป้องกันไม่ให้สิ่งนี้เกิดขึ้น คุณต้องคลิก “แพตช์เมื่อรีบูต” และเลือกแพตช์ที่กำหนดเอง ซึ่งจะทำให้ไลบรารีของคุณสามารถแพตช์ทุกครั้งที่อุปกรณ์เริ่มทำงาน หากวิธีนี้ใช้ไม่ได้ผล คุณสามารถเพิ่มแพตช์ลงในแอปพลิเคชันที่มีโฆษณาและใบอนุญาตที่ถูกลบออกได้

Lucky Patcher เป็นตัวแก้ไขแอปพลิเคชันที่ให้คุณได้รับคุณสมบัติเพิ่มเติมในเกมและแอปพลิเคชัน Android เช่น: คุณสามารถปิดการตรวจสอบใบอนุญาต ซื้อได้ฟรีจากร้านค้าในเกม และแม้กระทั่งบล็อกโฆษณา นอกจากนี้ ยังมีแพตช์แบบกำหนดเองซึ่งส่งผลดีต่อการทำงานของแอปพลิเคชันและเปิดฟีเจอร์ที่ถูกบล็อก


ฟังก์ชันยอดนิยมและการใช้งานมีคำอธิบายอยู่ด้านล่าง หากหลังจากอ่านแล้วคุณไม่สามารถรับมือกับปัญหาของคุณได้อธิบายโดยละเอียดในความคิดเห็นเราจะแนะนำและเสริมคำแนะนำให้กับคุณ :)


เพื่อให้ฟังก์ชันส่วนใหญ่ทำงานได้ คุณจะต้องมี:

  • ติดตั้งแล้ว

วิธีปิดการใช้งานการแจ้งเตือนจาก Play Store เกี่ยวกับความจำเป็นในการลบ Lucky Patcher

ตามกฎแล้วร้านค้าแอปพลิเคชัน Play Store ระบุว่า Lucky Patcher เป็นไวรัส หลังจากนั้นข้อความที่ไม่สามารถปิดได้จะปรากฏขึ้นในหน้าต่างการแจ้งเตือน: “ถอนการติดตั้งแอปพลิเคชันที่เป็นอันตราย แอปพลิเคชัน Lucky Patcher อาจรบกวนการทำงานของอุปกรณ์” เพื่อกำจัดการแจ้งเตือนที่น่ารำคาญนี้ คุณต้องทำตามขั้นตอนง่ายๆ ไม่กี่ขั้นตอน


คำแนะนำเหล่านี้จะมีประโยชน์เท่าเทียมกันสำหรับทั้งผู้ที่ต้องการกำจัดข้อความที่น่ารำคาญและผู้ที่ไม่สามารถติดตั้ง Lucky Patcher บนอุปกรณ์ของตนเนื่องจาก Play Store

คำแนะนำวิดีโอ


  1. เปิด Play Store – คลิกที่เมนู (มุมซ้ายบน) – เลือก Play Protection – ยกเลิกการเลือกตัวเลือก “ตรวจสอบภัยคุกคามความปลอดภัย” แล้วคลิก “ตกลง”
  2. หากคุณเห็นข้อความในแถบการแจ้งเตือนเช่นเดียวกับในภาพหน้าจอด้านล่างคุณควรลบข้อมูล Play Store ทั้งหมดซึ่งคุณควรดำเนินการดังต่อไปนี้: ไปที่ "การตั้งค่า" - เปิด "แอปพลิเคชัน" - ในรายการแอปพลิเคชันที่ติดตั้ง ค้นหา Google Play Store แล้วคลิกที่มัน – เลือก “ลบข้อมูล” จากนั้นคลิก “ตกลง” ข้อความจะหายไปและคุณสามารถใช้ Lucky Patcher ได้อย่างปลอดภัย







การลบการตรวจสอบใบอนุญาตในแอปพลิเคชัน

การตรวจสอบใบอนุญาต - ตามค่าเริ่มต้น ซึ่งมีอยู่ในเกมและแอปพลิเคชันแบบชำระเงินทั้งหมด การตรวจสอบนี้จะตรวจสอบว่าคุณได้ซื้อแอปพลิเคชันนั้นหรือไม่ หากคุณพยายามติดตั้งเกมหรือโปรแกรมที่ต้องชำระเงินโดยไม่ตรวจสอบ คุณจะพบข้อผิดพลาดแจ้งว่าดาวน์โหลดแอปพลิเคชันจากตลาด Lucky patcher สามารถลบการตรวจสอบนี้ออกได้ เพื่อให้คุณสามารถติดตั้งแอปพลิเคชันที่ต้องการได้อย่างง่ายดาย


การปิดกั้นโฆษณา

การโฆษณาที่ล่วงล้ำในเกมและแอพพลิเคชั่นนั้นน่ารำคาญมากและบางครั้งก็รบกวนการเล่นเกมปกติด้วย ในสถานการณ์เช่นนี้ ทางออกเดียวที่แน่นอนคือการบล็อกโฆษณา! โชคดีที่ Lucky Patcher สามารถลบโฆษณาได้ (แต่ก็ยังมี) โดยใช้อัลกอริธึมหลายอย่าง และคำแนะนำอยู่ด้านล่าง:

คำแนะนำวิดีโอ

ซื้อฟรีในร้านค้าในเกม

Lucky patcher ทำงานได้อย่างมหัศจรรย์ มันจะช่วยให้คุณซื้อสินค้าได้ฟรีในร้านค้าในเกม นั่นคือคุณจะได้รับเหรียญจำนวนมากหรือแม้แต่ทำให้ไม่มีที่สิ้นสุด ซื้อเนื้อหาที่ต้องชำระเงินทั้งหมดในเกมได้ฟรี!


คำแนะนำวิดีโอ


แพทช์ที่กำหนดเอง

แพตช์ผู้ใช้เป็นส่วนขยายสำหรับแอปพลิเคชันหรือเกมเฉพาะ โดยสามารถเพิ่มคุณสมบัติใหม่หรือปลดล็อคเนื้อหาแบบปิด/ชำระเงิน


วิธีสร้างแอปพลิเคชันเวอร์ชันดัดแปลง

คำแนะนำวิดีโอ

  1. ในเมนูบริบทคุณต้องเลือก "เมนูแพทช์" จากนั้นคลิกที่รายการ "สร้าง apk ที่แก้ไข"
  2. เราถูกขอให้เลือกแพตช์ที่เราต้องการใช้กับแอปพลิเคชันของเรา (ลบการตรวจสอบใบอนุญาต ลบโฆษณา ซื้อสินค้าฟรี หรือเปลี่ยนส่วนประกอบของแอปพลิเคชัน) คุณสามารถเลือกแพตช์หนึ่งรายการหรือหลายรายการพร้อมกัน (เพียงคลิกที่ บรรทัดแรก “ Apk พร้อมหลายแพตช์" จากนั้นทำเครื่องหมายที่ช่องถัดจากรายการที่ต้องการ) หลังจากนั้นสิ่งที่คุณต้องทำคือคลิกที่ปุ่ม "สร้างแอปพลิเคชันใหม่"
  3. เมื่อประกอบไฟล์ APK แล้ว คุณสามารถเปิดและติดตั้งหรือมอบให้เพื่อนของคุณได้

วิธีสร้างโคลนแอปพลิเคชัน (.apk)

เมื่อเร็ว ๆ นี้ฟังก์ชั่นการโคลนปรากฏอย่างเป็นทางการในเฟิร์มแวร์ของนักพัฒนาชาวจีนบางคน ตัวอย่างเช่น ใน MIUI หลังจากติดตั้งแอปพลิเคชันแล้ว คุณสามารถทำสำเนาแบบเต็มได้ เหตุใดจึงจำเป็น? ตัวอย่างเช่น การสร้างโคลนแอปพลิเคชัน Sberbank Online คุณสามารถใช้การ์ดสองใบได้ เช่นเดียวกับเกมออนไลน์ที่สร้างบัญชี หรือโปรแกรมส่งข้อความและโซเชียลเน็ตเวิร์ก คุณไม่จำเป็นต้องเข้าสู่ระบบใหม่จากบัญชีหนึ่งไปยังอีกบัญชีหนึ่งอีกต่อไป สิ่งที่คุณต้องทำคือสร้างโคลนของแอปพลิเคชันและเข้าสู่ระบบ

คำแนะนำวิดีโอ

  1. หลังจากที่คุณเปิดตัว Lucky Patcher คุณจะต้องค้นหาแอปพลิเคชันที่คุณต้องการโคลนและคลิกที่แอปพลิเคชันนั้น
  2. ในเมนูบริบทที่ปรากฏขึ้นให้เลือก "เครื่องมือ" และคลิกที่รายการ "แอปพลิเคชันโคลน"
  3. ในหน้าต่างถัดไป คุณไม่จำเป็นต้องเปลี่ยนแปลงอะไรเลย (ควรมีเครื่องหมายถูกข้างรายการ "เปลี่ยน AndroidManifest.xml, resources และ class.dex") เพียงคลิกที่ปุ่ม "สร้างแอปพลิเคชันใหม่"
  4. เมื่อ Lucky Patcher สร้างโคลนของแอปพลิเคชันที่เราเลือกเสร็จแล้ว คุณจะต้องติดตั้งมัน คลิกที่ปุ่ม "ติดตั้งโคลน" จากนั้นคลิก "ใช่" และรอให้โปรแกรมติดตั้ง
  5. หากประสบความสำเร็จ (ใช่ การสร้างโคลนที่ใช้งานได้นั้นเป็นไปไม่ได้เสมอไป) ไอคอนที่สองจากแอปพลิเคชันโคลนจะปรากฏบนเดสก์ท็อป และคุณจะสามารถเปิดใช้งานพร้อมกันและใช้งานได้ในเวลาเดียวกัน

วิธีเปลี่ยนการอนุญาตแอปพลิเคชัน

หากคุณต้องการจัดการสิทธิ์ของแอปพลิเคชันที่ติดตั้งบนอุปกรณ์ของคุณด้วยตนเอง ได้แก่ ปฏิเสธ/อนุญาตการเข้าถึงอินเทอร์เน็ต อ่านข้อมูลจากการ์ด SD เพิ่มแอปพลิเคชันเพื่อเริ่มต้น ทำการซื้อในแอป ตรวจสอบใบอนุญาต และอื่นๆ อีกมากมาย

  1. เราเปิดตัว Lucky Patcher และค้นหาแอปพลิเคชันที่เราต้องการ จากนั้นคลิกที่มัน
  2. ในเมนูบริบทคุณต้องเลือก "เมนูแพทช์" จากนั้นคลิกที่รายการ "เปลี่ยนส่วนประกอบแอปพลิเคชัน"
  3. ในหน้าต่างถัดไป เราต้องเลือกตัวเลือกที่ 3 (เปลี่ยนการอนุญาตและกิจกรรมโดยยังคงรักษาลายเซ็นดั้งเดิมไว้) ตามที่นักพัฒนาระบุว่าวิธีนี้ปลอดภัยที่สุด
  4. ตอนนี้เราสามารถเลือกสิทธิ์ที่จะปล่อยให้แอปพลิเคชันและเราต้องการปิดการใช้งานได้ เพียงแตะที่รายการที่จำเป็นแล้วคลิกที่ปุ่ม "สร้างใหม่และติดตั้ง"

การสำรองข้อมูล

คุณสามารถบันทึกไฟล์ .apk ของแอปพลิเคชันที่ติดตั้ง โดยมีการเปลี่ยนแปลงและการกำหนดค่าทั้งหมดที่เกิดขึ้น กล่าวอีกนัยหนึ่ง Lucky Patcher สามารถบันทึก .apk จากแอปพลิเคชันที่ติดตั้งจาก Google Play รวมทั้งโคลนได้ในกรณีที่คุณต้องการเปิดแอปพลิเคชันสองครั้ง


ตอนนี้คุณรู้วิธีใช้ Lucky Patcher แล้ว! แต่หากมีบางอย่างไม่ได้ผลสำหรับคุณหรือคุณมีคำถามใด ๆ เขียนความคิดเห็นในหน้านี้แล้วเราจะช่วยคุณ :)

  • 1 กรกฎาคม 2017
  • ยอดดู 49,133 ครั้ง

ชอบไหม?

การให้คะแนน: 17


สงครามเอาชีวิตรอดครั้งสุดท้าย: Apocalypse- เกมยิงซอมบี้พร้อมมุมมองจากบนลงล่าง

เอาชีวิตรอดในโลกหลังหายนะอันโหดร้าย ต่อสู้กับซอมบี้กลายพันธุ์นับพัน รวบรวมเสบียงและพัฒนาฐานของคุณ Last Survival War เป็นตัวแทนใหม่ของประเภท "แอ็คชั่นเอาชีวิตรอด" ที่ได้รับความนิยมอยู่แล้ว ซึ่งความสมดุลถูกเปลี่ยนไปสู่การต่อสู้มากกว่าองค์ประกอบเชิงกลยุทธ์ คุณสามารถมีส่วนร่วมในการทะเลาะวิวาทคนเดียวหรือกับเพื่อน เอาชีวิตรอดในโลก PvE หรือมีส่วนร่วมในการดวล PvP และแน่นอน พัฒนาตัวละครของคุณในทุกวิถีทางที่เป็นไปได้

มีอะไรใหม่:

เพิ่มม็อดแล้ว


ข้อมูลแฟชั่น:

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