小编AnR*_*AnR的帖子

Google App Store警告 - 您应该尽快升级到Apache Cordova 3.5.1或更高版本

我收到了来自Google Play商店的电子邮件给我的Android应用:

这是一个通知,您的com.mydomain.myapp是基于包含安全漏洞的Apache Cordova版本构建的.这包括高严重性的跨应用程序脚本(XAS)漏洞.在某些情况下,可以远程利用易受攻击的应用程序来窃取敏感信息,例如用户登录凭据.您应该尽快升级到Apache Cordova 3.5.1或更高版本.有关漏洞的更多信息以及有关升级Apache Cordova的指导,请参阅 http://cordova.apache.org/announcements/2014/08/04/android-351.html.请注意,具有漏洞的应用程序可能会将用户置于危险之中,可能被视为"危险产品",并且可能会从Google Play中删除.此致,Google Play团队©2014 Google Inc. 1600 Amphitheatre Parkway Mountain View,CA 94043

如果我尝试给定链接/页面上提到的命令,即:

cordova platform add android@3.5.1 --usenpm
Run Code Online (Sandbox Code Playgroud)

我收到一个错误:

Platform android already added
Run Code Online (Sandbox Code Playgroud)

如何将Cordova从3.1升级到3.5.1?我尝试过各种各样的事情:

npm update -g cordova
Run Code Online (Sandbox Code Playgroud)

但我似乎没有成功.MyApp\platforms\android\cordova文件夹中的版本文件仍显示以下条目,此文件夹中的文件没有更改:

// Coho updates this line:
var VERSION = "3.1.0";

console.log(VERSION);
Run Code Online (Sandbox Code Playgroud)

apache google-play cordova cordova-3

17
推荐指数
1
解决办法
1万
查看次数

我应该如何在AndroidManifest.xml中定义launchMode - 使用PhoneGap和JQM

我正在努力将我的应用程序限制为单个实例.目前,如果用户按下主屏幕退出应用程序,然后在外面执行某些操作并再次单击应用程序的图标,则会启动应用程序的第二个实例.

这是我的完整清单文件:

<?xml version="1.0" encoding="utf-8"?>

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="com.mydomain.qfa"
      android:versionCode="4"
      android:versionName="1.3">


<uses-sdk android:minSdkVersion="7"
          android:targetSdkVersion="13"
          android:maxSdkVersion="18" />

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />

<application 
             android:debuggable=["false"]
             android:testOnly=["false"]
             android:icon="@drawable/icon.png"
>
<activity 
            android:name="com.mydomain.qfa"
            android:launchMode=["singleTask"]
            android:alwaysRetainTaskState="true"
            android:icon="@drawable/icon.png"
>
</activity>

</application>
</manifest>
Run Code Online (Sandbox Code Playgroud)

它是一个单一的活动应用程序(基本上没有活动定义)在主JQM页面上,我有类似这样的条目:

<div data-role="page" id="HomePage">

    <div data-theme="d" data-role="header" data-position="fixed" style="padding-bottom: 0px;" data-tap-toggle="false">

        <div data-role="navbar">                                      

    <div data-role="content"  class="MainContent"  style="overflow:hidden; padding-top: 0px;">
Run Code Online (Sandbox Code Playgroud)

有人可以告诉我,如果我的清单是正确的,我是否应该使用

android:name="com.mydomain.qfa"
Run Code Online (Sandbox Code Playgroud)

还是应该是其他类似的东西

android:name="com.mydomain.qfa.HomePage"?
Run Code Online (Sandbox Code Playgroud)

要么

android:name="com.mydomain.qfa.MainContent"?
Run Code Online (Sandbox Code Playgroud)

提前致谢.

android android-manifest jquery-mobile launchmode cordova

15
推荐指数
2
解决办法
9825
查看次数

在现有项目中更新Ionic

