Articles of cordova

如何使phonegap window.location.href不在Android上启动Chrome

我有一个phonegap应用程序。 在deviceReady我设置window.location.href到其他一些url。 这在iOS 8.3上效果很好,但在Android 5.0.1上,我被问到是否要在Chrome中打开它,然后在Chrome中打开,而不是在我的应用程序中打开。 有没有办法让应用程序中打开的URL(如replace当前页面)。 是的,我知道这不是最好的做法 ,一个页面的应用程序更好,等等等等,但这不适合我的使用情况。

如何在使用React Native时实现SSL证书locking

我需要在我的原生应用程序中实现SSL证书locking。 我对SSL / TLS知之甚less,更不用说钉住了。 我也不是一个本地的移动开发者,尽pipe我知道Java,并且在这个项目上学习Objective-C足以解决问题。 我开始寻找如何执行这个任务。 不反应Native已经实现了这个? 不,我的初步search引导了我自2016年8月2日以来没有收到任何活动的提案 。 从中我学到了react-native使用了支持Pinning的OkHttp,但是我不能把它从Javascript中提取出来,这不是一个必要条件,而是一个加号。 在Javascript中实现它。 虽然似乎使用nodejs运行时的反应,它更像是一个浏览器而不是节点,这意味着它不支持所有本地模块,特别是https模块,我在本文后面实现了证书locking。 因此不能把它变成原生的。 我尝试使用rn-nodeify,但模块无法正常工作。 从目前的RN 0.33到RN 0.35,情况一直如此。 使用phonegap插件实现 我想使用phongape插件,但是因为我有一个依赖库,需要反应0.32 +我不能使用react-native-cordova-plugin 只是在本地做 虽然我不是本地应用程序开发人员,但我总是可以对其进行破解,只是时间问题。 Android有证书locking 我了解到,Android支持SSL固定,但是不成功,因为看起来这种方法不起作用在Android 7.之前,以及只为Android工作。 底线 我已经耗尽了几个方向,并将继续追求更原生的实现,也许弄清楚如何configurationOkHttp和RNNetworking然后可能桥接回到原生。 但是,有没有任何实施或指导的IOS和Android?

如何使用Phonegap跟踪设备位置(iOS和Android)设备

我想知道用户何时到达或离开某个位置。 我正在尝试使用无线networking(检查移动设备)来做到这一点,但由于以下原因我无法完成此任务。 1)我需要实时更新或每隔1 – 5分钟的有关哪些设备连接以及哪些设备已断开连接的信息。 2)我在同一个networking上从PC到我的iPhone有很高的ping(仍然不知道为什么)。 现在我想使用iOS中暂停的Android应用程序(在后台运行)中使用地理位置或在Android中的后台运行。 任何帮助,将不胜感激。

扩展Phonegap应用程序的不同Android屏幕尺寸/密度?

我有一个Phonegap应用程序,旨在运行Android手机和平板电脑。 文字和图像的比例在手机上看起来不错,但在7英寸的平板电脑上太小了。 有没有一种方法来设置不同的屏幕尺寸/密度,适用于基于Phonegap的应用程序的规模? 对于原生的Android应用程序,多个屏幕布局(如在Android文档中提到的)将是一个解决scheme,但是这可以用于基于Phonegap的应用程序吗? 我可以使用CSS媒体查询设置基于屏幕大小的字体大小,但我想按比例缩放整个界面(包括图像)。 我尝试使用CSS zoom属性以及媒体查询来定位特定的屏幕大小,但是这样会导致绝对定位并干扰iScroll等UI元素的function: @media only screen and (min-device-width : 768px) { body{ zoom: 125%; } } @media only screen and (min-device-width : 1024px){ body{ zoom: 150%; } } 我也尝试使用targetdensity-dpi meta viewport属性 – 将其调整为120dpi,使得7英寸平板电脑上的比例尺更好,但手机上的比例太大。 由于这是用HTML而不是CSS进行硬编码的,媒体查询不能用来根据屏幕大小来改变它: <meta name="viewport" content="width=device-width, initial-scale=1, targetdensity-dpi=120dpi"> 以下是一个testing用例Phonegap应用程序的截图: HTC HD2,目标密度=默认 HTC HD2,目标密度= 120dpi Nexus 7,目标密度=默认 Nexus 7,目标密度= 120dpi

Phonegap应用程序的Android远程debugging不起作用

您好我正在尝试通过Chrome在我的设备上debugging我的phonegap应用程序我已按照所有步骤和我的手机被adb设备命令识别, 然后我去chrome:// inspect /#devices,我可以看到我的手机,但是这个信息出现在浏览器上: 离线 0019C9AD7EF31F 待validation:请接受设备上的debugging会话。 问题是我的手机中没有这样的信息,我有一个Sansumg Galaxy S2与kitkat。 我更新版本从4.1到4.4,因为我认为这是问题,但升级到4.4后,同样的问题。 有没有人遇到过这个问题?

