Bắt đầu một ứng dụng Android thông qua một tập lệnh shell?


14

Có thể bắt đầu một ứng dụng Android thực tế từ dòng lệnh trong Android không? Ví dụ: giả sử tôi chỉ muốn bắt đầu / đưa ra phía trước lịch của mình. Có cách nào để tôi có thể làm điều này như sau:

startapp com.google.calendar

Câu trả lời:


11

Sử dụng adb, tôi tin rằng nó có thể:

am [start|instrument]
am start [-a <action>] [-d ] [-t <mime_type>]
[-c <category> [-c <category>] ...]
[-e <extra_key> <extra_value> [-e <extra_key> <extra_value> ...]
[-n <component>] [-D] [<uri>]
am instrument [-e <arg_name> <arg_value>] [-p <prof_file>]
[-w] <component>

ví dụ: chúng tôi có chương trình Android với Manifest như dưới đây:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
 package="com.app1.android.xtract">
  <application android:icon="@drawable/icon">
   <activity class=".Contact" android:label="@string/app_name">
    <intent-filter>
    <action android:value="android.intent.action.MAIN" />
    <category android:value="android.intent.category.LAUNCHER" />
   </intent-filter>
  </activity>
 </application>
.
.
</manifest>

Để chạy lệnh phát hành mã như thế này (trong một dòng):

am start -a android.intent.action.MAIN -n com.app1.android.xtract/com.app1.android.xtract.Contact

Thật không may, nó không hoạt động trên SSH đối với tôi, nhưng nó hoạt động khi chạy adbnên tôi sẽ cung cấp cho bạn điều đó :)
Naftuli Kay
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.