2010-12-15 62 views
1

當用戶按下home鍵的應用程序應該重新啓動或者它不應該允許用戶終止。 這樣做的可能方式是什麼?該應用程序應保持在iPad上,除非用戶退出應用程序而不是從主頁按鈕。推出iPad應用程序再次

我正在考慮應用程序的終止,如果它崩潰或其他原因,這是確定應用程序應該退出毫無疑問的,但通常不爲用戶按下home鍵的應用程序應該重新啓動。

回答

1

這種行爲將與99%的把握讓您的應用被拒絕的應用程序商店。

用戶(和蘋果)期望的正常行爲是當按下主頁按鈕時,應用程序僅退出。任何其他退出應用程序的方式,包括特殊按鈕,過度崩潰等都會將其標記爲拒絕。

+0

「MenuPad」應用程序將被蘋果拒絕,只需檢查此應用程序在應用程序商店中可用即可。 – ashish 2010-12-15 14:37:28

+0

...也許它屬於剩下的1% – 2010-12-15 15:05:51

+1

FYI內,Kiosk模式在菜單鍵盤並不適用於iOS 4.2.1的工作,所以我想蘋果肯定插入孔。 – 2010-12-20 08:33:38

4

有沒有辦法做到這一點。無論如何,這將是一個可怕的用戶體驗,因此,不鼓勵。

+0

我在一個應用程序中看到了這個特性,我的要求就是這樣。這是可能的,否則這個應用程序不應該有這個功能。 「MenuPad」應用程序。 – ashish 2010-12-15 13:53:21

+0

我剛剛下載了「MenuPad」並按下home鍵確實退出了應用程序。我在iOS 4.2上測試過。如果他們阻止了主頁按鈕退出應用程序,他們就不會在應用程序商店中。蘋果會拒絕該應用程序。 – Jasarien 2010-12-15 14:35:13

+0

另外它是「關閉時重新啓動」選項對iOS 4.2沒有任何影響 - 事實上,這是可能的顯然被蘋果視爲一個錯誤,並修復。 – Jasarien 2010-12-15 14:37:25

0

只能適用於iOS 3.2 做到這一點在applicationWillTerminate做

NSString *UrlString = [NSString stringWithString: @"yourAppSchema:"]; 
    [application openURL:[NSURL URLWithString:[UrlString stringByAddingPercentEscapesUsingEncoding: NSUTF8StringEncoding]]]; 

首先,你需要更新你的應用程序中的Info.plist以支持URL方案

<key>CFBundleURLTypes</key> 
    <array> 
     <dict> 
      <key>CFBundleURLSchemes</key> 
      <array> 
       <string>yourAppSchema</string> 
      </array> 
      <key>CFBundleURLName</key> 
      <string>com.yourCompany.yourAppSchema</string> 
     </dict> 
    </array> 

你的方式這樣做是爲了把你的iPad在像This 和也讀這thread

+0

當用戶按下home鍵的應用程序在後臺狀態進入這個委託被稱爲 - (void)applicationDidEnterBackground:(UIApplication *)應用程序 所以這裏的URL啓動不會再次打開該應用程序,除非它進入活動狀態。 - (void)applicationWillTerminate:(UIApplication *)應用程序僅當用戶從應用程序中刪除應用程序時纔會調用此應用程序。 – ashish 2010-12-15 13:59:55

+0

並在此代表中重新打開您的應用程序。這是做到這一點的唯一方法。沒有其他方法來禁用主頁按鈕。我已經向蘋果發佈了一個bug,這裏是迴應:「經過進一步調查後,已確定這是一個已知問題,目前正在進行工程調查。」 – 2010-12-15 14:08:09

+0

但在iOS 4.2中,即使我們在 - (void)applicationWillTerminate:(UIApplication *)應用程序中編寫自定義url,它也不會執行。任何原因。我的網址方案已經設置,我通過在safari應用程序中打開進行了檢查 - ashish 6分鐘前 – ashish 2010-12-15 14:19:31