【问题标题】:How to handle device back button for Jquery mobile using Phonegap in Android?如何在 Android 中使用 Phonegap 处理 Jquery 手机的设备后退按钮?
【发布时间】:2016-03-11 13:44:03
【问题描述】:

我正在使用 jQuery Mobile 和 Phonegap 开发一个 Android 应用程序。现在,当我登录应用程序时,它会显示搜索一些员工。在此屏幕中,我想处理设备后退按钮。目前,如果我按下后退按钮,它将从应用程序中注销。但是,我想最小化应用程序。这意味着,它不应该注销。只是我们会将应用程序发送到后台(类似于 facebook android 应用程序)。我尝试使用以下代码处理此问题:

<script type="text/javascript">
            $(document).ready(function() {
document.addEventListener("backbutton", function(e) {
                    alert("ready");
                    navigator.app.exitApp();
                });
            });
        </script> 

这是我的清单文件:

    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.innominds.myspace"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="7"
    />

     <uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.RECEIVE_SMS" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.WRITE_CONTACTS" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.HARDWARE_TEST" />
<uses-permission android:name="android.permission.FLASHLIGHT"/>
<uses-permission android:name="android.permission.BROADCAST_STICKY" />

    <application
        android:icon="@drawable/icon"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name=".MainActivity"
             android:configChanges="orientation|keyboardHidden" android:screenOrientation="portrait">
            android:label="@string/title_activity_main" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

但是当我按下返回按钮时,它也不会显示警报。我正在使用科尔多瓦 2.0 和 jquery.mobile-1.1.1.js。

我得到了来自herehere 的一些帮助和参考。

谁能帮帮我..

【问题讨论】:

    标签: android cordova jquery-mobile


    【解决方案1】:
    <a href="#" data-rel="back" data-transition="slide" data-direction="reverse">
       Back
    </a>
    

    并以编程方式:

    $("#buttonId").attr('href','index.html');
    

    您还可以更改按钮标题及其操作运行时间。

    【讨论】:

    • 抱歉,您说的是保留一个后退按钮并使用它。但我想处理手机中的后退按钮..
    【解决方案2】:

    如果您在 AndroidManifest.xml 中分配了 target-SDK,请删除该条目并尝试。

    【讨论】:

    【解决方案3】:

    您错过了在 html 页面中添加 cordova.js 文件路径。有时此文件不会自动添加到 html 页面中,因此请手动添加并重试。

    如果这不起作用删除android平台并再次添加并再次添加所有插件,仅为android构建项目并运行您的问题肯定会得到解决。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-04-22
      • 2013-05-10
      • 2016-12-04
      • 1970-01-01
      • 1970-01-01
      • 2015-07-24
      • 2017-12-15
      相关资源
      最近更新 更多