通过app关闭检查互联网连接(Cordova)

时间:2017-03-28 09:11:23

标签: cordova background-process internet-connection

使用Cordova,即使应用程序关闭,有没有办法检查互联网连接?我正在尝试创建一个应用程序,其中如果手机没有连接到互联网,则要发送到服务器的数据存储在本地,一旦手机连接到互联网,就会发送数据。像WhatsApp在离线发送消息时所做的事情。我能够使用以下代码检测连接类型 -

    Dialog builder = new Dialog(listdisplay, android.R.style.Theme_Black_NoTitleBar_Fullscreen);
    builder.requestWindowFeature(Window.FEATURE_NO_TITLE);
    builder.getWindow().setBackgroundDrawable(
            new ColorDrawable(Color.BLACK));
    builder.setContentView(R.layout.imager);

    ImageView image = (ImageView) builder.findViewById(R.id.image);

    Glide.with(finalConvertView.getContext()).load(du.image)
            .diskCacheStrategy(DiskCacheStrategy.ALL).into(image);

    Glide
            .with(finalConvertView.getContext())
            .load(du.image)
            .asBitmap()
            .into(new SimpleTarget<Bitmap>() {
                @Override
                public void onResourceReady(Bitmap resource, GlideAnimation glideAnimation) {
                    image.setImageBitmap(resource); // Possibly runOnUiThread()
                    profileImage=resourec;
                }
            });

    builder.show();
}

因此,如果手机连接到互联网,此代码将返回,虽然这在应用程序运行时运行良好,但无法检查应用程序何时关闭。无论如何要克服它?

1 个答案:

答案 0 :(得分:0)

Cordova应用程序有一些限制,例如当app在后台时它不会工作。如果您想要查找互联网连接而不考虑应用程序状态,那么您应该使用本机代码编写服务以进行检测。

按照this链接了解有关cordova的限制,并按照this

编写服务

希望它有所帮助。