0

iPhone アプリケーションの最初のバージョンをビルドしたときに、セッション コマンドを入力するのを忘れていました。ここで、すべての PHP 関数にセッション チェック コマンドを記述しました。

ただし、最初のバージョンはセッションが時々失われるため、うまく機能していません。多くの人がすでに最初のバージョンを使用しており、現時点では変更できません。

そこで、php コマンドで iPhone の udid 値を取得できれば、セッション データを失ったユーザーに新しいセッション値を与えられるのではないかと考えていました。または、これを実現するための他の解決策はありますか?

ありがとうございました。

4

1 に答える 1

0

Webサービスを使用してiphoneからudidをphpに送信すると、それにアクセスできます。

 NSString *token=[NSString stringWithFormat:@"%@",deviceToken];
token= [token stringByReplacingOccurrencesOfString:@"<" withString:@""];
token= [token stringByReplacingOccurrencesOfString:@">" withString:@""];
token= [token stringByReplacingOccurrencesOfString:@" " withString:@""];
NSString *post = [NSString stringWithFormat:@"token=%@",token];
NSData *postData = [post dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES];
NSString *postLength = [NSString stringWithFormat:@"%d",[postData length]];
NSMutableURLRequest *request = [[[NSMutableURLRequest alloc] init] autorelease];
[request setURL:[NSURL URLWithString:[NSString stringWithFormat:@"http://www.server.com/web-service/save-token.php?"]]];
 [request setHTTPMethod:@"POST"];
[request setValue:postLength forHTTPHeaderField:@"Content-Length"];

[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Current-Type"];
[request setHTTPBody:postData];
NSData *returnData = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];
NSString *returnstring = [[NSString alloc] initWithData:returnData encoding:NSUTF8StringEncoding];
于 2012-05-16T12:40:21.917 に答える