MASIGNCLEANSIMPLE101

Cara Mudah Memahami Script OnClick

dalam dunia oprek kita pasti sering menemukan guide yang menggunakan onclick, seperti contohnya di guide fmd l pannel maupun di fmd n pannel yang terdapat di profil picture . nah disini saya akan memberi tutorial bagaimana membaca atau memahami script onclick yang akan kita gunakan.

( Baca : Trik Dasar Oprek Android )

disini saya akan sedikit mengulang pengertian dari onclick itu sendiri. onclick adalah saat dimana kita membuat suatu aktivitas klik yang berada di smartphone kita agar lebih mudah menggunakannya. masih bingung? sama saya juga. sekarang kalian lihat gambar di bawah

Cara Mudah Memahami Script OnClick

nah diatas yang saya lingkari adalah contoh onclick yang saya buat, contohnya, jika saya klik gambar icon facebook maka otomatis akan terbuka aplikasi facebook lite saya, dengan demikian saya lebih mudah membuka suatu aplikasi dengan hanya menarik expanded lalu mengklik gambar sosial media yang saya inginkan. apakah hanya bisa sosmed yang di buat onclick? tentu tidak , apakah selalu gambar yang bisa dibuat onclick? ini yang belum saya tau, text bisa atau tidak menjadi onclick.


sekarang kita ke pokok pembicaraan, yaitu cara mudah memahami script onclick . script onclick terdapat di script.xml dan script.smali , disini saya akan memberi contoh saya membuat onclick facebook lite . pertama lihat dulu script di bawah ini

1. script.xml
script ini terdapat di dalam sebuah xml , kalau contoh saya terdapat di dalam fmd_quick_settings_header.xml

<Button android:layout_gravity="top|center" android:background="@drawable/fbl" android:layout_width="23.0dip" android:layout_height="23.0dip" android:onClick="FBL" />

2. script.smali
karena saya membuat onclick di systemui , maka onclick nya terdapat di dalam smali systemuiservices.smali , tepatnya di bawah # virtual methods

.method public FBL(Landroid/view/View;)V
    .locals 3
    .param p1, "v"    # Landroid/view/View;

    .prologue
    .line 2431
    new-instance v0, Landroid/content/Intent;

    invoke-direct {v0}, Landroid/content/Intent;-><init>()V

    .line 2432
    const-string v1, "com.facebook.lite"

    const-string v2, "com.facebook.lite.MainActivity"

    invoke-virtual {v0, v1, v2}, Landroid/content/Intent;->setClassName(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;

    const/high16 v2, 0x10000000

    invoke-virtual {v0, v2}, Landroid/content/Intent;->setFlags(I)Landroid/content/Intent;

    move-result-object v0

    .line 2433
    invoke-virtual {p0, v0}, Landroid/content/Context;->startActivity(Landroid/content/Intent;)V

    const-string v1, "statusbar"

    invoke-virtual {p0, v1}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Landroid/app/StatusBarManager;

    invoke-virtual {v0}, Landroid/app/StatusBarManager;->collapsePanels()V

    .line 1720
    return-void
.end method

ok skarang perhatikan tulisan yang berwarna merah
1. script.xml
- disana terdapat android:onClick="FBL" , nah script itu yang menunjukan onclick yang kita pakai memanggil script di smali dengan aksen FBL , karena di smali onclick yang kita tulis adalah FBL
- lalu ada juga android:background="@drawable/fbl" , mungkin kalian sudah tau semua jika script itu adalah pemanggil gambar dari drawable , kalau di saya bergambar icon facebook.

2. script.smali
- lalu disini terdapat .method public FBL(Landroid/view/View;)V , perhatikan baik-baik , disana terdapat aksen FBL yang sama di script.xml , artinya FBL tersebut di gunakan script.xml untuk membuat aktivitas onclick dan itu memang harus sama dengan yang ada di script.xml agar onclick yang kita buat menjadi work
- lalu disini terdapat const-string v1, "com.facebook.lite" , perhatikan "com.facebook.lite" , itu adalah target package yang terdapat di dalam aplikasi facebook lite
- dan yang terakhir const-string v2, "com.facebook.lite.MainActivity" , perhatikan "com.facebook.lite.MainActivity" , ini adalah target activity dari aplikasi facebook lite tersebut . 


ada beberapa hal yang bisa membuat onclick tidak work atau bisa mengalami forceclose (fc)
1. pemanggil onclik di script.xml dan scrit.smali tidak sama
2. target pacakge aplikasi salah
3. target activity salah
4. target package dan target activity salah
5. belum compare id ( ini untuk beberapa onclick yang di haruskan compare public id seperti yang di gunakan fmd profil , namun yang saya gunakan di atas tidak perlu compare id public )

mungkin itu dulu , jika ada yang salah silahkan komen dan akan saya revisi ,kalau ada yang belum paham silahkan komen akan saya bantu sebeisa saya, karana saya juga proses belajar.
Share This Article :