簡體   English   中英

如何獲取您的iPhone應用程序列表

[英]How to get a list of your iphone apps

我如何獲得我所有iPhone應用程序的列表(即使每個應用程序的指針都會有所幫助)?

我正在開發一個包含一些屏幕的應用程序,該屏幕應該包含我所有已安裝應用程序的列表(帶有其圖標),將來選擇啟動它的選項取決於我的其他功能。

非常感謝!

無法完成此操作,因為每個應用都已沙箱化。

如果選擇的應用程序具有自定義URL方案,則可以確定它們是否已安裝。 例如,可以使用自定義url方案“ fb://”啟動Facebook應用,但不能保證它們是唯一的,因此其他應用可以使用眾所周知的屬於另一個應用的方案。 同樣,並非所有應用程序都具有自定義URL方案,並且您需要一些主列表(需要不斷更新才能准確)以檢查每個應用程序的存在。 因此,您可能會檢測到具有自定義URL方案的知名應用程序的選擇列表,但永遠不會獲得所有這些列表。

如果您只想檢測自己的應用程序,則可以使用自定義URL方案,幾乎可以肯定的是,每個應用程序都將設置該URL方案,並對其進行檢查。

您也可以越獄設備,但是我假設您想要在應用商店中分發的應用中使用此功能,因此您將無法添加需要越獄才能工作的功能。

編輯:

這是顯示檢測到正在安裝的Facebook應用程序的示例:

if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"fb://"]])
{
    // Handle the Facebook app being installed
}

但是請注意,這不會為您提供有關該應用程序的任何信息。 任何應用程序開發人員都可以在自己的應用程序中添加“ fb://”自定義網址方案,這會使它錯誤地檢測到它。

如果要查找iOS應用的自定義網址方案列表,只需在Google中搜索即可。

另一種解決方法是向用戶展示應用商店中的所有應用。 如果他們的設備上安裝了任何應用程序,則在iOS 7中,每個應用程序旁邊都會顯示一個名為“打開”的按鈕。

例如,您可以有一個UITableViewCell或一個顯示“ Checkout Our Apps”的UIButton。 在代碼中,您將添加它。

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"itms://itunes.com/apps/sixaxisllc"]];

用您的iTunes開發人員名稱替換SixAxis LLC,當用戶單擊它時,它將啟動僅顯示您的應用程序的AppStore應用程序。 (每個價格旁邊都有開盤價或價格金額)

注意:在實際設備上而不是在模擬器中進行測試

在此處輸入圖片說明

由於沙盒環境,您所要做的就是測試是否可以打開自定義URL。 Akosma Software在他的Wiki上保留了一個受歡迎的Url列表: iPhone URL Schemes

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM