5

iPhoneがVPNに接続されているかどうかをプログラムで検出する必要があります。URL を読み込もうとするアプリを開発しています。このページは、デバイスが VPN に接続されている場合にのみ開きます。この URL をロードする前に、VPN 接続を確認する必要があります。私は次のことを試しました。しかし、これは期待どおりに機能していません。

- (BOOL)checkForVPNConnectivity {
  NSDictionary *dict = (__bridge NSDictionary *)(CFNetworkCopySystemProxySettings());
  //NSLog(@"cfnetwork proxy setting : %@", dict);
  return [dict count] > 0; 
 }
4

4 に答える 4

0

上記の問題に対して簡単な回避策を使用できます。

Appleの到達可能性を使用して、iOSデバイスがインターネットに接続されているかどうかを確認してください. インターネット接続エラーがスローされない場合は、NSURLConnection を使用して VPN 依存 URL にアクセスしてみてください。そのような成功 200 が得られた場合、つまり、VPN に接続されています。この要求がホストが見つからないか、-1001 のようなエラーを返す場合は、 VPN に接続されていません。次に、対応する VPN 接続エラーをユーザーにスローできます。コーディングをお楽しみください.... Arun kumar

詳細については、私のブログ http://aruntheiphonedeveloper.blogspot.inを参照してください。

于 2015-02-14T08:14:40.070 に答える