Kerangka Xpose Resmi untuk Android Nougat ada di Sini

Setelah penantian yang lama, pengembang Xpose Framework secara resmi mengumumkan bahwa proyek tersebut kini mendukung Android Nougat. Instal Modul Xpose sekarang!

Seiring dengan semakin matangnya ekosistem Android selama bertahun-tahun, semakin sedikit pengguna yang menemukan alasan mengapa mereka harus melakukan root pada perangkat mereka. Ada tren yang berkembang di mana pengguna memilih untuk tetap menggunakan firmware bawaan, baik karena mereka merasa pengalamannya memuaskan atau tidak ingin memainkannya. permainan kucing-dan-tikus dengan API SafetyNet Google. Namun jika Anda bertanya kepada pengguna di awal tahun 2016 mengapa mereka melakukan root pada ponselnya, mungkin alasan nomor satu yang diberikan adalah agar mereka dapat melakukan root pada ponselnya. instal Kerangka Xpose. Telah lebih dari setahun sejak Android 7.0 Nougat pertama kali dirilis, namun penantian panjang akhirnya berakhir: Kerangka Xpose resmi untuk Android Nougat akhirnya tersedia.

Sepanjang tahun lalu, Pengembang Senior yang Diakui XDA

rovo89, pengembang utama Xgged Framework, telah menyediakan beberapapembaruan tentang kemajuan Xpose Framework untuk Android Nougat. Bagi sebagian orang, itu menunggu sudah bisa ditoleransi sebagian besar disebabkan oleh banyaknya fungsi tambahan yang ditawarkan oleh Xpose Framework Android Marshmallow. Namun banyak orang lain yang beralih ke kehidupan tanpa Xpose di perangkat mereka.

Kami melihat sekilas kegembiraan baru dalam proyek ini ketika pengembang abforce merilis Submodul ART untuk AOSP 7.1.2, tapi seperti yang ditunjukkan oleh GermainZ kami sendiri Anda lebih baik menunggu Xpose Framework resmi rilis sebagai implementasi abforce memerlukan kerangka kerja untuk diintegrasikan ke dalam ROM khusus. Lebih-lebih lagi, implementasi tidak resmi ini tidak lengkap, sehingga menyebabkan perilaku tidak konsisten atau bermasalah dengan Xpose tertentu Modul.

Meskipun abforce melakukan pekerjaan yang baik dalam membuat Xpose tidak resminya berfungsi pada Android 7.1 Nougat, penerapannya bertentangan visi rovo89 untuk Xverted—bahwa ini harus menjadi solusi stabil yang menyediakan kontrak yang andal dan mudah digunakan bagi pengguna dan pengembang sama. Yang kami maksud dengan hal ini adalah bahwa modul tidak hanya harus berfungsi tanpa masalah bagi pengguna, namun juga cara modul diatur up harus konsisten di antara pengguna sehingga pengembang akan mengetahui apakah Modul Xverted yang menjadi penyebab suatu aplikasi atau tidak menabrak.

Kami tidak perlu lagi khawatir tentang masalah seperti rovo89 (setelah bantuan dari Pengembang yang Diakui XDA ingin) sekarang siap untuk merilis pembaruan resmi untuk Kerangka dan Penginstal Xpose—menghadirkan kompatibilitas dengan Android 7.0/7.1 Nougat. Itu berarti Anda tidak perlu menginstal ROM khusus atau harus repot mem-flash versi yang tidak stabil nikmati Xpose—cukup root ponsel Anda dan instal aplikasi Xpose Installer terbaru (tautan di bawah) dan itu Xpose Installer akan melakukan keajaiban menginstal Xpose untuk Anda.

Penginstal Xpose Menjelajahi Repositori Modul

Ini mungkin tampak agak terlambat bagi sebagian orang, terutama sejak rilis ini tiba lebih dari sebulan setelah Android 8.0 Oreo dirilis. Perlu diingat bahwa sangat sedikit perangkat yang memiliki akses ke versi stabil Android Oreo selama beberapa bulan mendatang. Android Oreo adalah hanya aktif 0.2% dari semua perangkat Android (dibandingkan dengan ~18% di Nougat) menurut statistik terbaru dari Google, namun banyak dari pengguna kami adalah tipe orang yang suka memasang ROM khusus agar tetap menjadi yang terdepan.

Distribusi Versi Android per Oktober 2017. Sumber: Google

