在运行Chrome应用程序的Windows中,我可以毫无问题地接收广播数据包.但是,当我使用该应用程序并使用cordova/crosswalk工具进行编译时,我似乎无法接收任何数据包.我看到wireshark中的所有数据包.我的数据包从172.24.0.42传输,并在172.24.255.255上广播(255.255.255.255上的广播在Android上不起作用,但它在Windows Chrome应用程序上有效).
这是我的(manifest.json):
"sockets":{
"udp": {
"bind": "*"
}
},
"permissions":["system.network" , "power"],
Run Code Online (Sandbox Code Playgroud)
这是我的网络代码:
chrome.sockets.udp.create({}, function(socketInfo) {
socketId = socketInfo.socketId;
// Setup event handler and bind socket.
chrome.sockets.udp.onReceive.addListener(onReceive);
chrome.sockets.udp.bind(socketId, "0.0.0.0", 4213, function(result) {
if (result < 0) {
console.log("Error binding socket.");
return;
}
//chrome.sockets.udp.send(socketId, arrayBuffer, '127.0.0.1', 1337, function(sendInfo) {
// console.log("sent " + sendInfo.bytesSent);
// })
//chrome.sockets.udp.setBroadcast(socketId, true, function(){})
});
});
Run Code Online (Sandbox Code Playgroud)
这是我收到数据包的时候:
var onReceive = function(info) {
if (info.socketId !== socketId)
return;
chrome.sockets.udp.setPaused(socketId, true, function(){}); // Set socket paused; Essentially …Run Code Online (Sandbox Code Playgroud) 我已经使用Polymer整合了一个Chrome应用程序,并希望将其安装在Android平台上.我已成功按照此处列出的步骤编译并部署了SDK:
https://github.com/MobileChromeApps/mobile-chrome-apps
问题是,我的chrome应用程序只有37k,编译的SDK是37Mb.我也尝试编译'Hello World'样本并得到类似的文件大小.
虽然我预计会有一些开销,但这似乎非常高.我假设它是因为cca命令行自动提取你可能需要的所有预期插件,即使我可能只使用很少(如果有的话).
有没有办法减少使用cca构建的应用程序的文件大小 - 或者这只是它在早期开发人员预览阶段的限制?
干杯!
我正试图在我的PhoneGap/Cordova应用程序中渲染一些WebGL,但我没有运气.
var canvas = document.createElement('canvas');
var gl = canvas.getContext("webgl") || canvas.getContext("experimental-webgl");
if (!gl) {
console.log('WebGL not supported');
}
Run Code Online (Sandbox Code Playgroud)
该gl变量总是空.
我尝试使用OnePlus One和Nexus 5,它们都是Android KitKat v4.4.4 Chrome 38.
相同的代码在iOS8和桌面上运行良好.
该代码适用于在这些设备上以chrome方式加载的普通网页.所以呢http://get.webgl.org/
我甚至尝试使用CCA,它使用人行横道将Chrome捆绑到应用程序中.
我已经尝试了谷歌搜索错误我被充斥着设备不支持它的人(iOS <v8和Android <v4.4).
我认为这可能是我必须在构建链中启用的东西.
先感谢您.
狭谷
我正在使用Mobile Chrome App Cordova CLI工具cca在Android上构建我的webapp.
然后,我添加了一个Cordova插件,我希望将其渲染到Cordova中,config.xml如下所示:
<feature name="Keyboard">
<param name="ios-package" value="IonicKeyboard" onload="true" />
</feature>
Run Code Online (Sandbox Code Playgroud)
如何在清单文件中指定此添加内容?
它似乎被cca检测到
$ cca plugin ls
cca v0.1.1
com.ionic.keyboard 1.0.2 "Keyboard"
[..]
Run Code Online (Sandbox Code Playgroud)
感谢任何指针.如果它目前不受支持,我可以帮忙建立它.
我开发了一个网站,我打算在Chrome浏览器中的webview中显示.这很好用.
现在,我想从网站上使用postMessage,将消息从webview发送到包含的Chrome应用程序.这是通过top.postMessagewebview内部完成的.
我尝试过以下事件监听器:
webView.contentWindow.addEventListener('message', messageHandler);
webView.addEventListener('message', messageHandler);
window.addEventListener('message', messageHandler);
document.addEventListener('message', messageHandler);
Run Code Online (Sandbox Code Playgroud)
我已经成功实现了以下事件监听器.所有这一切都按预期工作:contentload,dialog和consolemessage.
除非我能让它工作,否则我正在考虑使用consolemessage从webview发送消息到容器 - 我发现这些消息没有吸引力,我怀疑它在不使用开发者模式时不起作用.
javascript google-chrome-extension google-chrome-app cordova-chrome-app