小编Jon*_*han的帖子

对如何在Android上使用CouchDB感到困惑

我想让CouchDB作为我的移动应用程序的后端运行,取代SQlite.

作为这项技术的新手,我一直非常困惑,因为除了Couchbase去年发布的所有类似的声音产品(Couchbase,Couchbase Single Server,Membase,Couchbase Mobile)之外,他们现在似乎正在放弃/合并所有这些产品到一个项目,Couchbase Server.但是,这实际上是Membase,而不是CouchDB.最重要的是,CouchDB的创建者不再会在CouchDB上工作了.然而,CouchDB似乎有一个非常活跃的社区.这就是我所知道的:

  1. 据我所知,Couchbase公司不再提供CouchDB的发行版.

  2. 我知道Couchbase服务器是Couchbase公司的新焦点,它实际上根本不是CouchDB,它与CouchDB不兼容.它没有实现CouchDB使用的HTTP API,它使用的是从Membase演化而来的二进制协议.

  3. 所有关于CouchDB Mobile的最新信息似乎都指向Couchbase Mobile.

我的问题归结为:

是否仍然可以在Android设备上使用CouchDB?特别是CouchDB,而不是Couchbase Server,因为API不兼容

如果仍有可能,我该怎么办?源代码在哪里?任何样品应用?

对不起,如果我的问题让人困惑.说实话,我很难在网上搜集大量看似矛盾的帖子.我只是想在Android上运行CouchDB!:)

android couchdb couchbase touchdb

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

Knockout.js - foreach绑定 - 测试最后一个元素

我使用以下模板:

<div class="datatypeOptions" data-bind="if: $data.datatypeTemplate().allowOptions">
    <h3>Allowed responses</h3>

    <p data-bind="if: $data.datatypeTemplate().datatypeOptions().length == 0">There are no responses for this question, yet. <a href="#" data-bind="click: function(d, e){$root.addDatatypeOption($data.datatypeTemplate());}">Add one</a>
    <ul data-bind="foreach: $data.datatypeTemplate().datatypeOptions()">
        <li>
            <a href="#" data-bind="text: name, click: $root.selectedDatatypeOption, visible: $data !== $root.selectedDatatypeOption()"></a>
            <input data-bind="value: name, visibleAndSelect: $data === $root.selectedDatatypeOption(), event: { blur: $root.clearDatatypeOption }, executeOnEnter: { callback: function(){ $root.addDatatypeOption($parent.datatypeTemplate()); } }" />
            //I want to show this a tag only if $data is the last element in the array.
Problem here ===>  <a …
Run Code Online (Sandbox Code Playgroud)

javascript knockout.js

41
推荐指数
3
解决办法
3万
查看次数

Javascript回调函数传递给Android

我有一个用Java实现的javascript接口,由我在webview中加载的javascript代码调用.

JS Inside webview:

Android.myFunction(function(data){
    console.log(data);
});
Run Code Online (Sandbox Code Playgroud)

Java的:

public class JavaScriptInterface {

    Context context;
    WebView webView;

    JavaScriptInterface(Context c, WebView w) {
        context = c;
        webView = w;
    }

    public void myFunction(String callback) {
        //when I log callback, it is "undefined"
         String someData = "Yay for data";
         String js =
             "javascript:(function() { "
                 + "var callback = " + callback + ";"
                 + "callback('" + someData + "');"
             + "})()";
        webView.loadUrl(js);
    }
}
Run Code Online (Sandbox Code Playgroud)

由webview加载的字符串最终为:

javascript:(function() {var callback = undefined; undefined();})()
Run Code Online (Sandbox Code Playgroud)

我有一些想法: …

javascript java android webview

29
推荐指数
3
解决办法
4万
查看次数

我应该使用哪个Node.js路由器?

我想开发一个CMS,我需要一个很好的Node.js路由系统.

我没有任何预先决定,我会提出任何建议.

javascript content-management-system node.js

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

Asterisk + Node.js +浏览器流媒体

我想构建一个允许用户通过浏览器实时收听呼叫的服务.

我对Asterisk有一些经验,这似乎足够灵活,可以完成我所描述的内容.

Node.js听起来不错,因为它声称可以很好地处理并发性,而且我喜欢JavaScript.

在浏览器中,我认为HTML5音频标签,因为它处理来自流媒体源的播放,可以很好地播放声音.

我的一位同事使用Icecast一起制作了这个概念的演示,但是无法完成它.还存在显着的延迟问题.

我的问题是:

我应该如何开始这个?

任何帮助表示赞赏!

更新:

我发现了一个演示文稿,讨论通过后端的SIP代理在WebSockets上实现SIP:

http://sip-on-the-web.aliax.net/

一旦我启动并运行,下一步就是实现流式传输.似乎我应该能够代理通常通过辅助服务器将其流式传输到浏览器的sip客户端的音频输出.我想知道为什么这不能在记忆中完成?然后,随着调用的进行,无需写入和读取文件.

