我是phonegap cordova开发的新手。我在cordova的google帮助下制作了一个演示应用程序。我拿了一个名为exitapp的按钮并调用了函数navigator.app.exitApp()
函数。它工作正常但是如果我添加一些mainActivity中的方法,java文件然后navigator.app.exitApp()
函数不起作用。
我用了
<script type="text/javascript" charset="utf-8" src="cordova.js"></script>
在html页面中。
我的活动代码是。
package com.example.hello;
import com.acl.paychamp.util.DecryptData;
import com.example.hello.R;
public class MainActivity extends CordovaActivity implements
CordovaInterface
{
CordovaWebView cwv;
private final ExecutorService threadPool = Executors.newCachedThreadPool();
private CordovaPlugin activityResultCallback;
public static final String PASSKEY = "s407iejl";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
super.init();
setContentView(R.layout.main);
cwv = (CordovaWebView) findViewById(R.id.view);
cwv.loadUrl(this.launchUrl);
}
@Override
public void startActivityForResult(CordovaPlugin command, Intent intent, int requestCode) {
this.activityResultCallback = command;
// Start activity
super.startActivityForResult(intent, requestCode);
}
@Override
public void setActivityResultCallback(CordovaPlugin plugin) {
this.activityResultCallback = plugin;
}
@Override
public Activity getActivity() {
return this;
}
@Override
public Object onMessage(String id, Object data) {
try {
URI uri = new URI(data.toString());
if (uri.toString().contains("http://abcd.com/pr?
param=")) {
String encryptedText = uri.getQuery().split("=")[1];
JSONObject jObj = DecryptData.getDecryptedJson(encryptedText,
PASSKEY);
Log.i("CordovaApp", jObj.get("msg").toString());
Log.i("CordovaApp", jObj.get("trxid").toString());
cwv.loadUrl("file:///android_asset/www/status.htm?
resparam="+encryptedText);
}
} catch (Exception use) {
}
return null;
}
@Override
public ExecutorService getThreadPool() {
return threadPool;
}
@Override
protected void onActivityResult(final int requestCode, final int
resultCode, final Intent intent) {
super.onActivityResult(requestCode, resultCode, intent);
CordovaPlugin callback = this.activityResultCallback;
if (callback != null) {
callback.onActivityResult(requestCode, resultCode, intent);
}
}
}
答案 0 :(得分:0)
如果你的意思是通过最小化应用程序进入后台的应用程序(不是活动应用程序,但它仍然在运行的应用程序列表中)。如果这是你的意思,请注意这是Android和许多移动操作系统中的正常行为。
终止(如果您愿意,退出)应用程序不受应用程序开发人员的控制。它完全由操作系统管理(在本例中为Android)。所以,你拥有的是移动操作系统下应用程序的正常行为。