Pergunta

Agora usei vários aplicativos que lançam a loja iTunes diretamente do aplicativo. Estou usando alguns no meu iPod 2G 2.1.

Sei que há um bug no 2.1 que impede que os links do AppStore funcionem no Safari, mas de alguma forma as pessoas estão lançando o AppStore diretamente, nem mesmo através do Safari.

Como você faz isso? É um recurso OpenUrl sem documentos?

Foi útil?

Solução

No iTunes, arraste o ícone do seu aplicativo para a área de trabalho, isso fornecerá um link que você pode usar diretamente (por exemplo, http://phobos.apple.com/webobjects/mzstore.woa/wa/viewsoftware?id=284036524&mt=8 Lança a AppStore para palavras cruzadas, tanto em uma área de trabalho quanto em um iPhone).

Coloque isso em um nsurl e chame o OpenUrl nele.

Outras dicas

Para ser extremamente conciso:

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

Se você deseja enviar a todos os aplicativos para um desenvolvedor, use

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

Estes funcionam para iOS 4.1

Veja tambémComo vincular a aplicativos na App Store

Eu descobri como entrar direto na página de revisão para um aplicativo na AppStore.

Basicamente, é feito como abaixo, fique à vontade para ler meu blog publicar sobre isso.

- (IBAction)gotoReviews:(id)sender
{
    NSString *str = @"itms-apps://ax.itunes.apple.com/WebObjects/MZStore.woa";
    str = [NSString stringWithFormat:@"%@/wa/viewContentsUserReviews?", str]; 
    str = [NSString stringWithFormat:@"%@type=Purple+Software&id=", str];

    // Here is the app id from itunesconnect
    str = [NSString stringWithFormat:@"%@289382458", str]; 

    [[UIApplication sharedApplication] openURL:[NSURL URLWithString:str]];
}

Se você deseja mostrar os detalhes do aplicativo em vez das análises, você pode usar o URL como este:

NSString *appId    = @"app id";
NSString *endPoint = [NSString stringWithFormat:@"phobos.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=%@&mt=8", appId];
NSString *link     = [NSString stringWithFormat:@"itms-apps://%@", endPoint];

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:link]];

Eu testei isso no meu iPhone com o iOS 6.1 e o redirecionarei para o aplicativo da App Store imediatamente.

Ben Gottlieb está certo, mas há uma maneira mais rápida de obter o URL: você pode clicar com o botão direito do mouse em qualquer ícone do aplicativo no iTunes e selecionar "Copiar URL do iTunes Store".

Então ligue UIApplication openURL nele.

Certifique -se de dizer "phobos.apple.com" e não "iTunes.apple.com"

O primeiro abre a App Store diretamente, enquanto a última abrirá o MobileSafari primeiro, depois a App Store.

Você pode obter seu Appid no iTuNESCONNECT.APPLE.com "Gerenciar seus aplicativos"

Se você não deseja obter o link para o iTunes, pode fazer isso.

  1. Selecione seu aplicativo na AppStore
  2. Clique no botão Diga a um amigo no canto superior direito.
  3. Envie o link por e -mail para si mesmo

Eu tive esse trabalho no momento em que o link do iTunes não teria.

Se você possui um link de afiliado e você ainda gostaria de abrir o aplicativo da App Store diretamente sem Safari no meio, você pode usar um UIWebView oculto ou uma NSURLConnection. Para este último, veja este post http://gamesfromwithin.com/handling-app-store-and-linkshare-links

Aqui está o código que eu uso e o testei nas várias versões do iOS mencionadas. Obviamente, mude o ID do cliente para ser o seu:

- (void)showOurAppsInAppStore
{        
    NSString *searchUrl = nil;
    // iPad
    if ([DeviceController isDeviceAnIpad]) {
        searchUrl = @"itms-apps://itunes.apple.com/us/artist/seligman-ventures-ltd/id326161338";
    }
    // iPhone / iPod Touch
    else {
        // iOS 7+
        if ([DeviceController isDeviceOperatingSystemAtleast:@"7.0"]) {
            searchUrl = @"itms-apps://itunes.apple.com/artist/seligman-ventures-ltd/id326161338";
        }
        // iOS 6
        else if ([DeviceController isDeviceOperatingSystemAtleast:@"6.0"]) {
            searchUrl = @"itms-apps://ax.itunes.apple.com/artist/seligman-ventures-ltd/id326161338";
        }
        // Pre iOS 6
        else {
            NSString *companyName = @"Seligman Ventures";
            searchUrl = [NSString stringWithFormat:@"http://phobos.apple.com/WebObjects/MZSearch.woa/wa/search?WOURLEncoding=ISO8859_1&lang=1&output=lm&country=US&term=%@&media=software", [companyName stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
        }
    }

    [[UIApplication sharedApplication] openURL: [NSURL URLWithString:searchUrl]];
}

Se você está apenas lançando seu aplicativo ... ainda não terá um "ID do aplicativo" ... então nenhum desses métodos funcionará.

Eu tive que inserir um "link não trabalhador" no meu v1.0 ... e depois posteriormente na minha atualização v1.1 ... adicionou o link real e o ID do aplicativo #.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top