2014-02-15 37 views
0

我試圖從UIAlertView在appstore中打開一個應用程序,當otherButtonTitle。問題沒有發生。通過itms-apps打開appstore

我檢查了其他按鈕時按下,如果此方法被調用,它是。我猜測問題在於openURL。 appId包含沒有任何whiteSpace的應用的名稱,如「youtube」。鏈接怎麼沒有打開?我試過在尋找其他線程,這是一個應該在AppStore的

- (void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex: (NSInteger)buttonIndex 
{ 
    if (buttonIndex == 1) 
    { 
     NSString *appId = [[otherArray objectAtIndex:currentRow] objectForKey:@"link"]; 
     [[UIApplication sharedApplication] openURL:[NSURL URLWithString:[NSString stringWithFormat: @"itms-apps://itunes.apple.com/app/%@?mt=8", appId]]]; 

    } 


} 
+0

選中此鏈接(https://developer.apple.com/library/ios/qa/qa1633/_index.html) – Pawan

回答

1

你需要把它分解成更小的步驟和調試步驟,打開應用程序的代碼。

首先,調用didDismiss方法。

接下來,是執行if語句內的代碼。

解決這個問題的最簡單方法是在分配appID的代碼上設置一個斷點,然後確保代碼在那裏打破。

執行該行後,確保appId包含您期望的字符串。

網絡中,您應該將最後一行改寫爲首先創建URL的步驟,然後調用openURL。瀏覽創建URL的代碼,以確保正確創建它。

您可能需要複製URL字符串並將其粘貼到瀏覽器中,以查看它是否可以在那裏使用。