2013-05-08 42 views
30

tôi có thể thiết lập thuộc tính hệ thống trên một điện thoại Android (có quyền phù hợp) sử dụng setprop và một cặp giá trị key:thuộc tính hệ thống Android - unset chúng trên dòng lệnh

$ adb shell setprop persist.this.is.my.property testing 

Sau đó tôi có thể nhận được tài sản:

$ adb shell getprop persist.this.is.my.property 
testing 

Nhưng tôi không thể xóa khóa ngay bây giờ được đặt (vì vẫn còn ở đầu khóa khi điện thoại khởi động lại). Không có unsetprop hoặc rmprop hoặc bất cứ thứ gì tương tự. Cố gắng đặt giá trị thành nil hoặc null đặt thành giá trị và để trống nó sẽ nhắc hướng dẫn trợ giúp.

Có ai biết cách hủy đặt thuộc tính hệ thống khỏi dòng lệnh sau khi đã được đặt không?

(Tôi biết rằng tôi có thể viết một nhị phân nhỏ để làm điều này nhưng tôi không muốn ở giai đoạn này.)

Trả lời

42

Để loại bỏ tài sản:

rm /data/property/persist.this.is.my.property && reboot 
+0

Con đường đúng thực /data/property/persist.this.is.my.property – mmigdol

+2

là Điều này không đúng nữa. Tôi đã thêm một giá trị thông qua 'setprop wrap.path.to.my.app' và nó không được liệt kê thông qua' ls/data/property' nhưng vẫn được xác định nếu tôi nhập 'getprop' –

+4

' setprop wrap.com.secusmart.secuvoice " "' đã giúp tôi –

-5

Chỉ cần khởi động lại thiết bị, tài sản sẽ không được đặt.

+4

Không, nó sẽ không tồn tại khi bắt đầu tên thuộc tính đảm bảo rằng thuộc tính vẫn còn ngay sau khi điện thoại được đặt lại. – Stu

4

Bạn có thể xóa thuộc tính với adb shell setprop persist.this.is.my.property ""

+0

Điều này vẫn để lại chìa khóa trong danh sách thuộc tính của điện thoại, bạn có thể xem nó bằng cách gõ 'getprop' mà không chỉ định tên khóa. – Stu

-1

Nó phù hợp với tôi.
trên hệ điều hành MacOS:
echo -e "setprop wrap.$PACKAGE_NAME \"\"\n exit" > .temp adb shell < .temp rm ./.temp

trên android:
setprop wrap.$PACKAGE_NAME ""

Các vấn đề liên quan