小编Ray*_*yek的帖子

Java 8中的Streams是monad吗?

似乎Java 8中Optional是monad.

Streams也是monad吗?

任何人都可以识别endofunctor和可选monad中的两个自然变换吗?

monads functional-programming java-8 java-stream

17
推荐指数
2
解决办法
2711
查看次数

Android Jack:来自jar文件的Lambda需要在类路径上编译接口,未知接口是java.util.function.Consumer

在Android studio 2.2上获取此功能.

有没有人有解决方法?

我的应用构建文件是:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 24
    buildToolsVersion "24.0.2"

    defaultConfig {
        applicationId "acme.cb2"
        minSdkVersion 18
        targetSdkVersion 24
        versionCode 1
        versionName "1.0"
        jackOptions {
            enabled true
        }

    }
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    testCompile 'junit:junit:4.12'
    compile 'com.android.support:appcompat-v7:24.1.1'
    compile 'com.android.support:support-v4:24.1.1'
}
Run Code Online (Sandbox Code Playgroud)

编辑:修改构建文件以包含来自/sf/users/402716401/的答案- 但这没有帮助

import java.text.SimpleDateFormat

buildscript {
    repositories {
        jcenter()
    }
    dependencies …
Run Code Online (Sandbox Code Playgroud)

java lambda android android-studio

17
推荐指数
1
解决办法
5534
查看次数

Android - 自定义按钮,具有形状可绘制和渐变编程

我想制作一个像这个程序的自定义按钮,也许是一个径向渐变.

我将视图子类化,并绘制三个形状drawable,然后绘制文本.文本似乎偏离中心,所以我试图为文本绘制一个边界矩形,但那里没有运气.并计划添加一个点击监听器来获取类似行为的按钮.

也许我应该是子类按钮,但是在哪里绘制我的drawables所以他们不会被按钮的文本绘制搞乱.

任何指针将不胜感激.

谢谢

Edit2:看下面的第二次尝试.

Edit3:赏金的原因是弄清楚为什么子类化drawable不起作用.梯度不是那么重要.

edit4:在DrawableView :: OnDraw()中的getTextBounds()之前发现了drawRect.

package acme.drawables;
import android.content.*;
import android.content.pm.*;
import android.graphics.*;
import android.graphics.drawable.*;
import android.graphics.drawable.shapes.*;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.*;
import android.view.Menu;
import android.view.View;
import android.widget.*;
import static java.lang.Math.*;
public class MainActivity extends AppCompatActivity {
    DrawableView drawableView;
    LinearLayout row(boolean isRow1) {
        LinearLayout layout=new LinearLayout(this);
        layout.setOrientation(LinearLayout.HORIZONTAL);
        LinearLayout.LayoutParams layoutParams=new LinearLayout.LayoutParams(w,d);
        int m=(int)round(w*margin);
        layoutParams.setMargins(m,m,m,m);
        for(int i=0;i<n;i++)
            layout.addView(drawableView=new DrawableView(this,i,isRow1),layoutParams);
        return layout;
    }
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
        DisplayMetrics metrics=new DisplayMetrics();
        getWindowManager().getDefaultDisplay().getMetrics(metrics);
        w=d=(int)round(metrics.densityDpi);
        LinearLayout …
Run Code Online (Sandbox Code Playgroud)

java android shape button programmatically-created

15
推荐指数
1
解决办法
1260
查看次数

android检测测试的输出在哪里?

我设法让gradle cC工作.我的测试打印出来并记录一行文字.

grep -r text * fails.
Run Code Online (Sandbox Code Playgroud)

哪里是system.outlogging输出?

谢谢

编辑:我找到了单元测试的输出(它在.../app/build/test-results /中).但是对方仍然没有运气.

有没有办法以某种方式保存仪表化测试的输出?

android automated-tests android-instrumentation

13
推荐指数
1
解决办法
5070
查看次数

android 6.0.1强制wifi连接,无法访问互联网

这有很多类似的问题(谷歌:"没有检测到互联网访问.不会自动重新连接."或:android force wifi连接编程).

我以为我在这里有一个答案,但它在安装6.0.1更新后停止工作(我可能有1个安全补丁).

似乎这是一种行为改变.

我有一些2013年nexus 7和6.0.1运行一个自助服务终端类型的应用程序,并希望以编程方式连接到没有互联网连接的特定无线网络.每个平板电脑都有一个唯一的静态IP地址:192.168.0.xx. 我使用普通的java套接字构造函数并检查接口是否正在使用:NetworkInterface.getNetworkInterfaces().

手动连接已经完成.有时会出现一个对话框,询问您是否要始终连接.我总是检查是的.

但wifi说:"在路由器重启电源后,没有检测到互联网接入.不会自动重新连接".

断开连接,启用,重新连接不起作用.它最多得到:ip6-localhost/:: 1.

有没有人有使用请求对象或bindProcessToNetwork的运气?

编辑:相关.

编辑:问题似乎与:CAPTIVE_PORTAL_DETECTION_ENABLED - 此字符串似乎在源中定义:

public static final String
        CAPTIVE_PORTAL_DETECTION_ENABLED = "captive_portal_detection_enabled";
    ...
    MOVED_TO_GLOBAL.add(Settings.Global.CAPTIVE_PORTAL_DETECTION_ENABLED);
Run Code Online (Sandbox Code Playgroud)

但抛出"android.provider.Settings $ SettingNotFoundException:captive_portal_detection_enabled明确使用时,android studio不可见.

另外,执行全局设置列表不包含常量.

编辑一个adb shell设置put global captive_portal_detection_enabled 0似乎确实有效,但是当路由器重启电源时,这不能在现场完成.当平板电脑循环供电时,这个值似乎仍然存在.现在这个值显示在全局设置列表中.另外,使用原始字符串:Settings.Global.getInt(getContentResolver(),"captive_portal_detection_enabled"); 现在返回0.

编辑:看起来像设置它需要:android.permission.WRITE_SECURE_SETTINGS,但当然放入清单时失败,因为我们不是系统应用程序.

编辑:尝试执行shell命令抛出:java.lang.SecurityException,所以看起来你需要从adb发出命令:(

谢谢

android network-programming android-wifi android-6.0-marshmallow

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

Gradle无法为参数找到方法compile()

我有一个hello world全屏android studio 1.5.1应用程序,我添加了gradle/eclipse-mars子项目.除了将settings:'javalib'添加到settings.gradle之外,没有其他文件被修改.添加项目lib依赖项:

project(':app') {
    dependencies {
        compile project(':javalib') // line 23
    }
}
Run Code Online (Sandbox Code Playgroud)

从根构建构建文件并从命令行运行gradle,得到:

  • 其中:构建文件'D:\ AndroidStudioProjects\AndroidMain\build.gradle'行:23

  • 出了什么问题:评估根项目'AndroidMain'时出现问题.

    无法在org.grad le.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler_Decorated@46 3ca82f上为参数[project':javalib']找到方法compile().

将java插件添加到根构建文件没有帮助.

我不认为它在错误的地方.

根项目和添加的子项目都有gradle包装器.

任何指针将不胜感激.

谢谢

编辑:为了澄清,根构建文件是:

// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.5.0'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}
allprojects {
    repositories …
Run Code Online (Sandbox Code Playgroud)

android subproject gradle android-gradle-plugin

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

在 tensorflow 2 中导入 tensorflow 模块很慢

相关: 导入 TensorFlow contrib 模块在 TensorFlow 1.2.1 中很慢什么会导致 TensorFlow 导入如此缓慢?

我正在使用 ssd 并导入 TensorFlow。我有 4 ghz 8 核 pc 和 16 gb ram(处理器 AMD FX(tm)-8350 八核处理器,4000 Mhz,4 核,8 逻辑处理器)。TensorFlow 需要 10-12 秒才能导入。

有什么办法可以选择性地导入部分 TensorFlow?

RAM 磁盘有帮助吗?

是否有更多的工作在做这样的事情或者:用 Python 3 导入 tensorflow.contrib 因为inspect.stack 很慢#11829 很慢

编辑:Python 3.6.8 :: Anaconda, Inc. on windoze 8.1。Dos 框,cygwin bash 慢 12 秒。vs code bash/power shell 最快 8 秒。在 .py 文件中导入,例如: import tensorflow as tf. 不确定是什么环境。

编辑2:

PS D:\ray\dev\ml\ss1> conda …
Run Code Online (Sandbox Code Playgroud)

python-import python-3.x tensorflow2.0

10
推荐指数
1
解决办法
1012
查看次数

当 conda 尚不支持时,如何在 Windows 上安装最新的 Tensorflow(此处:2.2)?

我在 Windows 8.1 上有 conda 4.8.3 和 Python 3.7.4。

我在 conda 环境中安装了 tf 2.0.0。如何升级到 2.2.x?

或者,我如何在 conda 环境中安装 2.2.x?

编辑 1: pip install --upgrade tensorflow 说: Requirement already up-to-date: tensorflow in d:\anaconda3\envs\tf2\lib\site-packages (2.1.0)

但是 tf 版本仍然是 2.0。

编辑 2:conda install tensorflow==2.2.0 说:

PackagesNotFoundError: The following packages are not available from current channels:
Run Code Online (Sandbox Code Playgroud)
  • 张量流==2.2.0

我在这里确实有一些运气。

编辑3:

(tf2) D:\ray\dev\covid-19>conda list -n tf2
# packages in environment at D:\Anaconda3\envs\tf2:
#
# Name                    Version                   Build  Channel
_anaconda_depends         2019.03                  py37_0
_ipyw_jlab_nb_ext_conf    0.1.0                    py37_0 …
Run Code Online (Sandbox Code Playgroud)

python anaconda conda tensorflow2.0

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

如何在包视图中制作eclipse neon show git branch?

我只是使用命令行将现有项目添加到GitHub.

有时eclipse在包视图中显示分支,如:foo [foo master].

我的eclipse项目是在执行:之前创建的gradle/java项目,git init并且不会在包视图中显示分支.

此外,git存储库视图中没有显示任何内容.

如何让eclipse在包视图中显示分支?

java eclipse git github

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

如何为来自多个设备的输入配置apache链锯

我是新来的电锯和log4j的,这是一个后续到以前的帖子.我有一些设备使用套接字处理程序使用以下配置文件将记录发送到拼图:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration >
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="true">
<plugin name="XMLSocketReceiver" class="org.apache.log4j.net.XMLSocketReceiver">
      <param name="decoder" value="org.apache.log4j.xml.UtilLoggingXMLDecoder"/>
      <param name="Port" value="2222"/>
   </plugin>
<appender name="fileAppender" class="org.apache.log4j.RollingFileAppender">
      <param name="Threshold" value="INFO" />
      <param name="File" value="chainsawtablet.log"/>
      <layout class="org.apache.log4j.PatternLayout">
         <param name="ConversionPattern" value="%d %-5p  [%c{1}] %m %n" />
      </layout>
   </appender>
<root>
  <priority value="debug"/>
  <appender-ref ref="fileAppender" /> 
</root>
</log4j:configuration>
Run Code Online (Sandbox Code Playgroud)

接收器似乎工作,我看到电锯gui中的一个标签,带有一些日志记录.但它似乎永远不会写一个日志文件.也许它正在等待一天过去或其他什么.有没有办法让它更经常翻滚?

日志文件中没有记录.我需要一些xml来将接收器挂钩到一个appender还是自动的?

我希望日志文件由其源主机分隔.此外,如果重新启动连接,我希望日志文件翻转.

我还想保留一周的日志文件.

我希望看到所有的日志记录,所以应该:param name="Threshold" value="INFO"ALL不是INFO

怎么样:priority value="debug"

任何指针将不胜感激.

编辑:尝试a: datePattern value="yyyyMMdd-HHmm"据说每分钟滚动也不会生成任何日志文件.

编辑相关的问题帖子,也在 …

java log4j apache-chainsaw

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