0

我有一个使用 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”的标签,然后应用程序会尝试重新启动并崩溃。我想检测应用程序是否已经在运行并阻止重新启动尝试。

4

1 回答 1

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");
            }

        }
    }
于 2013-08-21T05:30:21.433 回答