Hướng dẫn Enable Chức năng Tùy chọn nhà phát triển trên Android Kitkat 4.4.2

Thảo luận trong 'Dev Android' bắt đầu bởi Mobilecityhelp, 25 Tháng sáu 2014.

  1. Mobilecityhelp

    Mobilecityhelp Active Member

    Tham gia ngày:
    23 Tháng sáu 2014
    Bài viết:
    253
    Đã được thích:
    63
    Bài viết được thực hiện trên chiếc Optimus G

    Chào các bạn bấy giờ việc vọc vạch mod miếc đã trở nên quá quen thuộc với đại đa số anh em dùng LG chúng ta . Trong khi vọc chiếc máy của mình đơn giản như là Root hay cài Recovery thì không thể thiếu chức năng ADB USB hay chúng ta hay gọi Bật usb debbug . Nhưng lên Kitkat 4.4 LG đã ẩn chức năng Tùy chọn nhà phát triển đi phải vào Cài đặt/Thông tin thiết bị/Thông tin phần mềm và ấn 7 lần vào Tạo số mới hiện.
    Hôm nay mình xin hướng dẫn các bạn Enable luôn luôn chức năng này ngoài cài đặt .

    Đầu tiên Các bạn phải biết sử dụng công cụ Apktool ( Cái này các bạn có thể search trên mạng )
    Cần có 1 LGSettings.apk đã deodex

    Bắt đầu thực hiện

    Bước 1 : Decompile LGSettings3_1.apk ( Với Op G của mình )
    Bước 2 : Tìm theo đường dẫn sau
    LGSettings3_1/smali/com/android/settings
    Mở class settings.smali bằng Notepad++

    Và search từ khóa sau

    Mã:
    Landroid/content/SharedPreferences;->getBoolean(Ljava/lang/String;Z)Z
    ta sẽ thấy 1 đoạn code như sau

    Mã:
        .line 1313
        :cond_0
        iget-object v0, p0, Lcom/android/settings/Settings;->mDevelopmentPreferences:Landroid/content/SharedPreferences;
    
        const-string v1, "show"
    
        sget-object v3, Landroid/os/Build;->TYPE:Ljava/lang/String;
    
        const-string v5, "eng"
    
        invoke-virtual {v3, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
    
        move-result v3
    
        invoke-interface {v0, v1, v3}, Landroid/content/SharedPreferences;->getBoolean(Ljava/lang/String;Z)Z
    
        move-result v5
    Bây giờ ta thêm vào cuối đoạn code đó dòng sau :

    Mã:
    const/4 v5, 0x1
    Sao cho thành như sau

    Mã:
        .line 1313
        :cond_0
        iget-object v0, p0, Lcom/android/settings/Settings;->mDevelopmentPreferences:Landroid/content/SharedPreferences;
    
        const-string v1, "show"
    
        sget-object v3, Landroid/os/Build;->TYPE:Ljava/lang/String;
    
        const-string v5, "eng"
    
        invoke-virtual {v3, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
    
        move-result v3
    
        invoke-interface {v0, v1, v3}, Landroid/content/SharedPreferences;->getBoolean(Ljava/lang/String;Z)Z
    
        move-result v5
    
        const/4 v5, 0x1
    Bây giờ Save lại class Settings.smali

    Bước 3 : Recompile lại LGSettings3_1
    Bước 4 : Sửa gì thay thế đó vào file LGSettings3_1.apk cũ
    Bước 5 : Thay thế file LGSettings3_1.apk mới vào system/priv-app . Nhớ chép file cũ ra đâu đó nhé
    Bước 6 : Vào data/data xóa cả thư mục com.android.settings đi nhé
    Bước 7 : Reboot máy => OK

    Chúc các bạn thành công. Có thể áp dụng cho các máy khác nhé .


    Xem bài trước

    Xem thêm các bài viết hữu ích khác tại đây
     
    Last edited: 25 Tháng sáu 2014
    nghisaocung thích bài này.

Chia sẻ trang này