小编ato*_*tok的帖子

如何在非Android Gradle Java应用程序中使用Dagger?

Dagger被宣传为"Android和Java的快速依赖注入器".但是我不能让它在没有Gradle'android'插件的情况下运行.

compile 'com.squareup.dagger:dagger:1.2.1'
provided 'com.squareup.dagger:dagger-compiler:1.2.1'
Run Code Online (Sandbox Code Playgroud)

有没有provided在的Java"或"应用" gradle这个插件,我使用.在这个错误报告中甚至提到了.

让它''编译'yelds没有结果.java.lang.IllegalStateException: Module adapter for class ... could not be loaded.抛出同样的东西.

如何使用'java'和'application'来配置使用dagger注释处理器?

java dependency-injection gradle dagger

8
推荐指数
1
解决办法
1597
查看次数

有没有办法重用Job实例?

我正在探索在Android UI线程的上下文中使用协同例程.我contextJob按照Coroutines Guide UI中的描述实现了.后台工作从GUI开始,我想在每次点击时重新启动它(停止当前运行的并重新启动它).

但是一旦被取消的工作就无法重复使用,所以甚至创造了一份儿童工作:

 val job = Job(contextJob)
Run Code Online (Sandbox Code Playgroud)

并取消它并没有帮助,因为它必须被重新分配.

有没有办法重用Job实例?

android coroutine async-await kotlin kotlin-coroutines

8
推荐指数
1
解决办法
1308
查看次数

Html5在Android中拖放

我尝试使用HTML5在Android浏览器中实现简单的拖放操作.当我尝试拖动对象时,只有屏幕滚动,我无法拖动任何内容.有没有办法做到这一点?

HTML在这里:

 For drag:   

<div id="an-obj-12" draggable="true" ondragstart="drag(event)" dropzone="copy">42a</div>
<div id="an-obj-13"  draggable="true" ondragstart="drag(event)" dropzone="copy">4a</div>
<div id="an-obj-14"  draggable="true" ondragstart="drag(event)" dropzone="copy">14</div>

For drop:

<div id="an-obj-7" ondrop="drop(event,'12a^2')" ondragover="allowDrop(event)"></div>
<div id="an-obj-8" ondrop="drop(event,'42a')" ondragover="allowDrop(event)"></div>
<div id="an-obj-9" ondrop="drop(event,'4a')" ondragover="allowDrop(event)"></div>
Run Code Online (Sandbox Code Playgroud)

html5 android

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

libGDX And​​roid使用netbeans - 任务菜单对于屏幕来说太大了

libGDX netbeans运行指南中它说要在android上运行,去吧Tasks -> installDebug.但是在netbeans中,任务菜单太长了,installDebug没有显示,也无法向下滚动列表.其他人肯定有这个问题,但谷歌没有给我带来任何结果.所以我的问题是,我如何安装调试,我是否必须创建自定义任务?谢谢

在此输入图像描述

java swing netbeans

7
推荐指数
2
解决办法
492
查看次数

实例val是否比伴随对象val更昂贵?

是否有一个很好的理由(性能方面)来替换:

val SOME_CONST = "value"

companion object {
    val SOME_CONST = "value"
}
Run Code Online (Sandbox Code Playgroud)

添加@JvmStatic注释会改变结果吗?

kotlin

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

扇出/扇入 - 关闭结果通道

我正在生产项目,从多个协同例程中消耗并推回到resultChannel.制作人在最后一个项目后关闭其频道.

代码永远不会完成,因为resultChannel永远不会被关闭.如何检测并正确完成迭代以便hasNext()返回false

val inputData = (0..99).map { "Input$it" }
val threads = 10

val bundleProducer = produce<String>(CommonPool, threads) {
    inputData.forEach { item ->
        send(item)
        println("Producing: $item")
    }

    println("Producing finished")
    close()
}

val resultChannel = Channel<String>(threads)

repeat(threads) {
    launch(CommonPool) {
        bundleProducer.consumeEach {
            println("CONSUMING $it")
            resultChannel.send("Result ($it)")
        }
    }
}

val iterator = object : Iterator<String> {
    val iterator = resultChannel.iterator()
    override fun hasNext() = runBlocking { iterator.hasNext() }
    override fun next() = runBlocking { iterator.next() }
}.asSequence() …
Run Code Online (Sandbox Code Playgroud)

channel coroutine kotlin kotlinx.coroutines

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

PHP和Ajax的进度条

我正在使用进度条,使用ajax请求和会话变量更新进度.当我的程序执行耗时的操作,如发送许多电子邮件等时,它只是设置适当的会话变量(包含进度值).此操作由下面的代码中的函数post()启动.

同时,第二个函数ask()每500ms循环执行一次.它应该实时返回当前进度.这就是问题:ask()发送的每个请求都在等待post()函数发送的请求完成.有趣的是,如果我设置一些像google.com这样的URL而不是url/to/progress它可以正常工作,除非它不是我想要的:).这意味着问题出在服务器端.

不确定它是否重要,但我使用的是Yii Framework.

下面的所有代码只是划痕(但有效),其唯一目的是展示我的意思.

提前致谢.

抱歉我的英语不好:)

查看部分:

<script type="text/javascript">
function ask() {
  var d = new Date();
  var time = d.getTime();
  $.ajax({

    type: 'get',
    url: '/url/to/progress' + '?time=' + time,
    success: function(data) {
      $("#progress").html(data);
    }
  })
}

function post() {
  var d = new Date();
  var time = d.getTime();

  $.ajax({
      type: 'post',
      url: '/url/to/post' + '?time=' + time,
      data: {"some": "data"},
      success: function(data) {alert(data)}
    });
}

$("#test").click(
  function() {
    post();
    var progress = setInterval("ask();", 500);
  }
);
</script>
Run Code Online (Sandbox Code Playgroud)

控制器部分: …

php jquery post progress request

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

如何将基于回调的API转换为基于Observable的API?

我正在使用的库Message使用回调对象发出一系列对象.

interface MessageCallback {
    onMessage(Message message);
}
Run Code Online (Sandbox Code Playgroud)

使用某个libraryObject.setCallback(MessageCallback)调用添加回调,并使用非阻塞libraryObject.start()方法调用启动该进程.

创建Observable<Message>将发出这些对象的最佳方法是什么?

怎么libraryObject.start()阻止?

java multithreading rx-java

6
推荐指数
2
解决办法
1871
查看次数

有没有办法使用Gradle将Kotlin类编译为JavaScript?

我正在使用Kotlin Gradle插件构建一个项目.一般来说,我的目标是JVM,但将项目的一部分编译为JavaScript会非常有用.

我知道一个项目可以在使用IntellJ插件构建时使用JavaScript(如在浏览器博客文章中编写Kotlin中所述),但是如何使用gradle进行操作?我把项目分成几个gradle模块就可以了.

javascript java intellij-idea gradle kotlin

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

通过反射查找可空属性

有没有办法列出允许返回空值的对象的所有属性?

val cls = javaClass<T>().kotlin

for(property in cls.properties) {
    if(property.accessible) {
        //Is it nullable?

    }
}
Run Code Online (Sandbox Code Playgroud)

kotlin

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