Meskipun Anda menginstal port tidak resmi Android 8.0 tersedia di berbagai perangkat di forum kami, banyak dari port ini bukan status driver harian. Jadi, kecuali Anda bersedia mengeluarkan ratusan dolar untuk membeli barang baru Google Piksel 2/2XL, Sony Xperia XZ1/XZ1 Kompak, atau perangkat yang akan datang seperti Huawei Mate 10, maka Anda mungkin dapat memanfaatkan beberapa bulan penggunaan Xgged Framework di Android Nougat.

Jika itu terdengar seperti Anda, pergilah ke thread forum resmi untuk Penginstal Xpose dan zip kerangka kerja untuk mengaktifkan dan menjalankannya di perangkat Android Nougat Anda.

Unduh Xpose Installer v3.1.2 (Lampiran)

Penginstal Xpose untuk Nougat 7.0 (SDK24) Unduh

Penginstal Xpose untuk Nougat 7.1 (SDK25) Unduh

Bagi banyak pengguna baru yang belum begitu paham tentang kegunaan atau cara kerja Xpose Framework, kami akan menjelaskan secara singkat Kerangka Xgged di bawah ini, mengapa Anda harus bersemangat, dan mengapa pengembangannya memakan waktu lama telah melakukan.


Mengapa menginstal Kerangka Xpose?

Ingin mendapatkan fitur custom ROM tanpa menginstal custom ROM? Induk dari semua Modul Xpose untuk mengubah ROM Anda, yang dikenal sebagai Kotak Gravitasi, sudahkah kamu meliputnya. Ingin menyesuaikan pengaturan tampilan per aplikasi? Mencoba Pengaturan aplikasi. Bagaimana dengan menyesuaikan aplikasi tertentu seperti Hangout? Atau memodifikasi Instagram agar bisa unduh postingan apa pun yang Anda suka?

Xpose memberi pengembang kemampuan untuk melakukannya memodifikasi cukup banyak apa pun yang mereka inginkan—sebagian besar ditujukan untuk aplikasi individual tetapi bahkan fitur seluruh sistem dapat dimodifikasi. Contoh yang kami cantumkan hanyalah puncak gunung es. Jumlah fitur tambahan yang dapat Anda tambahkan atau aplikasi yang dapat Anda modifikasi sungguh luar biasa—cukup telusuri repositori Modul Xgged resmi untuk melihat sendiri. Ingatlah bahwa beberapa modul mungkin perlu diperbarui untuk rilis baru ini dan untuk dukungan Nougat, jadi pastikan untuk memeriksanya sebelum menginstalnya di ROM Nougat Anda!

Bagaimana cara kerja Modul Xpose?

Inti dari hal ini adalah bahwa Xpose Framework memungkinkan modul untuk melakukan hal tersebut "kaitkan" ke metode Java pada aplikasi apa pun—baik itu yang diinstal pengguna atau aplikasi sistem. Xpose memungkinkan modul menjalankan metodenya sendiri sebelum, selama, atau di tempat metode asli dari aplikasi target.

Misalnya, bayangkan metode yang digunakan dalam aplikasi Gmail yang mengeposkan pemberitahuan untuk email baru. Secara default, metode ini membuat notifikasi baru dengan tombol untuk mengarsipkan/menghapus atau membalas email. Modul Xpose dapat dibuat untuk menghubungkan ke metode ini dan menambahkan tombol baru seperti "tandai sebagai telah dibaca." (Ya, ada sudah menjadi Modul untuk hal itu.)

Hal di atas adalah penyederhanaan yang berlebihan dari hasil akhir dari apa yang dapat dilakukan oleh modul-modulnya oleh Xpose Framework. Kerangka kerja itu sendiri sangat kompleks dan membuatnya bekerja hampir secara universal pada perangkat yang di-rooting—tanpa memerlukan ROM khusus—itulah sebabnya Xpose untuk Android Nougat membutuhkan waktu lama untuk diselesaikan.

Mengapa pengembangan Xpose memakan waktu lama?

Keajaiban di balik Xpose—yang memungkinkan Modul terhubung ke metode aplikasi lain—membutuhkan pengetahuan mendalam tentang cara Zygote dan Waktu Proses Android (SENI) bekerja. Persyaratan ini sudah menghalangi banyak orang untuk berkontribusi pada proyek, namun masalah ini diperburuk oleh kenyataan bahwa rovo89 telah menjadi kontributor utama Xverted selama 5 tahun terakhir.

