私のアプリは UIWebView を使用して、WiFi 経由でコントロール メッセージをリモート デバイスに送信します。メッセージは、HTML ヘッダー、IP アドレス、および CGI コマンドで構成されます。IP アドレスは、ターゲット デバイスの静的アドレスと一致します。WiFi 設定は、ワイヤレス ルーター (つまり、Airport Express) 経由で静的 IP アドレスに接続されていることも示しています。
iPhone のステータス バーには WiFi アイコンが表示されませんが、コードは iOS6 または iOS7 を実行している iPhone4 で確実に動作するように見えます。ただし、iPhone5 または iPhone5C では動作しません。
これらは定数です:
static NSString* const HTTP = @"http:/"; // CGI header
static NSString* const ip = @"192.168.50.87"; // ip address
static NSString* const INITIALISE = @"rc.cgi?c=99"; // Switch device
そして、ここに方法があります:
- (void)loadInitialise {
UIWebView *initialise = [[UIWebView alloc] init];
NSString *switchInit = [NSString stringWithFormat:@"%@/%@/%@", HTTP, ip, INITIALISE];
NSLog(@"%@", switchInit);
NSURL *webURL = [NSURL URLWithString: switchInit];
NSURLRequest *webURLRequest = [NSURLRequest requestWithURL:webURL];
[initialise loadRequest:webURLRequest];
UIWebView が iPhone4 では動作するが iPhone5 では動作しない理由を誰かが説明できますか? ありがとう。