我怎样才能加载网页内的电话网页视图?

我希望能够链接到phonegap webview内的网页,在相同的phonegap webview中加载外部网页。 如果我这样做,它会加载到webview中: public class App extends DroidGap { @Override public void onCreate (Bundle savedInstanceState) { super.onCreate(savedInstanceState); super.loadUrl("http://google.com"); } } 不过,我想先启动一个内部页面,并连接到外部页面,所以我这样做: public class App extends DroidGap { @Override public void onCreate (Bundle savedInstanceState) { super.onCreate(savedInstanceState); super.loadUrl("file:///android_asset/www/index.html"); } } 我有一个链接: <a href="#" onclick="navigator.app.loadUrl('http://google.com')">Google</a> 但是这个链接在应用程序之外的web浏览器中,而不是在电话webview中启动谷歌。 我能做些什么来确保在应用程序的phonegap webview中启动到外部页面的链接?

相对定位的元素在可滚动的绝对定位的div“滞后”滚动

我有一个PhoneGap应用程序,显示一个很长的文本,包含我在Android上testing的标题,表格和图像。 一切工作正常,除了具有风格position:relative的元素position:relative这些元素在“滚动”时滞后,这意味着如果我滚动页面,那么这些元素在大约四分之一秒后开始和结束滚动。 当一个绝对div与相对的孩子和一个孩子的overflow:auto 。 删除任何这些东西修复了错误,但我宁愿留下它。虽然我愿意删除表,并单独显示(如在对话框中),如果我必须。 该错误只出现在标准的Android浏览器(当然我的PhoneGap应用程序)。 到目前为止,我已经使用以下设备进行了testing: 三星Galaxy Nexus(4.1.1) 三星Galaxy S III(4.1.2) 任何帮助表示赞赏,但我更喜欢一个HTML和function没有改变(或不太多)的解决scheme。 我创build了一个显示错误的最小例子 。 只需在Android上打开它并开始滚动,您应该立即看到问题: <!doctype html> <html> <head><meta name="viewport" content="initial-scale=1.0"></head> <body style="margin:0"> <div style="position:absolute;overflow:auto;top:100px;bottom:100px;width:100%"> <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam a quam arcu. Duis ultrices mollis nibh ut hendrerit. Etiam a interdum metus. Integer volutpat, nibh laoreet euismod suscipit, libero […]

如何让cordova InAppBrowser为用户提供一种在使用Android设备时closures浏览器的方式?

我正在使用cordova InAppBrowser在我的应用程序中显示来自外部网站的内容。 当我在iPhone上打开浏览器时,InAppBrowser底部有一些button用于closures或前后导航。 在Android设备上的InAppBrowser没有这样的button,并没有明显的方式让用户closures浏览器。 我知道如何以编程方式closuresInAppBrowser,但用户在使用Android设备时如何closures它? 我知道用户可以点击硬件返回button来closures浏览器,但是(1)这不是直观的 – 后退button通常意味着“返回一页”,并且(2)我最终希望改变返回button返回在InAppBrowser内显示的网站内的页面,而不是closures浏览器。

Cordova 1.9.0和Android Jelly Bean无法编辑inputtypes=“文本”或textarea

我刚刚得到了我的shiny的新的Nexus 7,并与cordova(Phonegap)玩耍。 我创build了一个简单的页面,有几个文本input字段和一个文本区域。 在我的iPhone上,我可以点击文本字段,键盘出现,我可以编辑文本。 在运行4.1.1 Jelly Bean和Cordova 1.9.0的Nexus 7上,键盘出现,但是在文本框或文本框中没有input任何内容。 我很确定我的代码很好,因为它在iPhone和Android 2.3.5上工作,但这里是问题的片段,以防万一: <body onload="onBodyLoad()"> <div data-role="page" id="mainpage"> <div data-role="header" data-theme="a"> <h2>Lightweight</h2> </div> <div data-role="content"> <div> <a href="#" data-role="button" data-icon="check" data-iconpos="bottom" data-theme="b" onClick=onClickInterrogate()>Interrogate</a> </div> <div align="center"> <a href="#" data-role="button" data-inline="true" data-icon="forward" data-theme="b" onClick=downloadFile()>Send</a> <a href="#" data-role="button" data-inline="true" data-icon="gear" data-iconpos="right" data-theme="b" onClick=onClickSettings()>Settings</a> </div> <div align="center"> <label for="serverUrl">Server URL:</label> […]

如何在Cordova / Phonegap上使用GoogleloginAPI

我想在Phonegap App中使用“使用Googlelogin”。 我读了很多文章,但不知道如何完成。 提前致谢。 根据这个URL,我尝试使用oAuth2来“安装应用程序”。 但是,那么应用程序用户必须手动复制代码并粘贴到我的应用程序中。 我正在使用built.io 联合login ,如果其相关。