Itu sebabnya seruan untuk menjadikan modifikasinya sebagai sumber terbuka pada Xpose sejak rilis publik terakhir Xpose telah ditolak. Itu adalah gagasannya, dan dialah yang terbaik dalam memahami dan memodifikasinya, sehingga menambahkan lebih banyak tenaga kerja ke proyek pada tahap akhir. hanya bisa menunda proyek lebih lanjut.

Ditambah lagi, jika rovo89 terus memperbarui sumbernya, dia khawatir bahwa seseorang akan mengambil kode yang belum selesai untuk membangun Xgged Framework yang semi-berfungsi tanpa Penginstal Xpose universal yang menyertainya. (Hal ini sebenarnya terjadi pada implementasi abforce, dan kekacauan yang diakibatkan oleh berbagai metode instalasi membenarkan keragu-raguan rovo89.)

Oleh karena itu, hal terbaik yang dapat kami lakukan adalah memberikan waktu kepada rovo89 untuk mengerjakan proyek kesayangannya. Xpose bukanlah pekerjaan penuhnya, atau bahkan paruh waktu. Itu hanyalah sebuah hobi, yang telah ia lakukan untuk kepentingan masyarakat selama 5 tahun. Sebuah proyek serumit Xpose memerlukan waktu untuk mengerjakan dan kemudian menguji—waktu yang sering kali tidak ia miliki karena kewajibannya yang lain. Kemajuan dulu sedang dibuat selama setahun terakhir, seperti yang didokumentasikan rovo89 dalam beberapa pembaruan publiknya mengenai masalah ini hingga akhirnya Xgged Framework itu sendiri dan Penginstal Xpose siap untuk dirilis.

Apa yang dilakukan rovo89 agar Xpose berfungsi di Nougat?

Rilisan baru Android terkadang membawa perubahan pada cara kerja ART, yang mungkin memerlukan pengerjaan ulang bagian Xpose. Android 7.0 Nougat memperkenalkan compiler Just-in-Time untuk ART guna membantu meningkatkan kinerja runtime aplikasi, misalnya. Namun Xverted Framework yang tidak resmi oleh abforce hanya menonaktifkan banyak optimasi ART sehingga metode hooking dapat bekerja dengan benar.

Optimasi ART di Android Nougat. Sumber: Google

Sebaliknya, implementasi rovo89 menyimpan semua optimasi ART di Android Nougat dengan mengkompilasi ulang pemanggil metode menggunakan JIT dan masih memiliki kaitan metode. Itu berarti Anda dapat menikmati manfaat Modul Xgged tanpa mengorbankan kinerja dengan menonaktifkan pengoptimalan ART secara paksa.

Untuk rincian lebih lanjut tentang apa yang dilakukan rovo89 hingga akhirnya mencapai metode hooking yang andal di Xpose untuk Android Nougat, kami sarankan Anda membaca pernyataan di bawah ini yang dia berikan kepada kami.

Pernyataan lengkap dari rovo89

Inti dari Xpose jelas adalah kemampuannya untuk menghubungkan metode Java, yaitu membiarkan modul mengeksekusi kode sebelum, sesudah, atau sebagai pengganti metode ini. Hampir semua fungsi lainnya didasarkan pada hal ini, jadi sangat penting agar fungsi tersebut selalu berfungsi seperti yang diharapkan. Konsep umumnya masih sama sejak saya menemukan Xpose lima tahun lalu, memerlukan perubahan titik masuk metode. Ini mulai gagal ketika titik masuk tidak dicentang selama eksekusi - yang sebenarnya terjadi pada beberapa optimasi di ART.

Salah satu contohnya adalah ketika titik masuk sudah diketahui pada waktu kompilasi, maka penelepon dapat langsung menuju ke alamat ini tanpa mencarinya. Contoh lainnya adalah sebaris. Perhatikan contoh ini:

ART cukup pintar untuk memperhatikan bahwa metode dua kali() sangat sederhana dan karena itu menyematkan logika langsung ke dalam metode doSomething(), seperti ini:

Anda masih dapat menghubungkan metode dua kali(), tetapi metode tersebut tidak akan dipanggil lagi dari doSomething() saat waktu proses, begitu pula dengan panggilan balik Anda. ART bahkan lebih pintar lagi: Ia menyadari bahwa keajaiban selalu ada dan oleh karena itu syaratnya tidak akan pernah bisa terpenuhi. Jadi seluruh metode doSomething() sebenarnya tidak boleh dijalankan:

