2011-06-24 4 views
1

J'ai donc un problème assez simple, que je ne sais pas comment faire (quelque chose de nouveau pour tout ici). Je suis en train de développer une application pour iPhone que j'ai l'intention de n'utiliser que moi-même - alors pensez-y petit pour le moment:) Disons que tout ce que fait mon application est le suivi de mon emplacement toutes les heures. Tout ce que je veux faire, c'est de pouvoir lire cette information pas sur l'iphone, disons sur un fichier sur mon ordinateur. Comment puis-je envoyer cette information de mon application à un ordinateur personnel? Je suppose que je vais devoir mettre en place un serveur/base de données ou quelque chose sur ma machine personnelle?envoyer des informations de mon application iphone à mon ordinateur

Quelqu'un peut-il aider s'il vous plaît avec une étape par étape sur la façon de s'y prendre? Je n'ai littéralement aucune idée par où commencer ...

Merci!

Répondre

1

Vous aurez besoin d'un écouteur où envoyer vos données. Par exemple, vous pourriez configurer une classe de communication dans votre projet qui serait responsable de servir de support entre vos applications. Vous devez ensuite configurer un écouteur sur un serveur ou sur votre machine pour écouter les demandes.

iPhone> Classe de communication> Service Web (.NET dans ce cas)

Vous pouvez utiliser l'objet NSURLConnection pour servir cet objectif. Par exemple.

- (void) sendSomethingToServer:(NSString*)myData{ 
     NSString*url = [[NSString alloc]initWithFormat: @"http://example.com/service.asmx/RecordData?myData='%@'", myData]; 
     [self createRequest:url]; 
     [url release]; 
    } 

http://example.com/service.asmx/RecordData étant l'emplacement et la méthode de votre service Web.

Voici une méthode de requête générique que j'ai créée et qui définit les en-têtes comme un paquet JSON.

- (void) createRequest: (NSString*)urlFormatted { 
    NSLog(@"Request Sent"); 
    NSURL *url = [NSURL URLWithString: urlFormatted]; 
    NSMutableURLRequest *request =[NSMutableURLRequest requestWithURL: url]; 

    [request setHTTPMethod:@"GET"]; 
    [request setValue:@"application/json; charset=UTF-8" forHTTPHeaderField:@"Content-Type"]; 
} 

Et sur le back-end, sur votre serveur Web, vous auriez une méthode qui reçoit les données. Évidemment, vous pouvez utiliser n'importe quelle technologie que vous voulez sur le serveur. Dans cet exemple, j'utilise .NET sur Mono, par exemple.

[WebMethod(Description = "Generic Client Data)] 
[ScriptMethod(UseHttpGet = true, ResponseFormat = ResponseFormat.Json)] 
public string RecordData(string myData) 
{ 
    // Do something with data 
} 
3

Vous avez juste besoin d'un serveur http, puis vous créez des requêtes HTTP GET/POST pour la configuration de l'url sur votre machine. Vous pouvez utiliser les réponses pour renvoyer des données à l'appareil.

+0

+1 Quelques exemples de cadres que vous pouvez utiliser: Google App Engine (Python/Java/Go), Sinatra (Ruby), Ruby on Rails (Ruby), Django (Python). –

+0

yup, j'utilise habituellement Django –

0

Apple vous aide à démarrer. Rechercher "réseau" dans les docs et développer un client des deux côtés qui utilise votre propre protocole.

+0

Les gars c'est super génial, merci! Je vais essayer d'en faire rapport à tout le monde. Merci!! – TommyG

1

Si vous avez juste besoin de récupérer les données, je crois que vous pourriez utiliser le partage de fichiers. Voici un tutoriel sur la façon de mettre en place que:

http://www.raywenderlich.com/1948/how-integrate-itunes-file-sharing-with-your-ios-app

Il vous permettra de visualiser les fichiers itunes et les copier avant et en arrière lorsque l'iPhone est connecté via USB. Si tout ce que vous avez à faire est d'obtenir un fichier de données brutes sur votre ordinateur, cela vous coûtera probablement moins cher que d'avoir à construire/exécuter un serveur complet juste pour transférer le fichier.

Questions connexes