แบ็คกราวน์: ฉันมีอุปกรณ์ USB stick สำหรับ Android (เช่น RikoMagic) ซึ่งส่วนใหญ่ฉันใช้ในโหมด "หัวขาด" เหนือสิ่งอื่นใดฉันได้รู้แล้วว่าจะปิดมันอย่างไรผ่านชุดของ adb และคำสั่ง "am" ภายใน:
adb shell am start -n android/com.android.server.ShutdownActivity
ตอนนี้ฉันกำลังพยายามหาวิธีเปิดและปิดที่เก็บข้อมูลขนาดใหญ่ USB ฉันเข้าใจแล้วว่ามีหน้าต่างกิจกรรมที่จัดเก็บข้อมูล USB ปรากฏขึ้นผ่านคำสั่งต่อไปนี้:
adb shell am start -n com.android.systemui/.usb.UsbStorageActivity
น่าเสียดายที่ฉันไม่สามารถหาวิธีการส่ง "เจตนา" ที่เทียบเท่าเพื่อ "เลิกเมานท์" หรือ "ยกเลิกการแชร์" ปริมาณที่แชร์ (หรือ "ติดตั้ง" หรือ "แบ่งปัน" ให้กับเรื่องนั้น) คำสั่งต่อไปนี้ไม่ทำอะไรเลย:
adb shell am start -n com.android.systemui/.usb.UsbStorageActivity -a android.intent.action.MEDIA_UNSHARED file:///mnt/sdcard
ผมทำอะไรผิดหรือเปล่า? คาถาวิเศษในการติดตั้ง / ยกเลิกการต่อเชื่อมที่เก็บข้อมูลภายในของอุปกรณ์ Android คืออะไร
หมายเหตุ 1: ฉันรู้ว่ามีคำสั่ง "mount" / "umount" ชัดเจนของ Linux อย่างไรก็ตามการติดตั้งหรือยกเลิกการต่อเชื่อมระดับเสียงจะไม่ทำให้ระบบทำงานได้อย่างมีความสำคัญตัวอย่างเช่นการรีสตาร์ทหรือหยุดแอพที่ย้ายไปยังการ์ด SD "umount" อาจจะล้มเหลวเมื่อแอพในการ์ด SD ยังคงทำงานอยู่
หมายเหตุ 2: เห็นได้ชัดว่ามีคำสั่ง "setprop" ที่สามารถเปิด / ปิดการใช้งานที่เก็บข้อมูล USB ได้จนกว่าจะรีบูตครั้งถัดไป อีกครั้งวิธีการทั้งหมดนี้หรือไม่มีอะไรไม่ใช่สิ่งที่ฉันกำลังมองหา แต่ความสามารถในการสลับเปิด / ปิดที่เก็บข้อมูล USB ขนาดใหญ่ในช่วงเซสชั่นเดียวซึ่งสามารถทำได้โดยอินเทอร์เฟซระบบสัมผัส
adb shell setprop sys.usb.config mass_storage