Xpose Untuk Lollipop Sekarang Resmi Tersedia

click fraud protection

Xpose Framework tidak memerlukan pengenalan kepada pembaca XDA. Ketika ditanya tentang hal-hal komunitas kami paling membenci Lollipop, satu-satunya komentar dengan suara terbanyak dalam diskusi tersebut adalah bahwa komentar tersebut memutuskan dukungan untuk Xpose. Faktanya, banyak anggota forum yang menolak untuk mengupdate ke Lollipop khusus karena alasan ini. Namun semua itu kini berubah, karena Xpose Framework yang sangat dinanti akhirnya hadir untuk Android Lollipop.

Jika Anda belum familiar dengan Xpose, sederhananya, ini adalah anugerah bagi komunitas modding. Xpose tidak memerlukan flashing ROM apa pun, tetapi menghadirkan banyak penyesuaian dan penyesuaian yang dapat diinstal pengguna seperti aplikasi pada perangkat yang di-rooting. Ini sangat mudah digunakan dan dengan risiko terbatas. Dan kini, semua penggemar Android di Lollipop dapat menikmati manfaat proyek fantastis ini di perangkat mereka. Ambil unduhan Anda dan mulai modding!

rovo89 juga berbaik hati memberi kami Q&A untuk proyek terbaru. Anda dapat menemukan jawaban atas semua pertanyaan Anda tentang proyek di bawah ini.

Mengapa butuh waktu lama? ART telah diterbitkan lebih dari setahun yang lalu!

Pertama-tama - banyak orang terus meminta dukungan ART. Lollipop memiliki lebih banyak perubahan dari itu, seperti kebijakan SELinux yang lebih ketat, ROM 64-bit dan perubahan arsitektur yang Anda harapkan dari rilis besar. Dan tentu saja ART sendiri terus ditingkatkan; ada perbedaan besar antara ART untuk KitKat dan ART untuk Lollipop.

Jadi salah satu alasannya adalah kompleksitasnya yang besar, yang memerlukan banyak waktu kerja untuk penelitian, pengembangan, dan pengujian.

Alasan lainnya adalah ada hal lain dalam hidup saya selain Xpose, jadi ada berminggu-minggu atau bahkan berbulan-bulan di mana saya bahkan hampir tidak melihat kodenya sama sekali.

Apakah kita perlu menulis ulang semua modul?

Tidak, Xpose API tidak banyak berubah. Xpose mengabstraksi semua detailnya, sehingga modul tidak perlu peduli apakah mereka berjalan di Dalvik atau ART. Banyak modul yang benar-benar berfungsi tanpa perubahan apa pun, terutama modul yang mengubah perilaku aplikasi pengguna. Modul yang menargetkan perilaku sistem mungkin perlu disesuaikan dengan kode framework Android baru, yang mana bukan disebabkan oleh ART, tetapi hanya oleh perubahan arsitektur dan kode yang terjadi antara dua Android rilis. Yang paling penting adalah kode untuk layanan sistem telah dipindahkan ke file terpisah. Untuk sebagian besar modul yang terpengaruh, masalah ini dapat diselesaikan dengan sedikit pemfaktoran ulang (memindahkan kode ke tempat lain).

Apakah ini benar-benar berfungsi?

Ya! Setidaknya bagi saya, ini berfungsi dengan baik di perangkat harian saya (Nexus 5 di CM12) dan juga di Nexus 9 saya (dibayar oleh XDA – terima kasih!). Ponsel stabil seperti biasa dan aplikasi berfungsi dengan baik. Dan tentu saja, modul dan pengait/pengganti sumber dayanya juga berfungsi dengan baik, jika tidak, tidak ada gunanya merilis sesuatu.

Tapi kenapa ini versi alpha?

Karena telah terjadi perubahan besar sejak rilis stabil terakhir yang perlu diuji oleh orang-orang yang mengetahui cara menggunakan pemulihan, keluar dari boot loop, dan melaporkan bug dengan benar. Saya sangat menyarankan para pemula untuk menunggu hingga Xpose diuji oleh orang yang cukup berpengalaman.

