2015-09-14 4 views
1

Я хотел бы иметь возможность обмениваться контентом в нескольких приложениях. Для этого я использую схему URL. Но если приложение не установлено, я хотел бы запустить веб-версию соответствующего приложения.Запуск веб-приложения, когда приложение не установлено

Что-то вроде этого:

func share(urlScheme: String) 
{ 
    if (UIApplication.sharedApplication().canOpenURL(NSURL(string:urlScheme)!)) 
    { 
     UIApplication.sharedApplication().openURL(NSURL(string: string:urlScheme)!) 
    } 
    else 
    { 
     // open web version somehow 
    } 
} 
+0

Вы имеете в виду пользователь направит на страницу установки приложения в ITunes от того, где они могут загрузить это приложение? –

+0

Нет, к веб-приложению в Safari – Luda

ответ

3

здесь добавить некоторые образцы для Uber настроить себя, причина, мы не знаем, что ваш urlScheme содержит

, например

Swift

func share(urlScheme: String) 
{ 
if (UIApplication.sharedApplication().canOpenURL(NSURL(string:"uber://")!)) 
{ 

    // if your app is available it open the app 
    UIApplication.sharedApplication().openURL(NSURL(string: string:"uber://?openapp")!) 
} 
else 
{ 
    open web version somehow 
    // it redirect to safari, safari directly open the web page on uber application, it does not redirect to app store 

    UIApplication.sharedApplication().openURL(NSURL(string: string:"http://m.uber.com/?opneapp")!) 
} 
} 

Objective-C

NSString *getUberDetails=[NSString stringWithFormat:@"client_id=vbtCwkGyqvDupQhpCcgCMo4VE-gIRw42&action=setPickup&pickup[latitude]=%f&pickup[longitude]=%f&pickup[nickname]=OuttAPP&dropoff[latitude]=%f&dropoff[longitude]=%f&dropoff[nickname]=%@&product_id=%@",[latitude floatValue],[longitude floatValue],[droplatitude floatValue],[dropLongtitude floatValue],[dropAddress stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding],[[huberTableArr objectAtIndex:indexPath.row]objectForKey:@"productID"]]; 


    if ([[UIApplication sharedApplication] canOpenURL: [NSURL URLWithString:@"uber://"]]) 
    { 


     [[UIApplication sharedApplication] openURL:[NSURL URLWithString:[NSString stringWithFormat:@"uber://?%@",getUberDetails]]]; 

    } 
    else 
    { 
     [[UIApplication sharedApplication] openURL: [NSURL URLWithString:[NSString stringWithFormat:@"http://m.uber.com/?%@",getUberDetails]]]; 
    } 
} 
+0

так же, как добавить свой ** String ** здесь –

Смежные вопросы