2015-05-07 318 views
-1

我是phonegap cordova development.i中的新功能,我在cordova中使用google的幫助來演示應用程序。我帶一個名爲exitapp的按鈕,並調用函數navigator.app.exitApp() function.here它工作正常,但如果我在mainActivity中添加了一些方法,然後java文件navigator.app.exitApp()函數不工作。 我用科爾多瓦phonegap android應用程序不會退出

<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

如果你通過最小化的應用程序,該應用程序轉到後臺的意思(不是活動的應用程序,但它仍然是在運行的應用程序的列表)。如果這是你的意思,請注意,這是Android和許多移動操作系統的正常行爲。

終止(如果您願意退出),應用程序不受應用程序開發人員的控制。它完全由OS管理(在這種情況下爲Android)。所以,你擁有的是Mobile OS下應用的正常行爲。

來源:navigator.app.exitapp() not working in android device

相關問題