我在测试不同Android手机的工作灯内置应用程序时遇到了问题。 我有nexus 4和samsung note2进行测试,应用程序在nexus上运行良好,具有所有原生和jquery移动功能,但在三星note2的情况下,功能不能一致地工作。实际上大多数时候,本机和JQuery移动功能在三星note2中根本不起作用!我们无法追踪问题。
JQuery移动部件在三星note2上不起作用但在nexus 4上工作正常:
<div id="Task_page" style="margin-top: -15px;">
<a href="#TaskManagerPopUp" data-rel="popup" data-position-to="window" data-transition="pop">click here</div>
<div data-role="popup" id="TaskManagerPopUp" class="bubble1" data-theme="d">
<a href="#popupMenusms" data-rel="popup" data-position-to="window"
data-transition="pop">for jquery function</a>
<a href="" onclick="call(9060606060)">call</a>
<a href="" onclick="locate("address is here")">navigate</a>
</div>
<div data-role="popup" id="popupMenusms" data-theme="d">
<label>heay this is 2nd popup</label>
</div>
</div>
第二个弹出窗口从未在Samsung Note2上显示
本机部分是用于打开dailer和地图导航的插件。
有一个全局函数可以调用dailer和地图导航。
//global function in main js file for dailer
function call(phoneNmber){
window.plugins.phoneDialer.dial(phoneNmber);
}
//global function for navigator
function locate(address){
showBusy();
var invocationData = {
adapter: 'LatLang',
procedure: 'getGmapLatLng',
parameters: [address]
};
WL.Client.invokeProcedure(invocationData, {
onSuccess : onnavigateJobSuccess,
onFailure : onnavigateJobFailed,
timeout : 30000
});
}
function onnavigateJobSuccess(result)
{
hideBusy();
if(result.invocationResult.isSuccessful)
{
userlat=result.invocationResult["lat"];
userlang=result.invocationResult["lng"];
cordova.require('cordova/plugin/phonenavigator').doNavigate(userlat, userlang, successnavigate, errornavigate);
}
}
function onnavigateJobFailed(error){hideBusy();}
function successnavigate(){}
function errornavigate(){}
在导航功能中,我将目的地的经纬度传递给cordova插件。
第一个弹出窗口中的调用和导航在nexus 4上正常工作但在Samsung Note2上不起作用
1 来自logcat的第二个弹出式ie-popupMenusms的日志,在NOTE2上没有显示:
01-28 12:53:15.717: D/GestureDetector(3603): [Surface Touch Event] mSweepDown False, mLRSDCnt : -1 mTouchCnt : 4 mFalseSizeCnt:0
01-28 12:53:15.722: V/webview(3603): singleCursorHandlerTouchEvent -getEditableSupport FASLE
01-28 12:53:16.067: I/GATE(3603): <GATE-M>DEV_ACTION_COMPLETED</GATE-M>
01-28 12:53:16.067: D/Cordova(3603): onPageFinished(file:///data/data/com.FieldWork/files/www/default/FieldWork.html#&ui-state=dialog)
01-28 12:53:16.067: D/WebView(3603): loadUrlImpl: called
01-28 12:53:16.067: D/DroidGap(3603): onMessage(onNativeReady,null)
01-28 12:53:16.072: D/DroidGap(3603): onMessage(onPageFinished,file:///data/data/com.FieldWork/files/www/default/FieldWork.html#&ui-state=dialog)
01-28 12:53:16.092: D/webcore(3603): CORE loadUrl: called
01-28 12:53:17.707: D/GestureDetector(3603): [Surface Touch Event] mSweepDown False, mLRSDCnt : -1 mTouchCnt : 2 mFalseSizeCnt:0
01-28 12:53:17.717: I/GATE(3603): <GATE-M>DEV_ACTION_COMPLETED</GATE-M>
01-28 12:53:17.717: D/Cordova(3603): onPageFinished(file:///data/data/com.FieldWork/files/www/default/FieldWork.html)
01-28 12:53:17.722: D/WebView(3603): loadUrlImpl: called
01-28 12:53:17.722: D/DroidGap(3603): onMessage(onNativeReady,null)
01-28 12:53:17.722: D/DroidGap(3603): onMessage(onPageFinished,file:///data/data/com.FieldWork/files/www/default/FieldWork.html)
01-28 12:53:17.767: D/webcore(3603): CORE loadUrl: called
2 在一个地方工作的dailer功能提供了日志:
01-28 13:12:46.305: D/GestureDetector(31954): [Surface Touch Event] mSweepDown False, mLRSDCnt : -1 mTouchCnt : 10 mFalseSizeCnt:0
01-28 13:12:46.310: V/webview(31954): singleCursorHandlerTouchEvent -getEditableSupport FASLE
01-28 13:12:46.670: I/GATE(31954): <GATE-M>DEV_ACTION_COMPLETED</GATE-M>
01-28 13:12:46.670: D/Cordova(31954): onPageFinished(file:///data/data/com.FieldWork/files/www/default/FieldWork.html#&ui-state=dialog)
01-28 13:12:46.670: D/WebView(31954): loadUrlImpl: called
01-28 13:12:46.670: D/DroidGap(31954): onMessage(onNativeReady,null)
01-28 13:12:46.670: D/DroidGap(31954): onMessage(onPageFinished,file:///data/data/com.FieldWork/files/www/default/FieldWork.html#&ui-state=dialog)
01-28 13:12:46.775: D/webcore(31954): CORE loadUrl: called
01-28 13:12:47.725: D/GestureDetector(31954): [Surface Touch Event] mSweepDown False, mLRSDCnt : -1 mTouchCnt : 2 mFalseSizeCnt:0
01-28 13:12:47.730: V/webview(31954): singleCursorHandlerTouchEvent -getEditableSupport FASLE
01-28 13:12:48.045: D/FieldWork(31954): Dailers cordova.exec called with ::9854785633
01-28 13:12:48.115: D/DroidGap(31954): Paused the application!
01-28 13:12:48.115: D/CordovaWebView(31954): Handle the pause
01-28 13:12:48.120: D/WebView(31954): loadUrlImpl: called
01-28 13:12:48.130: I/GATE(31954): <GATE-M>DEV_ACTION_COMPLETED</GATE-M>
01-28 13:12:48.130: D/webcore(31954): CORE loadUrl: called
01-28 13:12:48.150: D/Cordova(31954): onPageFinished(file:///data/data/com.FieldWork/files/www/default/FieldWork.html)
01-28 13:12:48.150: D/WebView(31954): loadUrlImpl: called
01-28 13:12:48.155: D/DroidGap(31954): onMessage(onNativeReady,null)
01-28 13:12:48.155: D/DroidGap(31954): onMessage(onPageFinished,file:///data/data/com.FieldWork/files/www/default/FieldWork.html)
01-28 13:12:48.205: D/webcore(31954): CORE loadUrl: called
01-28 13:12:48.495: D/webviewglue(31954): OnTrimMemory with EGL Context 0x58a63c78
3 dailer函数在不工作时会将日志显示为:
01-28 13:04:25.507: D/GestureDetector(26533): [Surface Touch Event] mSweepDown False, mLRSDCnt : -1 mTouchCnt : 3 mFalseSizeCnt:0
01-28 13:04:25.517: V/webview(26533): singleCursorHandlerTouchEvent -getEditableSupport FASLE
01-28 13:04:25.862: I/GATE(26533): <GATE-M>DEV_ACTION_COMPLETED</GATE-M>
01-28 13:04:25.862: D/Cordova(26533): onPageFinished(file:///data/data/com.FieldWork/files/www/default/FieldWork.html#&ui-state=dialog)
01-28 13:04:25.862: D/WebView(26533): loadUrlImpl: called
01-28 13:04:25.867: D/DroidGap(26533): onMessage(onNativeReady,null)
01-28 13:04:25.867: D/DroidGap(26533): onMessage(onPageFinished,file:///data/data/com.FieldWork/files/www/default/FieldWork.html#&ui-state=dialog)
01-28 13:04:25.902: D/webcore(26533): CORE loadUrl: called
01-28 13:04:26.917: D/GestureDetector(26533): [Surface Touch Event] mSweepDown False, mLRSDCnt : -1 mTouchCnt : 2 mFalseSizeCnt:0
01-28 13:04:26.927: I/GATE(26533): <GATE-M>DEV_ACTION_COMPLETED</GATE-M>
01-28 13:04:26.927: D/Cordova(26533): onPageFinished(file:///data/data/com.FieldWork/files/www/default/FieldWork.html)
01-28 13:04:26.927: D/WebView(26533): loadUrlImpl: called
01-28 13:04:26.927: D/DroidGap(26533): onMessage(onNativeReady,null)
01-28 13:04:26.932: D/DroidGap(26533): onMessage(onPageFinished,file:///data/data/com.FieldWork/files/www/default/FieldWork.html)
01-28 13:04:26.932: D/webcore(26533): CORE loadUrl: called
答案 0 :(得分:1)
据我所知,三星在某些设备上破坏了他们的支持 看看以下是否有帮助。
如果发生以下情况,请尝试将清单工具添加到touchstart
singleCursorHandlerTouchEvent -getEditableSupport False
phonegap + android Touch events Error singleCursorHandlerTouchEvent -getEditableSupport False
singleCursorHandlerTouchEvent -getEditableSupport FASLE bug
$('.element').on('touchstart', function(ev) {
ev.preventDefault();
});