データ同期のために VPN 接続を必要とするアプリケーションに取り組んでいます。到達可能性クラスを使用して、ホストの可用性を確認しています。
@機能 :- アプリがJunos Pulseアプリを介して VPN に接続されている場合、VPN 接続が失われた場合にデータ同期を続行し、アラート メッセージをスローする必要があります。現在、以下のシナリオで機能しています。
@作業シナリオ:- VPN は最初に接続され、同期を完了してから、VPN を Junos Pulse から手動で切断しました。今、私は再び同期しようとしていますが、予想されるアラートをスローしています。
@問題のシナリオ:-最初に同期を完了し、アプリをアイドル状態のままにして、VPN を自動的に切断しました。VPNがなくなった後、もう一度同期しようとしています。VPN が存在しないというアラートは表示されません。同期機能を試みますが、VPN なしではサーバーにアクセスできないため失敗します。
インターネットで解決策を探すのに疲れました。ここにコード スニペットを貼り付けます。どんな提案でも大歓迎です。
-(BOOL)checkHostAvailability
{
Reachability *objReach = [Reachability reachabilityWithHostName:[self hostServer]];
NetworkStatus hostAvailability = [objReach currentReachabilityStatus];
if(hostAvailability == ReachableViaWiFi || hostAvailability == ReachableViaWWAN) {
RLog(@"Host is Reachable");
return YES;
}
return NO;
}