我很高兴看到Ionic的Release版本,但发现自己无法更新我现有的项目.这就是我做的.

  1. npm install -g ionic
  2. bower.json在App的根文件夹中打开(上面的www)
  3. 你会在这里找到这样的东西:

    {
      "name": "MyAppName",
      "private": "true",
      "devDependencies": {
        "ionic": "driftyco/ionic-bower#xxxxxxxx"
      }
    }
    
    Run Code Online (Sandbox Code Playgroud)
  4. 将其更改为此(基本上通过更改最后一行:

    {
      "name": "MyAppName",
      "private": "true",
      "devDependencies": {
        "ionic": "driftyco/ionic-bower#1.0.0-rc.1"
      }
    }
    
    Run Code Online (Sandbox Code Playgroud)
  5. 保存文件

  6. 转到命令行并在App文件夹中运行它

    bower update
    ionic lib update
    
    Run Code Online (Sandbox Code Playgroud)
  7. 运行ionic lib以检查版本号

希望能帮助别人挠头.

------编辑---------

这篇文章与Windows O/S有关,因为我使用的是64位Windows 7.

updates node.js angularjs bower ionic-framework

8
推荐指数
2
解决办法
7661
查看次数

JQuery Mobile检查Div是扩展还是折叠

我有一个可以使用属性折叠的Div data-role="collapsible"

如何在任何时间点检查Div是处于折叠模式还是扩展模式.我试过这个,但它不起作用:

if ($("#hideshow").is(":collapsed"))
   alert("collapsed");
Run Code Online (Sandbox Code Playgroud)

请注意,这:visible将无效,因为在两个状态中,visible返回true.

html javascript css jquery jquery-mobile

5
推荐指数
1
解决办法
6589
查看次数

内存使用量在PhoneGap App中攀升

我有一个PhoneGap/JQuery MObile应用程序,它从服务器通过Ajax获取数据并将其显示为列表.随着每次Ajax获取,App占用的内存增加大约10 MB.对于第一次获取它可能没问题,因为它获取大量记录(大约700).但是,对于后续调用,我的理解是它应该重用内存而不是每次堆积另外10 MB.我使用.off()来释放事件处理程序,以防它们占用内存但没有成功.

这是显示输出的主页面Div:

<div data-role="content"  class="MainContent"  style="overflow:hidden; padding-top: 0px;">
    <ul data-divider-theme="b" data-role="listview" data-inset="true" class="MainMenu">

    </ul>
Run Code Online (Sandbox Code Playgroud)

这是从服务器获取数据并在上面的div中显示的Javascript代码.

AjaxFile = "mydomai.com/ajax.php";
$.get(AjaxFile, function (AjaxData) {

    $( ".PL" ).off();
    $(".MainMenu").off();
    $(".MainContent").off();

    AjaxData = '<li class="MainMenuList" data-role=list-divider>' + gTitle + AjaxData;
    $(".MainMenu").empty();
    $(".MainMenu").html(AjaxData);
    $(".MainMenu").listview('refresh');
    window.scrollTo(0, 0);
    $.mobile.loading('hide');

    HighlightRow(gCurrentFile);
    $(document).ready(function () {
        $(".PL").click(function () {
            if ( !$(this).hasClass("BTitleRow") )
            {
                $(".PL").removeClass("RowHighlight");
                $(this).addClass("RowHighlight");
                OpenNewLink($(this).attr('name'));
            }
        });
    });

});

AjaxData = null;
return;
Run Code Online (Sandbox Code Playgroud)

有人可以请告诉我如何释放内存并确保重用相同的内存而不是堆积越来越多的内存.

非常感谢.

=========更新===========

即使我删除下面的部分,我仍然可以看到内存使用量攀升:

$(document).ready(function () {
        $(".PL").click(function () {
            if ( …
Run Code Online (Sandbox Code Playgroud)

javascript android memory-management jquery-mobile cordova

5
推荐指数
1
解决办法
4339
查看次数

$ ionicActionSheet显示错误的格式

将离子框架升级到最新版本后,$ionicActionSheet已经开始行为不端.当在Chrome浏览器中使用ionic serve时,它会显示正确的颜色等格式,但是当我在Android设备上安装应用程序时,它会显示纯白色背景$ionicActionSheet.

这是两个样本

设备上显示错误

在浏览器中正确显示

有人有任何线索吗?

angularjs angular-ui ionic-framework ionic ngcordova

5
推荐指数
2
解决办法
4469
查看次数

如何在 Flutter 中将数组分配给 fl_chart 中的点

我是 Flutter 新手,刚刚开始使用,fl_charts它看起来真的很棒。然而,我正在努力超越演示 LineChartSample1。

此处给出的示例代码将值分配给点,如下所示:

  spots: [
    FlSpot(1, 1.4),
    FlSpot(2, 3.4),
    FlSpot(3, 2),
    FlSpot(4, 2.2),
    FlSpot(5, 1.8),
  ],
Run Code Online (Sandbox Code Playgroud)

在现实生活中,这显然必须是动态的。因此,我需要从数字数组中分配值,如下所示:

myArray = [7578, 7547, 3578, 9875]
Run Code Online (Sandbox Code Playgroud)

我不知道如何将此数组分配给点,假设 FlSpot 的第一个参数只是一个像 0、1、2、3 ... 这样的序列,第二个参数来自 myArray。

我需要类似FlSpot(x++, myArray[x])循环的东西。

charts graph flutter fl-chart

4
推荐指数
1
解决办法
4837
查看次数

Intel xdk不允许我进行Ajax调用

我有一个PhoneGap项目,我已导入英特尔XDK.Evetything像以前一样工作,除了我无法处理Ajax调用.阅读文档后,我在所有其他脚本之前添加以下两行:

<script src="intelxdk.js"></script>
<script src="xhr.js"></script>
Run Code Online (Sandbox Code Playgroud)

但这仍然没有任何影响.

我正在使用jQuery $ get来处理Ajax调用.像这样的东西:

$.get( MyURL, function( data ) {
    alert(data);
}
Run Code Online (Sandbox Code Playgroud)

ajax jquery cross-domain cordova intel-xdk

2
推荐指数
1
解决办法
5943
查看次数

从AngularJS中的文本文件中获取Json数据

我是AngularJS的新手并尝试从文本文件中获取JSON数据:

这是我的HTML:

<div ng-controller="customersController as custCont"> 
  <ul>
    <li ng-repeat="x in names">
      {{ x.Name + ', ' + x.Country }}
    </li>
  </ul>
</div>
Run Code Online (Sandbox Code Playgroud)

而我的控制器如下所示:

app.controller( "customersController", function( $scope, $window) {
    $http({
        url: 'test.txt',
        dataType: 'json',
        method: 'POST',
        data: '',
        headers: {
            "Content-Type": "application/json"
        }

    }).success(function(response){
        $scope.names = response;
    }).error(function(error){
        $scope.names = 'error';
    });        
Run Code Online (Sandbox Code Playgroud)

这没有任何显示.现在,如果我用分配给$ scope.names的test.txt数据替换上面的http请求,那么它开始工作:我的意思是,像这样:

$scope.names = [
{
"Name" : "Alfreds Futterkiste",
"City" : "Berlin",
"Country" : "Germany"
},
{
"Name" : "Berglunds snabbköp",
"City" : "Luleå",
"Country" : "Sweden" …
Run Code Online (Sandbox Code Playgroud)

javascript text json xmlhttprequest angularjs

2
推荐指数
1
解决办法
1万
查看次数

如何在Videogular中手动更改src文件?

我正在尝试在我的AngularJS应用程序中实现Videogular.开箱即用的示例运行良好,没有问题.但我无法让玩家手动播放不同的文件,而不是播放音频.

这是我的HTML.

<div ng-controller="HomeCtrl as controller" class="videogular-container" ng-model="sharedProperty">
    sharedProperty.data = {{sharedProperty.data}}
    <button ng-click="SetValue('http://example.com/myfile.mp3')"  type="button" class="btn btn-default">Change Audio</button>
  <videogular vg-theme="controller.config.theme.url" class="videogular-container audio">
    <vg-media vg-src="controller.config.sources"></vg-media>

    <vg-controls>
      <vg-play-pause-button></vg-play-pause-button>
      <vg-time-display>{{ currentTime | date:'mm:ss' }}</vg-time-display>
      <vg-scrub-bar>
        <vg-scrub-bar-current-time></vg-scrub-bar-current-time>
      </vg-scrub-bar>
      <vg-time-display>{{ timeLeft | date:'mm:ss' }}</vg-time-display>
      <vg-volume>
        <vg-mute-button></vg-mute-button>
      </vg-volume>
    </vg-controls>
  </videogular>
</div>
Run Code Online (Sandbox Code Playgroud)

这是控制器代码:

  app.controller('HomeCtrl', ["$sce","$scope", "$window", "sharedProperties", 
      function($sce, $scope, $window, sharedProperties) {

        $scope.sharedProperty = sharedProperties.getProperty();
        $scope.SetValue = function (msg)
        {
            $window.alert( $scope.sharedProperty.data );
            $scope.setProperty = sharedProperties.setProperty;
            $scope.setProperty(msg);
            $window.alert( $scope.sharedProperty.data );
        }

        $window.alert( $scope.sharedProperty.data );

        this.config = {
          sources: …
Run Code Online (Sandbox Code Playgroud)

android audio-player html5-audio angularjs videogular

2
推荐指数
1
解决办法
3278
查看次数