例如,我想在代碼/命令行中啓動gmail,但我不知道它的主要活動名稱。android - 如何找到應用程序的主要活動的名稱?
日上午開始-n com.google.android.gm/.XXXXX
這可以通過反編譯的APK,但是很難。
謝謝。
例如,我想在代碼/命令行中啓動gmail,但我不知道它的主要活動名稱。android - 如何找到應用程序的主要活動的名稱?
日上午開始-n com.google.android.gm/.XXXXX
這可以通過反編譯的APK,但是很難。
謝謝。
您可以將您的手機到計算機,並期待在DDMS日誌,應用程序啓動印有,例如:
05-11 09:19:15.725: INFO/ActivityManager(96): Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x2000000 cmp=com.google.android.gm/.ConversationListActivity bnds=[125,410][235,540] } from pid 2457
所以,com.google.android.gm/.ConversationListActivity
,似乎是一個正確的選擇,至少,那是什麼該圖標似乎啓動。
你並不需要知道它的名字,而不是你應該使用implicit intent 與類型和一些額外沿指定動作,例如
final Intent intent = new Intent();
intent.setType("message/rfc822");
intent.setAction(Intent.ACTION_SEND);
intent.putExtra(Intent.EXTRA_SUBJECT, "Some subject");
系統會搜索可用來運行這個意圖的組件。
這可以在應用程序的清單中找到。
主要活動是activity
與intent-filter
誰的名字是android.intent.action.MAIN
。
第1步:在命令提示符下啓動「adb logcat」。
第二步:打開應用程序(無論是在模擬器或真實設備)
只要到Android包N打開Android清單文件N看看這個活動元素
<activity>
<intent-filter>
<action android:name="android.intent.action.MAIN" />
</activity>
我無法查看清單文件,除非我們反編譯apk。 – pengguang001 2011-05-13 14:08:26