2012-05-11 11 views
8

Kullanıcıların birbirleriyle e-posta göndererek verileri paylaşabilecekleri bir uygulama oluşturuyorum. Bu postada benim app için bir bağlantı var (benim uygulama için bir URL şeması oluşturdum) Ama kullanıcılar benim iPhone'umda uygulamam varsa, o zaman bağlantıyı tıklattığında, hiçbir şey olmuyor.Url şeması: Açık uygulama veya postadan Appstore

Sorum: Başvuru kullanıcının iPhone'da yüklendiğinde benim uygulamayı çalıştırın ve bu uygulama

yüklü değilse App Store'u veya bir web sitesi başlatmak için yapabileceği nasıl teşekkür ederiz

+0

İki bağlantıya ihtiyacınız var gibi görünüyor. – paulmelnikow

+0

"Bu uygulamama sahip değilseniz buraya tıklayın" gibi mi? –

+0

Hm, başka olasılıklar var gibi görünüyor: http://stackoverflow.com/questions/1108693/is-it-possible-to-register-a-httpdomain-based-url-scheme-for-iphone-apps- gibi/1109200 # 1109200 – paulmelnikow

cevap

6

canOpenURL aradığın şey. Eğer bir web sayfası veya html e-posta bunu yapmak istiyorsanız, burada cevap bulmak

NSURL* twitterURL = [NSURL URLWithString:[NSString stringWithFormat:@"twitter:@%@", twitterUser]]; 

if ([[UIApplication sharedApplication] canOpenURL:twitterURL]) { 
    [[UIApplication sharedApplication] openURL:twitterURL]; 
} else { 
    NSURL* url = [NSURL URLWithString:@"http://itunes.apple.com/us/app/twitter/id333903271?mt=8"]; 
    [[UIApplication sharedApplication] openURL:url]; 
} 

DÜZENLEME: https://stackoverflow.com/a/627942/550177

İşte

twitter uygulaması başlatılması için bir örnektir

ve burada: https://stackoverflow.com/a/1109200/550177

+1

OP Mail.app bir bağlantı hakkında soruyor. – paulmelnikow

+0

İki bağlantıyı denedim ama window.location = ... çalışmasını sağlayamıyorum. E-postalarda çalıştığından emin misin? –

+0

Hayır, HTML kodlarına JavaScript Kodunu nasıl yerleştireceğimi bilmiyorum. Afedersiniz. – Felix

3

Yukarıdaki cevap güncel değil. Yüklü, ancak App Store'a güvenle geri dönmek için uygulamayı açmak için, bir kenar kenarları ve gerekli olduğu gibi kendiniz inşa etmeye çalışmak yerine bir şube derin bağlantı (https://branch.io) oluşturmanızı öneririz. Javascript, iOS'un her yeni sürümünde değişmeye devam ediyor.

Ancak, kendiniz barındırmak isterseniz, myapp:// uygulamanızın URI şeması ve itms-apps://itunes.apple.com/app/yourappid App Store URL'niz olduğu aşağıdaki snippet'i kullanabilirsiniz.

window.location = "myapp://"; 
setTimeout(function() { 
    window.location = "itms-apps://itunes.apple.com/app/yourappid"; 
}, 500); 

Sen window.onload bu çağırabilir ve sayfa yüklendiğinde, daha sonra güvenli bir şekilde 500 milisaniye sonra mağazaya geri düşmek ne zaman uygulamayı açmak için çalışacaktır.