Domanda

Sto pensando a un'app che userebbe i geo-promemoria (quelli aggiunti in IOS5, ricordami in una posizione quando lascio / arrivo).Ma ho bisogno di usare questa funzione (infatti, usando solo la posizione) per ottenere la posizione corrente e confrontarlo con la posizione definita dalla mia app e controlla se è la stessa local o non lo è.Se la posizione corrente e definita è la stessa, avvia la mia app.

è possibile?

Spero che tu capisca il mio obiettivo. Grazie in anticipo

È stato utile?

Soluzione

Mentre sarai in grado di monitorare la tua posizione dallo sfondo, tenere presente, non ti avvia automaticamente la tua app.Puoi usare qualcosa come le notifiche locali per richiedere all'utente di aprire l'app.Ma il lancio dallo sfondo automaticamente non è un'opzione.Almeno non un'opzione approvata dall'app store.

Altri suggerimenti

Il controllo per la regione corrente e la regione definita vengono eseguiti automaticamente quando si imposta una regione da monitorare.Il posto migliore per iniziare è leggendo i documenti per CLLocationManagerDelegate, in particolare startMonitoringForRegion:.La cosa che vuoi fare è chiamata "Geofencing".Puoi anche trovare maggiori informazioni in La consapevolezza della posizioneGuida .

AS 'M NOVITÀ PER SVILUPPO DI IPHONE NON SO COME COMANDAZIONAMENTE PRANZO UN'APP MA PUO' AUTO AIUTARE CON IL TRIGGER ARRIVARE SU POSIZIONE PREDEFINATA.Ecco il codice.

1: import corelocation.framework

2: In ViewController.H Posto di file sotto il codice

#import <UIKit/UIKit.h>
#import <CoreLocation/CoreLocation.h>
@interface ViewController : UIViewController<CLLocationManagerDelegate>
@end
.

3: inviewcontroller.m

#import "ViewController.h"
@interface ViewController (){
CLLocationManager *locationManager;
CLRegion *mexicoBoundary;
}

@end

@implementation ViewController

- (void)viewDidLoad
{
   [super viewDidLoad];

locationManager = [[CLLocationManager alloc] init];
[locationManager setDelegate:self];
[locationManager setDistanceFilter:kCLDistanceFilterNone];



CLLocationCoordinate2D regionCords ;
//19.432608,-99.133208 lat, lon for mexico city
regionCords=CLLocationCoordinate2DMake(19.432608,-99.133208);
//5000 below, is in meters-radius 
mexicoBoundary =
[[CLRegion alloc]initCircularRegionWithCenter:regionCords
                                       radius:5000.0
                                   identifier:@"mexico_Day"];

[locationManager startMonitoringForRegion:mexicoBoundary];

}

-(void)locationManager:(CLLocationManager *)manager didEnterRegion:(CLRegion *)region
{
NSLog(@"%@: %@", @"region entered", region.identifier);

}

-(void)locationManager:(CLLocationManager *)manager didExitRegion:(CLRegion *)region
{
NSLog(@"%@: %@", @"region exited", region.identifier);
}



- (void)didReceiveMemoryWarning
{
  [super didReceiveMemoryWarning];
  // Dispose of any resources that can be recreated.
}

@end
.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top