0

PhoneGap 火炬插件

我正在尝试让 phonegap/android 的 torch 插件工作。我使用了这个代码 Github Torch Plugin 我没有收到任何错误,我不知道可能的错误在哪里。我正在使用cordova-2.0.0 库。

这是我的 index.html

<script type="text/javascript" src="Torch.js">
</script> <script type="text/javascript" src="TorchFunctions.js"> </script> </body> </html>

这是 TorchFunctions.js

    window.plugins.Torch.toggle( 
    function() { console.log( "toggle" ) }                          
,   function() { console.log( "error" ) }                           
);

我在三星 Galaxy SIII 上调试这个。我读到三星设备可能会出现问题 - 这是真的吗?如果是这样,有人可以提出任何建议吗?也许插件不是最新的。最近有人用过这个插件吗?

4

3 回答 3

0

你有没有尝试过:

window.plugins.Torch.turnOn( 
    function() { console.log( "turnOn" ) }                          // success
,   function() { console.log( "error" ) }                           // error
);

否则我可以告诉你我的 S3 和其他三星手机也有问题。在我的几个项目中,我正在使用我也没有 100% 工作的前端 LED。如果有可能,最好先在非三星设备上测试它,然后再根据需要调整代码。

还要确保遵循https://github.com/phonegap/phonegap-plugins/blob/master/Android/Torch/README.md上的所有其他步骤

确保您之前已将 js 文件复制到 phonegap 应用程序的根目录或在 html 中提供正确的路径

  <script src="/folderWithJscript/Torch.js"></script>

声明必须在您的 html 文件的头部,例如:

 <html>
 <head>

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

 </head>
 <body></body></html>

要从按钮调用该函数/将其链接到您的 html 中,它将类似于:

<a href="#torch" onclick="window.plugins.Torch.turnOn()">Torch on</a>

这只是一个猜测。请检查其余的文档。

在 TorchFunctions.js 中保持 Torch 函数独立也很好。您只需要再次将该脚本包含在 html 标头中!

您还必须在您的 android 项目中创建一个名为 res 的文件夹(如果还没有的话),然后是另一个名为 xml 的文件夹,其中包含一个名为 plugins.xml 的文件添加一个插件行到 res/xml/plugins.xml

<plugin name="Torch" value="nl.debree.phonegap.plugin.torch.TorchPlugin" />
于 2012-09-24T10:00:06.580 回答
0

我有这个问题。在 adb 的日志输出中,我看到:

D/TorchPlugin(30890): Plugin created
W/System.err(30890):    at nl.debree.phonegap.plugin.torch.TorchPlugin.<init>(TorchPlugin.java:41)
I/System.out(30890): Error adding plugin nl.debree.phonegap.plugin.torch.TorchPlugin.

解决方案是将以下权限添加到我的 Android 清单中:

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.FLASHLIGHT" />
<uses-permission android:name="android.permission.CAMERA" />

我希望这可以帮助别人!

  • 加文
于 2013-06-05T06:23:49.140 回答
0

在 android phonegap 应用程序中使用本机代码的另一种选择是使用带有 webview 的 actionbar 用于 phonegap 下方或上方。

此处有关仅适用于 3.0 以上的本机 android 操作栏的信息:

http://developer.android.com/guide/topics/ui/actionbar.html

或适用于几乎所有版本/改编本机操作栏的第三方操作栏:

您可能想查看 ActionBarSherlock http://actionbarsherlock.com/。源代码可在此处获取https://github.com/JakeWharton/ActionBarSherlock。它将让您了解它是如何与片段一起使用的。它会给你一些关于如何进行的想法。

谷歌创建了一个 android 兼容性库,以使用他们为低版本(例如 1.5 及更高版本)上的蜂窝创建的一些新 API。它可以在 android sdk 文件夹中找到,例如 E:\Program Files\Android\android-sdk-windows\android-compatibility\v4\android-support-v4.jar。如果您没有此 jar,则需要使用 avd 管理器下载它。

于 2012-09-25T07:33:42.313 回答