使用XDK进行操作不起作用

时间:2015-12-02 19:17:16

标签: javascript android function cordova intel-xdk

我正在使用org.pushandplay.cordova.apprate和XDK for Android。它只是不起作用。也许这是一个语法问题,但我无法弄清楚。我已经在一些论坛上搜索得不够充分。

我是这样做的:

我安装了org.pushandplay.cordova.apprate插件,最新版本。

我将以下代码放在js / app.js文件中:

function rateButton() {
  var customLocale = {};
  customLocale.title = "Rate this App";
  customLocale.message = "Rate this App 5 star if you found it useful!";
  customLocale.cancelButtonLabel = "No, Thanks";
  customLocale.laterButtonLabel = "Remind Me Later";
  customLocale.rateButtonLabel = "Rate It Now";
  AppRate.preferences.openStoreInApp = true;
  AppRate.preferences.storeAppURL.android = 'market://details?id=com.my.project';
  AppRate.preferences.customLocale = customLocale;
  AppRate.preferences.displayAppName = 'My Project';
  AppRate.preferences.usesUntilPrompt = 1;
  AppRate.preferences.promptAgainForEachNewVersion = false;
  AppRate.promptForRating(true);
};

在html文件中,我提出以下内容:

<button onclick="rateButton()" class="btn btn-primary" type="submit">Rate the app</button>

当我点击按钮(在构建的应用程序中)时没有任何反应。我是否必须指出在何处找到该功能? 我必须承认我对Javascript语法不是很熟悉,但是我研究了一些指南而且找不到我的错误。

2 个答案:

答案 0 :(得分:1)

非常感谢克里斯拉克。它有效!

实际上唯一缺少的是涉及cordova.js的行。

我不知道的是,在放置代码时会自动生成cordova.js。我对XDK印象非常深刻。如果他们只在文档中投入了更多的时间......

答案 1 :(得分:0)

似乎工作正常,这是我测试的完整代码:

<!DOCTYPE html>
<html>

  <head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=no">  

      <script src="cordova.js"></script>
      <script>

function rateButton() {
  var customLocale = {};
  customLocale.title = "Rate this App";
  customLocale.message = "Rate this App 5 star if you found it useful!";
  customLocale.cancelButtonLabel = "No, Thanks";
  customLocale.laterButtonLabel = "Remind Me Later";
  customLocale.rateButtonLabel = "Rate It Now";
  AppRate.preferences.openStoreInApp = true;
  AppRate.preferences.storeAppURL.android = 'market://details?id=com.my.project';
  AppRate.preferences.customLocale = customLocale;
  AppRate.preferences.displayAppName = 'My Project';
  AppRate.preferences.usesUntilPrompt = 1;
  AppRate.preferences.promptAgainForEachNewVersion = false;
  AppRate.promptForRating(true);
};

      </script>      
  </head>

  <body>
      <br><br>
      <button onclick="rateButton()">Rate</button>

  </body>

</html>

在Android和ios设备上构建和工作,你必须改变AppRate.preferences.storeAppURL.android