Di versi sebelumnya, Xpose biasa menonaktifkan pengoptimalan ini sepenuhnya dan memaksa kompilasi ulang semuanya. Hal ini disertai dengan beberapa kelemahan. Pertama-tama, pengembang ART melakukan pekerjaan luar biasa dalam memaksimalkan kinerja mereka optimasi, dan menonaktifkannya sebagian tentu menyebabkan kinerja yang lebih rendah (saya tidak pernah mengukur seberapa besar meskipun). Kemudian, kompilasi ulangnya sendiri tidak selalu mudah dan membuat saya sangat pusing, terutama di awal-awal. Terakhir, file yang dikompilasi ulang memakan ruang, selain file yang telah dikompilasi ulang di/sistem.

Versi tidak resmi untuk Nougat juga menonaktifkan optimasi ini, tetapi tidak memaksa kompilasi ulang (karena port awalnya dibuat untuk diintegrasikan ke dalam ROM). Oleh karena itu, hook terkadang tidak dapat dieksekusi.

Dengan versi resmi, Anda dapat menyimpan kode yang dioptimalkan dan tetap memiliki kaitan yang dapat diandalkan. Bagaimana cara kerjanya? Nah, Xpose merekam semua panggilan yang dilakukan. Hal ini terjadi saat APK sedang dikompilasi, atau dalam proses terpisah untuk kode yang telah dioptimalkan. Data tambahan ini tidak memakan banyak ruang, namun memungkinkan Xgged untuk mengetahui di mana metode tertentu mungkin dimasukkan. Jadi ketika suatu metode terhubung, semua pemanggilnya akan dideoptimasi, yaitu kode mereka tidak akan digunakan lagi. Ini memastikan bahwa panggilan balik hook pasti akan dipanggil. Dan jika pemanggil banyak digunakan, ia hanya akan dikompilasi ulang dengan JIT, kali ini dengan pengetahuan bahwa metode tersebut terpikat dan oleh karena itu beberapa optimasi tidak berlaku. Ini berarti bahwa efek dari metode pengait dikurangi seminimal mungkin. Hore!

Sekarang silakan dan mencobanya. Pastikan untuk menggunakan Xpose Installer 3.1.2, karena jalur konfigurasi harus diubah untuk mendukung Enkripsi Berbasis File.

Baca selengkapnya

Kesimpulan

Kami harap Anda sama bersemangatnya dengan kami tentang peluncuran Xpose untuk Android 7.X Nougat. Penantiannya sudah lama, tetapi tidak dapat dihindari mengingat kompleksitas Xpose. Jika Anda masih bingung apa itu Xpose atau cara kerjanya, jangan khawatir. Sangat sedikit orang (termasuk kami) yang benar-benar memahami cara kerjanya. Pengembang seperti rovo89 melakukan yang terbaik dalam mengemas karya mereka sehingga Anda tidak perlu benar-benar memahami apa yang terjadi di baliknya.

Apakah Anda menyukai Kerangka Xpose? Pertimbangkan untuk berdonasi ke rovo89 atas pekerjaan luar biasa yang dia lakukan. Jika Anda merasa memiliki apa yang diperlukan untuk berkontribusi pada proyek ini, lihat halaman GitHub rovo89 di bawah.

Donasi ke rovo89

Berkontribusi pada Xpose

Mencari Modul Xgged? Kunjungi subforum Modul Xpose Framework kami atau unduh aplikasi XDA Labs dan telusuri koleksi Modul Xpose kami.

Forum Modul Xgged

Unduh Lab XDA

Kemajuan Android Oreo

Jika Anda bertanya-tanya, berikut kemajuan dalam mendapatkan Xpose untuk Android Oreo:

Saya sudah mulai bekerja di Android 8.0. Ada beberapa fitur bahasa baru yang harus saya lihat, tetapi konsep umumnya tetap berfungsi. Itu mencakup semua pekerjaan untuk membatalkan validasi kode kompilasi pemanggil mana pun ketika suatu metode terhubung, yang sejauh ini memakan waktu paling lama ketika saya mengerjakan Nougat. Jadi saya sangat yakin bahwa saya akan lebih cepat kali ini. Android 8.1seharusnya tidak jauh berbeda, jadi saya berharap tidak banyak pekerjaan tambahan untuk itu.