Articles of cordova

在Android的PhoneGap的CordovaWebView之上如何覆盖原生视图?

我正在构build一个phonegap插件,它需要在PhoneGap提供的WebView之上呈现原生UI视图。 在iOS中,这非常简单,只需创build视图并将其添加到PhoneGap的webView的scrollView。 这将呈现在webView顶部的控制,并允许它与HTML内容滚动(注意,这个例子使用UIButton,但我将这个应用到自定义的UI控件): -(void)createNativeControl:(CDVInvokedUrlCommand *)command { NSDictionary* options = [command.arguments objectAtIndex:0]; NSNumber* x = [options objectForKey:@"x"]; NSNumber* y = [options objectForKey:@"y"]; NSNumber* width = [options objectForKey:@"width"]; NSNumber* height = [options objectForKey:@"height"]; CGRect rect = CGRectMake([x floatValue], [y floatValue], [width floatValue], [height floatValue]); self._nativeControl = [UIButton buttonWithType:UIButtonTypeSystem]; self._nativeControl.frame = rect; [self._nativeControl addTarget:self action:@selector(buttonClicked:) forControlEvents:UIControlEventTouchUpInside]; [self._nativeControl setTitle:@"Click […]

Android In App Subscription总是返回最初的收据,我从来没有得到更新

我的Android应用有问题。 我正在尝试实施每月订阅。 我创build了IAP,应用程序处于testing阶段,我正在注册为testing人员。 购买订阅时,一切都按预期工作。 我可以购买它作为一个testing人员,这意味着订阅实际上没有收费,并且每天都会更新。 但是,这是我的问题开始的地方。 我总是得到原始的收据,与原来的purchaseTime和purchaseToken 。 每当应用程序启动,我打电话queryInventoryAsync ,我希望得到最新的续期收据。 但我总是得到原始收据。 我的想法错了吗? 我不应该得到新的收据,新的orderID吗? (正如谷歌文档所说,我应该得到一个像GPA.blabla..0|1|2我知道有一些caching机制,但我已经等了三天,我仍然得到原来的顺序,而我应该是最新的一个。 我总是使用人行横道的cordova,我用下面的插件购买: https : //github.com/j3k0/cordova-plugin-purchase 。 我不知道它是否重要,应该不是因为它使用与其他插件使用的IABHelper类相同,但是可能它的代码有问题? 我logging了从mService.getPurchases(3, mContext.getPackageName(), itemType, continueToken);调用收到的确切响应mService.getPurchases(3, mContext.getPackageName(), itemType, continueToken); 它包含错误的数据(原始收据)。 为什么? 🙁 其他人有类似的问题吗? 是否因为testing订阅? 实际购买时会起作用吗? 我已经开始用真金白银testing了,但是直到订阅续订需要一周的时间。 非常感谢。 编辑 :从Google Play商店应用清除caching不是一个选项。 我不能要求我的用户这样做。 另外,我也testing过这个,不行的! 编辑2生产订阅(真正的钱,没有testing)也不工作! 仍然收到原始收据! 编辑3我还没有解决这个问题。 什么是检测更新的正确方法? 我应该只在后端运行一个cronjob,并根据Google的Purchase Status API查询每个订阅吗? 编辑4谢谢你的答案。 我已经在后端使用购买状态API来确定是否续订订阅。 但它有点吮吸,如果我得到100.000订阅,怎么办? 通过所有这些脚本,并查询谷歌的API将花费非常looooong时间..脚本应该可能每天运行! 但是让我们清理一下。 这是否意味着官方文件已经过时? 。 GPA.blabla..0 […]

cordova插件白名单无法要求cordovaios 4

我试图跑 ionic platform ios android 它今天给我这个错误(它工作正常之前) Installing "cordova-plugin-whitelist" for ios Failed to install 'cordova-plugin-whitelist':CordovaError: Plugin doesn't support this project's cordova-ios version. cordova-ios: 3.8.0, failed version requirement: >=4.0.0-dev at checkEngines (/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/plugman/install.js:116:29) at /usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/plugman/install.js:289:16 at _fulfilled (/usr/local/lib/node_modules/cordova/node_modules/q/q.js:787:54) at self.promiseDispatch.done (/usr/local/lib/node_modules/cordova/node_modules/q/q.js:816:30) at Promise.promise.promiseDispatch (/usr/local/lib/node_modules/cordova/node_modules/q/q.js:749:13) at /usr/local/lib/node_modules/cordova/node_modules/q/q.js:557:44 at flush (/usr/local/lib/node_modules/cordova/node_modules/q/q.js:108:17) at process._tickCallback (node.js:355:11) Plugin doesn't support this project's cordova-ios […]

Android上PhoneGap所需的所有权限?

查看hello world的phonegap文档,并且有许多权限。 Android清单中大约有15个。 只是想知道如果他们都是必需的? 请参阅http://phonegap.com/start/#android

即使AndroidManifest更改,切换方向时PhoneGap应用也会崩溃

这是我的清单: <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.mappp.mobile" android:versionCode="1" android:versionName="1.0" > <supports-screens android:largeScreens="true" android:normalScreens="true" android:smallScreens="true" android:resizeable="true" android:anyDensity="true" /> <uses-permission android:name="android.permission.CAMERA" /> <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.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" […]

Android应用程序开始更新与cordova-webintent并强制停止

步骤: 1)打开android应用程序(用cordova构build) 2)然后我打电话给cordova-webintent安装更新https://github.com/Initsogar/cordova-webintent 3)我按下安装,并开始安装,但几秒钟后,应用程序强制停止,而不是安装,并打开更新的应用程序。 这个问题出现了一段时间,我不明白为什么发生这种情况,因为cordova-webintent和cordova版本相同。 4)应用程序停止后,我点击应用程序图标,但有一个消息,“应用程序没有安装”。 应用程序在几秒钟后继续在后台安装。 我再次点击应用程序图标,打开更新的应用程序。 请帮助解决这个问题与应用程序强制停止时,安装。 日志: E:\ work \ hello1> adb logcat ActivityManager:I com.example.hello1:D *:S ———系统的开始 我/ ActivityManager(715):[后台服务优先级调整]为service.getFlags()设置callerFg为false:260 I / ActivityManager(715):START u0 {act = android.intent.action.VIEW dat = file:///storage/emulated/0/filename1.apk typ = application / vnd.android.package-archive cmp = com。 android.packageinstaller / .PackageInstallerActivity}从uid 10657显示0 ———主要的开始 I / ActivityManager(715):从显示0的uid 10072开始u0 {dat = file:///storage/emulated/0/filename1.apk cmp = com.android.packageinstaller […]

Cordova + JqueryMobile:Ajax失败

(已经在过去的6个小时)我正在尝试做一个电话/cordova应用程序。 我无法通过Android模拟器(API版本22,Android> 4.4)进行Ajax调用。 Ajax调用在Firefox桌面上工作,但即使在Chrome浏览器上也失败(与仿真器上的例外情况相同) cordova –version 5.0.0 码: $.ajax({ url: serverUrl, type: 'GET', contentType: "application/json", async: true, dataType: 'jsonp', callback: 'callback', jsonpCallback: 'yourcallback', crossDomain: true, success: function (result) { $("#message").html("location sent"); }, error: function (request, error) { alert('Error ' + error); } }); 我看到的错误是: 在chrome远程debugging器上: 拒绝连接到“ http://10.0.2.2/test/getLocation.php ”,因为它违反了以下内容安全策略指令:“default-src'self'data:gap: https : //ssl.gstatic.com '不安全-EVAL'”。 请注意,“connect-src”没有明确设置,因此“default-src”被用作后备。 我已经看到博客和post的各种设置,但没有用。 把一些在这里删除通常的嫌疑人。 […]

电话连接android不工作(银河S5)

我是移动混合应用程序开发的新手。 我有一个在Angular和Ionic开发的HTML 5混合应用程序,在用户点击一个电话号码时,我想要启动本地电话应用程序(或各种获取本地电话应用程序的菜单)的一部分。 当我通过手机中的浏览器查看混合应用程序时,点击链接按预期工作。 但是,如果我部署应用程序到我的三星Galaxy S5(通过cordova),点击链接什么都不做。 我已经尝试了以下语法: <a href="tel:18888888">tel:18888888</a> <a href="tel:+18888888">tel:+18888888</a> <a href="tel://18888888">tel://18888888</a> <a href="tel://+18888888">tel://+18888888</a> <a href="tel:1-888-8888">tel:1-888-8888</a> <a href="tel://1-888-8888">tel:1-888-8888</a> 我正在使用Cordova 3.6.0和Android SDK r23.0.2窗口。 我search了类似的问题,但结果不一致。 有没有人有这个运气? 看起来像一个共同的特点。 我必须错过简单的事情。

Android Gingerbread上的LocalStorage非法访问exception

我做了一个Android / PhoneGap的应用程序,它运行良好的所有设备与几个Android操作系统版本,除了在一些姜饼(2.3)手机。 我正在使用Phonegap 1.9。 debugging代码,我意识到Javascript的illegal access exception ,每次我使用HTML5 localStorage.getItem()和localStorage.setItem()方法。 如何在这些Android设备上启用localStoragefunction?

Android浏览器的CSS溢出和绝对定位问题

我们有一个使用JQuery Mobile,PhoneGap和ASP.net MVC构build的移动Web应用程序。 该应用程序的目标是在iOS和Android设备上运行,而不pipe浏览器如何。 我们已经testing了下面列出的设备上的应用程序,似乎没有任何问题的正常工作 iOS 5 – iPad,iPhone。 Android 4.1.2 – 谷歌Nexus 7,三星Galaxy S3,三星Galaxy Note 2,三星Galaxy Tab 2。 Android 4.0.3 – 华硕变压器选项卡 但是当用4.1.2的三星Galaxy Note 800的 Android Stock浏览器进行testing时,我们遇到了一个很奇怪的问题。 放置在具有css属性“ overflow:auto ”的div(如child div)中的元素在启用滚动时不响应任何触摸事件。 这里需要注意的是,包含这个div的父div是绝对定位的“ position:abolute ”。 经过一段时间的研究,我们发现绝对位置和溢出属性的组合可能会导致Android浏览器出现一些问题。 目前不可能取消绝对位置,因为这会导致布局完全重新devise,我们只剩下几天才能发布。 那么,任何人都可以为此提出一个快速解决scheme?