Ada juga beberapa kasus tepi yang belum diuji, seperti metode hooking JNI (asli) dan metode yang sedang dijalankan pada saat hooking.

Saya ingin menginstalnya. Sekarang! Apa yang harus saya lakukan?

Pastikan Anda telah membaca kata-kata saya di atas dan memahami bagian dalam ponsel Anda. Tentunya, Anda harus menggunakan ROM Lollipop dan memiliki cadangan data yang baik. Untuk saat ini saya hanya akan mempublikasikan versi ARMv7. 64-bit lebih kompleks, jadi mari kita coba varian “mudah” terlebih dahulu.

Untuk saat ini, instalasi harus dilakukan secara manual di custom recovery. Mem-flash file zip akan menginstal:

  • app_process32_xpose dan beberapa symlink
  • libexpose_art.so
  • libart.so dan beberapa binari + pustaka terkait (berdasarkan 5.0.2, ditingkatkan dengan dukungan untuk hooking, dll.)
  • XposeBridge.jar (sekarang disimpan di /system/framework)

Cadangan file yang ada akan dibuat secara otomatis dan dapat dipulihkan nanti.

Itu tidak berhasil/Saya tidak menyukainya! Bagaimana cara menghapus instalannya?

Cara termudah adalah memulihkan cadangan atau mem-flash partisi sistem. File zip untuk penghapusan instalasi belum dibuat.

Mengapa Anda mengganti file ART di perangkat saya? Ini lebih invasif daripada Dalvik, akan menyebabkan masalah kinerja yang signifikan dan menjadi tidak stabil!

Saya telah menuliskan beberapa alasannya GitHub. Ya, ini lebih invasif, jadi saya sudah mencoba menghindarinya sejak lama, tetapi dari sudut pandang teknis dan berorientasi dukungan, menurut saya ini adalah pilihan yang lebih baik.

Performanya lebih rendah dari ART asli? Mungkin, karena saya harus menonaktifkan beberapa pengoptimalan untuk memungkinkan jenis pengait tertentu. Namun, hal ini hanya mempengaruhi sebagian kecil dari semua metode dan bahkan pada metode tersebut, penurunan kinerjanya tentu tidak signifikan atau terlihat, bahkan dapat diukur. Masih ada ribuan optimasi lain yang dilakukan oleh ART, dan saya mencoba menonaktifkan sesedikit mungkin sambil memberikan fleksibilitas sebanyak mungkin.

Stabilitas baik-baik saja seperti yang disebutkan di atas. Dibandingkan dengan pendekatan yang saya gunakan untuk Dalvik (memodifikasi struktur data internal runtime dari app_process), saya bahkan cukup yakin bahwa mengganti perpustakaan sepenuhnya adalah cara yang jauh lebih dapat diandalkan jalan. Saya dapat mengintegrasikan perubahan saya ke dalam kode yang ada dengan rapi dan menggunakan kembali fungsi terkait, sedangkan banyak peretasan dan asumsi diperlukan untuk cara lain.

Apakah Anda akhirnya akan mempublikasikan kode sumbernya?

Tentu, Anda akan menemukannya di GitHub segera setelah rilis versi alfa, di cabang terpisah untuk saat ini.

Apakah ini berarti Android versi lama tidak lagi didukung?

TIDAK! Kode baru ini dikompilasi pada semua versi Android 4.x, dan hanya perlu diuji sebelum rilis terpadu. Namun pertama-tama, saya harus memastikan bahwa ini berfungsi dengan baik untuk Lollipop. Mungkin saja, dukungan ART dapat di-backport ke KitKat, namun hal tersebut kurang diprioritaskan.

Bagaimana saya bisa berterima kasih atas pekerjaan Anda?

Banyak orang yang menanyakan cara untuk menyumbangkan beberapa dolar, jadi saya telah menyiapkan a sumbangan halaman sekarang.

Berapa banyak yang perlu saya sumbangkan agar Anda dapat menambahkan fitur X atau modul yang dapat Y?

Itu bukan menyumbang, itu membayar seseorang dengan harapan mendapatkan pekerjaan di masa depan. Saya tidak tertarik dengan pekerjaan freelancer.