【问题标题】:Can't get devices language in phonegap无法在 phonegap 中获取设备语言
【发布时间】:2015-07-22 11:53:49
【问题描述】:

我正在做this phonegap 文档中的确切示例。

<!DOCTYPE HTML>
<html>
<head>
<title>getPreferredLanguage Example</title>
<script type="text/javascript" charset="utf-8" src="cordova.js"></script>
<script type="text/javascript" charset="utf-8">

function checkLanguage() {
  navigator.globalization.getPreferredLanguage(
    function (language) {alert('language: ' + language.value + '\n');},
    function () {alert('Error getting language\n');}
  );
 }
 </script>
 </head>
 <body>
 <button onclick="checkLanguage()">Click for language</button>
 </body>
 </html>

当我点击按钮时,我希望它返回我在手机上使用的语言。 如果我通过 PhoneGap 应用程序运行它,它会很好用,同时连接到我计算机上的本地服务器(phonegap 服务),但是在制作 .apk 并将其安装到我的手机上后它就无法工作了。我错过了什么?

编辑:这是 config.xml http://pastebin.com/t6fx3jRD

<?xml version='1.0' encoding='utf-8'?>
<widget id="com.phonegap.helloworld" version="1.0.0"
 xmlns="http://www.w3.org/ns/widgets"
 xmlns:gap="http://phonegap.com/ns/1.0">
<name>hi bi</name>
<description>
    sample stuff
</description>
<author email="support@phonegap.com" href="http://phonegap.com">
    PhoneGap Team
</author>
<content src="index.html" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<preference name="phonegap-version" value="3.3.0" />
<preference name="permissions" value="none" />
<preference name="orientation" value="default" />
<preference name="target-device" value="universal" />
<preference name="fullscreen" value="true" />
<preference name="webviewbounce" value="true" />
<preference name="prerendered-icon" value="true" />
<preference name="stay-in-webview" value="false" />
<preference name="ios-statusbarstyle" value="black-opaque" />
<preference name="detect-data-types" value="true" />
<preference name="exit-on-suspend" value="false" />
<preference name="show-splash-screen-spinner" value="true" />
<preference name="auto-hide-splash-screen" value="true" />
<preference name="android-installLocation" value="auto" />
<icon src="icon.png" />
</widget>

【问题讨论】:

  • 请在您的帖子中添加config.xml。

标签: phonegap-plugins phonegap-build globalization phonegap-desktop-app


【解决方案1】:

我没有看到任何明显的问题,但有五件事需要解决。

  1. 您需要将您的 config.xml 发布到此论坛。如果您删除该 pastebin 文件,其他人将无法从中受益。 (如果我们可以让它工作的话。)
  2. 您使用的是通用文件,这不是一件坏事,只是大文件更难发现问题。
  3. 您没有使用&lt;preference name="phonegap-version" value="X.X.X" /&gt;,这不是必需的。但既然你不这样做,那么默认情况下你会得到最新版本(最前沿)的 phonegap。 (这可能会给您带来难以调试的前沿错误 - 无需寻求大量帮助。)
  4. 由于您使用的是最新版本的 Phonegap,而不是 3.3.0,因此您应该参考 leading edge - 它没有完整的示例。
  5. 既然你没有说你的目标平台是什么,那么也许你应该看看Bug List

最后,您可以考虑使用较早的版本,例如&lt;preference name="phonegap-version" value="3.3.0" /&gt;,然后再次尝试构建。哦,还有 RTFM。

祝你好运,杰西

【讨论】:

  • 您好,谢谢。 1. 完成。 2. 完成。 3,4,5 完成。我在 config.xml 中添加了 ,但是我已经在我的计算机上安装了最新版本的 phonegap,我是否也应该降级安装?顺便说一句,现在它显示了语言。另外,我确实读过,现在仍然是调频。
  • 无需降级。 Phonegap/Cordova 非常擅长修复错误,所以当您升级时,您会得到错误修复,即使在旧版本上 - 如果它没有被弃用。 FWIW:FM可能不清楚,并且有错误。最近是one I found at Apple。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-01-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多