Red de conocimiento informático - Material del sitio web - Cómo abrir AppStore en una aplicación de iOS

Cómo abrir AppStore en una aplicación de iOS

Hay dos formas de abrir AppStore en una aplicación iOS: una es saltar a Appstore fuera de la aplicación y la otra es saltar a Appstore dentro de la aplicación, como se muestra en el siguiente código fuente.

#import "ViewController.h"

#import

@interface ViewController ()<.SKStoreProductViewControllerDelegate>

@end

@implementation ViewController

- (void)viewDidLoad {

[super viewDidLoad];

//primero método Saltar directamente

UIButton *btn = [[UIButton alloc]initWithFrame:CGRectMake(100, 100, 100, 50)];

btn.backgroundColor = [UIColor redColor];

[btn setTitle:@"Direct Jump" forState:UIControlStateNormal];

btn.tag = 1;

[btn addTarget.self action:@selector( btn:) forControlEvents:UIControlEventTouchUpInside];

//El segundo método salta dentro de la aplicación

UIButton *btnT = [[UIButton alloc] initWithFrame: CGRectMake (100, 300, 100, 50)];

btnT.backgroundColor = [UIColor purpleColor];

btnT.tag = 2;

[btnT setTitle . @"Salto en la aplicación" forState:UIControlStateNormal];

[btnT addTarget:self action:@selector(btn:) forControlEvents.UIControlEventTouchUpInside];

[self.view addSubview :btn];

[self.view addSubview:btnT];

}

- (void)btn:( UIButton *)btn{

if (btn.tag == 1) {

//primer método Saltar directamente

[[UIApplication shareApplication] openURL:[NSURL URLWithString:@"itms- apps ://itunes.apple.com/app/id1018221712"]];

}else{

//El segundo método salta dentro de la aplicación

/ /1: Importar StoreKit.framework, agregar el marco en el controlador #import <.StoreKit/StoreKit.h>

//2: Implementar el proxy SKStoreProductViewControllerDelegate

SKStoreProductViewController * storeProductViewC

ontorller = [[SKStoreProductViewController alloc] init];

storeProductViewContorller.delegate = self;

// ViewController *viewc = [[ViewController alloc]init];

// __weak typeof(viewc) débilViewController = viewc;

[ storeProductViewContorller loadProductWithParameters:

//appId

@{SKStoreProductParameterITunesItemIdentifier: @" 1018221712"} completeBlock :^(resultado BOOL, NSError *error) {

//devolución de llamada

if(error){

NSLog(@"error %@",error );

}else{

//Interfaz de aplicación AS

[self presentViewController:storeProductViewController animado:SÍ finalización: nulo];

}

}];

}

}

}

#pragma mark - botón de cancelación de calificación oyente

//cancelar botón de escucha

- (void)productViewControllerDidFinish: (SKStoreProductViewController *) viewController{

[self dismissViewControllerAnimated:YES complete:nil];

}