我对Android的解决方案,但我还没有开始在iOS上打工 (聊胜于无;) 首先创建一个BroadcastReceiver
public class Localize: BroadcastReceiver
{
public static Context context;
public Localize(Context ctx)
{
context = ctx;
}
public override void OnReceive (Context context, Intent intent)
{
isNetworkAvailable (context);
}
public void isNetworkAvailable(Context context)
{
Boolean state = false;
ConnectivityManager connectivity = (ConnectivityManager)
context.GetSystemService(Context.ConnectivityService);
if (connectivity != null)
{
NetworkInfo[] info = connectivity.GetAllNetworkInfo();
foreach (NetworkInfo nwork in info)
{
if (nwork.GetState() == NetworkInfo.State.Connected) {
ConnectionDetected();//Execute your fonction here
break;
}
}
}
}
然后在您的活动意图注册您的广播接收器(以MainActivity例如)
IntentFilter filter = new IntentFilter(ConnectivityManager.ConnectivityAction);
receiver = new Localize(this);
RegisterReceiver(receiver, filter);
这应该工作,只要你的应用程序运行。如果你想运行,即使您的应用程序被杀害,你应该创建一个服务,然后章服务ister广播接收器在您的服务..
我做了具体每个平台,如果你有兴趣,我可以提供一个答案,否则我不知道它是否存在XF .. –
当然。我可以使用依赖服务。请给我一个相同的平台特定的解决方案。 – Dipak