我想在Windows下使用Aptana Studio for Rails开发.我目前有不同的开发工具和运行(如git/ruby/jdk),我也想安装Aptana Studio,但我不能.下载并运行安装程序后,它正常启动,在我选择目标目录后,它开始下载prequisities.我有几个问题:
我使用的是Win7 x64,ruby 1.9.3p-545,msysgit 1.8.4,jdk 1.7.有没有人有类似问题并成功安装了这个ide?
我有点麻烦了解subscribeOn/observeOn如何在RxJava中工作.我创建了一个带有observable的简单应用程序,可以发出太阳系行星名称,进行一些映射和过滤并打印结果.
据我所知,调度工作到后台线程是通过subscribeOn
运算符完成的(它似乎工作正常).
观察后台线程也适用于observeOn
运营商.
但是我在理解,如何观察调用线程(如果它是主线程或任何其他线程)时遇到了麻烦.它很容易在Android上运行AndroidSchedulers.mainThread()
,但我不知道如何在纯java中实现这一点.
这是我的代码:
public class Main {
public static void main(String[] args) throws InterruptedException {
ThreadPoolExecutor executor = new ThreadPoolExecutor(3, 5, 3000L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue<>());
System.out.println("Main thread: " + getCurrentThreadInfo());
Observable<String> stringObservable = Observable.from(Arrays.asList("Merkury", "Wenus", "Ziemia", "Mars", "Jowisz", "Saturn", "Uran", "Neptun", "Pluton"))
.map(in -> {
System.out.println("map on: " + getCurrentThreadInfo());
return in.toUpperCase();
})
.filter(in -> {
System.out.println("filter on: " + getCurrentThreadInfo());
return in.contains("A");
})
.subscribeOn(Schedulers.from(executor));
for (int i = 0; i < …
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用kotlin和gradle,但我无法使用Intellij Idea 15成功创建项目.
我已经创建了有两个模块简单的项目hello-java
和hello-kotlin
.
hello-java
是普通的java项目,它正在编译和运行完美.
hello-kotlin
是简单的kotin模块,只有一个*.kt文件和build.gradle
文件.
以下是来源:
的build.gradle
group 'pl.fzymek.kotlin'
version '1.0-SNAPSHOT'
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:0.10.4"
}
}
apply plugin: 'kotlin'
apply plugin: 'application'
mainClassName = 'HelloKotlinKt'
repositories {
mavenCentral()
}
jar {
manifest {
attributes 'Main-Class': mainClassName
}
}
dependencies {
compile "org.jetbrains.kotlin:kotlin-stdlib:0.10.4"
}
Run Code Online (Sandbox Code Playgroud)
HelloKotlin.kt
fun main(args: Array<String>) {
println("Hello, Kotlin!")
}
Run Code Online (Sandbox Code Playgroud)
主模块settings.gradle
include 'hello-java'
include 'hello-kotlin'
Run Code Online (Sandbox Code Playgroud)
运行时gradlew clean build
所有项目都编译成功,但运行时出现java -jar hello-kotlin-1.0-SNAPSHOT.jar …
我正在学习Ruby,我在使用Object#freeze
带变量的方法时发现了有趣的行为.
我冻结变量后(无论是Fixnum
或Array
),我仍然可以对其进行修改!这很奇怪,因为就我而言,这不应该发生,TypeError
应该提出来.
这是我的代码:
test = 666
var = 90
#ok
var += 5
puts "var.frozen? #{var.frozen?}"
var.freeze
puts "var.frozen? #{var.frozen?}"
var = test
puts "var = #{var}"
Run Code Online (Sandbox Code Playgroud)
对于数组也是如此:
test = [666]
var = [90]
#ok
var += [5]
puts "var.frozen? #{var.frozen?}"
var.freeze
puts "var.frozen? #{var.frozen?}"
var = test
puts "var = #{var}"
Run Code Online (Sandbox Code Playgroud)
但是当我试图在冻结后将某些东西推入阵列时,它会像预期的那样引发恐怖:
test = [666]
var = [90]
#ok
var += [5]
puts "var.frozen? #{var.frozen?}"
var.freeze
puts "var.frozen? #{var.frozen?}"
var << …
Run Code Online (Sandbox Code Playgroud) 我正在为联系人管理创建简单的小部件,允许用户拨打和发送短信到所需的联系人.
它作为"普通小部件"工作正常,但当我在Android 4.2上将其添加为锁屏小部件时,短信应用或拨号应用程序无法启动.其实他们明星,但"落后"锁屏,所以用户仍然必须手动解锁屏幕才能拨打/发送短信.
我在网上搜索了一些解决方案,但没有任何东西派上用场.我知道FLAG_DISABLE_KEYGUARD或FLAG_SHOW_WHEN_LOCKED,但由于短信/拨号应用程序不是"我的"所以我不知道他们是否设置了正确的标志.作为一种解决方法,我试图创建我的活动,设置那些标志然后只是启动所需的一个(拨号或短信),但这没有帮助.
有一种方法来解锁屏幕,但是这涉及到使用KeyguardManager和KeyguardLock(其中正常工作),但在使用KeyguardLock.newKeyguardLock()我结束了电话不能够自动打开锁,肯定是因为我不知道的结果释放此锁(它会导致锁再次出现,这不是我想要的).
事实上,这个小部件应该与锁定屏幕上的默认短信小部件或邮件小部件一起工作?
那么,我的问题是,如何实现这一点并从锁屏开始新的活动?
android widget lockscreen android-activity android-4.2-jelly-bean