2016-10-04 128 views
1

PlayStore在安裝應用程序之前/之後向主屏幕添加應用程序快捷方式時,是否使用「com.android.launcher.action.INSTALL_SHORTCUT」動作發送任何廣播消息?PlayStore將應用程序圖標添加到主屏幕時收到通知

我聽到下面的方法:

  1. 添加<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" />manifest.xml

  2. 擴展BroadcastReceiver類,然後覆蓋onReceive()方法

這是真的,上面的2個步驟Play商店將應用快捷方式添加到主屏幕時,是否會讓應用得到通知?

回答

0

這裏我不認爲有任何聽衆可以直接聽快捷鍵。但你可以通過一些棘手的方式,如:

1)使用監聽器收聽應用程序安裝。你可以通過註冊以下方式實現它:

<receiver android:name=".apps.AppListener"> 
<intent-filter android:priority="999"> 
    <action android:name="android.intent.action.PACKAGE_ADDED"/> 
    <action android:name="android.intent.action.PACKAGE_INSTALL"/> 
    <data android:scheme="package"/> 
</intent-filter> 

2)在你的AppListener廣播接收器時,你會得到它觸發,保持5個延遲到10第二和執行操作來獲得使用所有已安裝的應用程序:

List<ApplicationInfo> packs = pm.getInstalledApplications(0); 
  • 現在你已經安裝的包,遍歷他們callgetLaunchIntentForPackage()在每個項目上

  • 如果一個有效的意圖是返回,這意味着它存在於啓動器上,否則如果它返回null,則包不從主屏幕啓動。

原因:主屏幕快捷方式在啓動應用程序的子集:)

相關問題