如何确定phonegap android活动是否已在运行

时间:2013-08-20 10:10:55

标签: android cordova android-activity

我有一个使用phonegap开发的android nfc阅读应用程序。应用程序检测已扫描的mimetype,并在加载相关文件的情况下启动应用程序。

if(receivedType.endsWith("/one")){
    super.loadUrl("file:///android_asset/www/index.html"); 
}else if(receivedType.endsWith("/two")){
   super.loadUrl("file:///android_asset/www/other/index.html"); 
}

问题是,在第一次检测到mimetype“one”时,应用程序会根据需要启动,扫描另一个具有相同mimetype“one”的标签,然后应用程序尝试重新启动和崩溃。我想检测应用程序是否已经运行并阻止重新启动尝试。

1 个答案:

答案 0 :(得分:1)

将此粘贴​​在扩展DroidGap上,并尝试通过logcat了解您可能会得到答案

        public class CheckState extends DroidGap {

        static boolean active = false;

        @Override
        public void onStart() {
            super.onStart();
            active = true;
            Log.i("Active onStart", active + "");
        }

        @Override
        public void onStop() {
            super.onStop();
            active = false;
            Log.i("Active onStop", active + "");
        }

        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);

            super.setIntegerProperty("loadUrlTimeoutValue", 60000);

            if (active == true) {
                super.loadUrl("file:///android_asset/www/index.html");
            } else {
                super.loadUrl("file:///android_asset/www/other/index.html");
            }

        }
    }