streaming voip asterisk node.js

7
推荐指数
1
解决办法
9642
查看次数

AWS DynamoDB VS Couchdb,哪个更好用?

我什么时候想要使用另一个?

阅读两者,它们听起来奇怪的相似,所以我想知道是否有一点经验的人会有利润/缺点和每个擅长的用例?

couchdb amazon-dynamodb

7
推荐指数
1
解决办法
5409
查看次数

在Android中有效缓存数据上传

我在Android中实现了一个队列服务,它将根据队列和wifi /数据连接事件更改状态.

我将要发布的事务排队到远程URL.如果设备具有数据或wifi连接,它将迭代队列并将数据发布到URL,直到队列为空,或者存在断开连接事件.

我可以登录我的应用程序,启用飞行模式,生成数据,关闭飞机模式,以及发布交易.即使有成千上万的交易,也不会减速.(我试着稍微掏钱)

输入:低接收!当3G接收率较低时,我的应用程序速度极慢.(是的,所有上传都发生在ui线程之外.)似乎这种减速的原因与服务器的帖子有很长一段时间发生,有时只是失败.

我的问题是,我该如何解决这个问题?检查信号质量?轮询一个已知地址?Gmail等其他应用如何解决此问题?这必须是一个常见的场景!

android

7
推荐指数
1
解决办法
505
查看次数

Android没有足够的页面瓷砖?

当我打开我的活动时,屏幕只是空白...然后我在日志中看到上面的错误:

01-28 15:19:03.000: D/TiledPage(3366): ERROR: We don't have enough tiles for this page! nbTilesHeight 427575 nbTilesWidth 786344

我迷失在哪里,我需要离开这里.该应用程序过去运行良好,现在只是显示一个空白屏幕.

显示的活动的布局是操作栏和填充剩余空间的webview.甚至没有出现动作栏,因此,我认为这与webview没有任何关系.

任何帮助将不胜感激!

更新:

当我强行关闭应用程序并再次打开它时,它会起作用.显然,我不希望在用户使用该应用程序时发生这种情况,因此,我可以做些什么来防止将来出现这种情况?知道如何找到实际原因会有所帮助.

android

6
推荐指数
1
解决办法
711
查看次数

CSS特性如何决定应用哪种样式?

CSS如何确定何时应用一种样式而不是另一种样式?

我已经通过W3 CSS3选择器文档了几次,这帮助我理解了如何在jQuery中更好地使用CSS选择器,但它并没有真正帮助我理解何时将一个CSS规则应用于另一个CSS规则.

我有以下HTML:

<div class='item'>
    <a>Link 1</a>
    <a class='special'>Link 2</a>
</div>
Run Code Online (Sandbox Code Playgroud)

我有以下CSS:

.item a {
    text-decoration: none;
    color: black;
    font-weight: bold;
    font-size: 1em;
}

.special {
    text-decoration: underline;
    color: red;
    font-weight: normal;
    font-size: 2em;
}
Run Code Online (Sandbox Code Playgroud)

鉴于上述情况,链接1和链接2的样式将相同,由.item aCSS 确定.为什么与.special链接2不相关的样式不优先?

显然,我可以像这样绕过它:

.special {
    text-decoration: underline !important;
    color: red !important;
    font-weight: normal !important;
    font-size: 1em !important;
}
Run Code Online (Sandbox Code Playgroud)

但是,我觉得这是一个由于我缺乏理解而无法进行的黑客攻击.

css css-selectors css-specificity

6
推荐指数
1
解决办法
887
查看次数

Lighttpd反向代理设置

我正在尝试将Lighttpd配置为充当反向代理.我希望有几个URL代理到不同端口上的不同服务器,可以在同一台机器上,也可以在本地网络中.

例如:

// static/socket/ajax

Lighttpd将代理所有连接,除了那些连接/static.我想/static直接从这个lighttpd实例提供所有请求.

这是mod_proxy的配置文件:

##
# Serve Static Content via Lighttpd.
#
$HTTP["url"] =~ "^/static/" {
    server.document-root = "/path/to/my/static/files"
    accesslog.filename = rootdir + "/var/log/static.log"
    server.errorlog = rootdir + "/var/log/static.error.log"
}
##
# Proxy to instance of Socket.io.
#
else $HTTP["url"] =~ "^/socket/" {
    accesslog.filename = rootdir + "/var/log/socket.log"
    server.errorlog = rootdir + "/var/log/socket.error.log"
    proxy.server  = (
        "" => ( (
            "host" => "127.0.0.1",
            "port" => 3000
        ) )
    )
}
##
# Proxy to …
Run Code Online (Sandbox Code Playgroud)

ajax reverse-proxy lighttpd socket.io

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