小编mFe*_*ein的帖子

Android Studio - 推送失败:致命:无法从远程存储库读取

我在Android Studio上有一个git项目,在BitBucket上有一个遥控器,我将其更改为使用SSH而不是HTTPS.我可以使用Atlassian的SourceTree使一切工作,但是每次我尝试推动项目时,它都会在Android Studio中使用

推送失败:致命:无法从远程存储库读取.

有没有人知道可能发生的事情?

git bitbucket intellij-idea android-studio

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

找不到Gradle DSL方法:'apt()'

我正在尝试添加最新版本的butterknife,我从gradle中得到了这个错误:

错误:(31,0)未找到Gradle DSL方法:'apt()'可能的原因:

  • 项目"MyProject"可能正在使用不包含该方法的Gradle版本.Gradle设置
  • 构建文件可能缺少Gradle插件.应用Gradle插件
  • 我的gradle在哪里mobile build.gradle:

    plugins {
        id "net.ltgt.apt" version "0.6"
    }
    
    apply plugin: 'com.android.application'
    
    android {
        compileSdkVersion 23
        buildToolsVersion "23.0.2"
    
        defaultConfig {
            applicationId "com.mynamspace.myproject"
            minSdkVersion 19
            targetSdkVersion 23
            versionCode 1
            versionName "1.0"
        }
        buildTypes {
            release {
                minifyEnabled false
                proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            }
        }
    }
    
    dependencies {
        compile fileTree(dir: 'libs', include: ['*.jar'])
        wearApp project(':wear')
        testCompile 'junit:junit:4.12'
        compile 'com.jakewharton:butterknife:8.0.0'
        apt 'com.jakewharton:butterknife-compiler:8.0.0'
        compile 'com.android.support:appcompat-v7:23.3.0'
        compile 'com.google.android.gms:play-services:8.4.0'
        compile 'com.android.support:design:23.3.0'
        compile 'com.android.support:support-v4:23.3.0'
        compile 'com.android.support:recyclerview-v7:23.3.0'
    }
    
    Run Code Online (Sandbox Code Playgroud)

    gradle-apt-plugin有什么问题?

    android gradle butterknife

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

    如何将ZonedDateTime格式化为String?

    我想将a转换ZonedDateTime为a String格式("dd/MM/yyyy - hh:mm").我知道这在Joda-Time其他类型中是可能的,只是使用它们toString("dd/MM/yyyy - hh:mm")....但这不起作用ZonedDateTime.toString().

    如何格式化ZonedDateTimeString


    编辑:

    我试图在另一个时区打印时间,结果似乎总是一样:

    ZonedDateTime date = ZonedDateTime.now();
    ZoneId la = ZoneId.of("America/Los_Angeles");
    ZonedDateTime date2 = date.of(date.toLocalDateTime(), la);
    
    // 24/02/2017 - 04:53
    System.out.println(DateTimeFormatter.ofPattern("dd/MM/yyyy - hh:mm").format(date));
    // same result as the previous one
    // 24/02/2017 - 04:53
    System.out.println(DateTimeFormatter.ofPattern("dd/MM/yyyy - hh:mm").format(date2));
    
    Run Code Online (Sandbox Code Playgroud)

    而且我和洛杉矶不在同一时区.


    编辑2:

    找到了如何更改时区:

    // Change this:
    ZonedDateTime date2 = date.of(date.toLocalDateTime(), la); // incorrect!
    // To this:
    ZonedDateTime date2 = date.withZoneSameInstant(la);
    
    Run Code Online (Sandbox Code Playgroud)

    java string java-time zoneddatetime

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

    提供者与 Get_it

    在搜索 Flutter 的依赖注入解决方案时,我发现了两个很棒的库:providerget_it.

    据我所知provider,它有更多的样板文件,但它非常适合 Flutter ,一旦注入的值发生变化,就Consumer可以重建Widget树的一部分。

    get_it 另一方面更直接,更容易使用,并且不依赖于 Flutter,因此可以与任何 Dart 代码一起使用。

    它们之间还有什么区别和限制吗?我知道这有点自以为是,但 Flutter 太新了,所以最好公开注册好处、副作用和陷阱。

    dependency-injection service-locator flutter flutter-provider

    31
    推荐指数
    2
    解决办法
    9823
    查看次数

    如何在 Room @Query 中使用参数字段?

    我有一个User带有字段的类id,所以我想用 Room 运行以下查询:

    @Query("SELECT * FROM ticket where user_id = :user.id")
    LiveData<Ticket> loadFromUser(User user);
    
    Run Code Online (Sandbox Code Playgroud)

    但是我在 Android Studio on 上收到错误标记,user.id并且我在网上找到的所有示例仅使用该@Query方法的直接参数,通常是 aString或 an int

    是否可以在 Room 中使用对象的字段@Query?如果是肯定的,那么引用它的正确方法是什么。

    android android-room

    27
    推荐指数
    3
    解决办法
    5913
    查看次数

    如何在Qt中使用排队连接时压缩插槽调用?

    读了一些文章后,像这样关于Qt信号插槽通信还是有关于排队的连接问题.

    如果我有一些线程一直向对方发送信号,并且假设一个thread_slow在它的事件循环中运行一个慢速方法而另一个thread_fast运行一个快速的方法发送多个信号,而另一个线程仍在运行它的慢速方法...... ..当thread_slow返回到事件循环的慢速方法时,它会处理之前发送的所有信号thread_fast还是最后一个发送的所有信号(所有信号都是相同的类型)?

    如果它将处理所有信号,是否有办法使thread_slow 唯一的过程成为最后一个?(考虑到多线程应用程序中的"最后一个"可能是模糊的,让我们考虑线程要求最后一个信号之前的最后一个信号,为了简单起见,所以在线程查找最后一个时发送的新信号可能会丢失).

    (我问这个是因为我有多个线程从多个线程接收数据,我不希望它们处理旧数据,只是最后一个发送的数据)

    我已经进行了一些测试,看来Qt将处理所有信号.我做了一个线程:

    while(true)
    {
        QThread::msleep(500);
        emit testQueue(test);
        test++;
    }
    
    Run Code Online (Sandbox Code Playgroud)

    另一个插槽将执行:

    void test::testQueue(int test)
    {
        test.store(private_test.load() + test);
        emit testText(QString("Test Queue: ") + QString::number(private_test.load()));
    }
    
    Run Code Online (Sandbox Code Playgroud)

    并且线程将运行:

    while(true)
    {
        QThread::msleep(3000);
        QCoreApplication::processEvents();
        private_test.store(private_test.load() + 1000);
    }
    
    Run Code Online (Sandbox Code Playgroud)

    我每隔500毫秒从一个线程向另一个线程发送一个信号,另一个线程休眠3000毫秒(3秒)然后唤醒并将内部变量递增100.每次执行一个插槽时它会发出一个文本收到的值+内部变量.我得到的结果是,每次 QCoreApplication::processEvents();调用,所有信号都被执行....(我编辑了这部分是因为我在之前的代码中发现了一个错误)

    c++ qt qthread qt-signals qtcore

    22
    推荐指数
    2
    解决办法
    7450
    查看次数

    Android - 图像按钮比例

    我试图将图像放入一个ImageButton用于测试的内容,但ImageButton行为的方式并不像预期的那样.

    最初,我制作了一个988x89像素的PNG图像并将其放置ImageButton在一个7英寸1024x600像素模拟屏幕内.这ImageButton988dp x 89dp,我知道dp和像素不一样,但是对于这个分辨率我预计图像会合理地缩放以占据大部分像素ImageButton.此外,我改为px而不是dp进行测试,它没有任何区别.

    但相反,ImageButton使其内部的图像非常小(蓝线是ImageButton边界,绿线是中心对齐指示).

    测试图1

    所以问题#1:为什么这样的ImageButton图像如此小,当它可以填满大部分屏幕时,即使ImageButton尺寸非常宽?

    所以为了克服这个问题,我选择adjustViewBounds哪个没有任何区别,这带来了问题#2:为什么?调整视图边界是不是应该调整视图边界?

    到目前为止的代码是:

    <ImageButton
            android:layout_width="988dp"
            android:layout_height="89dp"
            android:id="@+id/ibTest"
            android:src="@drawable/image_top_test"
            android:layout_centerHorizontal="true"
            android:adjustViewBounds="true"
            android:cropToPadding="false"
            android:layout_below="@+id/hlTopBar"
            android:background="#00000000" />
    
    Run Code Online (Sandbox Code Playgroud)

    所以后来我改为scaleType,fitCenter图像变成了:

    测试图像2

    这对我来说也很奇怪,因为它ImageButton具有与图像相同的纵横比,所以我希望它适合100%,但它不合适(图像两侧的宽度存在间隙).

    所以后来我换scaleTypefitXY,得到了我的最终结果:

    在此输入图像描述

    毕竟这似乎是预期的图像(将fitXY图像与fitCenterPhotoshop中的fitCenter图像进行比较显示图像略呈椭圆形,但此处无法显示,这是预期的,因为宽度与图像不匹配高度确实).

    所以我的一般问题是(#3):什么是在Android中拟合图像的正确方法,并期望它在屏幕上具有常规大小,为什么缩放如此混乱,我做错了吗?

    我知道有屏幕尺寸问题和dp等,但缩放不是以受控方式运行,fitCenter使图像椭圆形,并且fitXY太依赖于我在XY上设置正确的图像比率,所以我想知道我是不是做错了什么以及它应该是正确的方式.

    最终的XML代码:

    <ImageButton
            android:layout_width="988dp"
            android:layout_height="89dp"
            android:id="@+id/ibTest" …
    Run Code Online (Sandbox Code Playgroud)

    user-interface android image

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

    如何在C#中正确处理密码

    众所周知,C#string非常不安全,它没有固定在RAM中,垃圾收集器可以移动它,复制它,在RAM中留下多个痕迹,RAM可以交换并作为要读取的文件提供,没有提到其他几个已知的事实.

    为了缓解这一点,微软想出了这个SecureString.问题是:使用它的正确方法是什么?

    我问这个,因为迟早你将不得不提取内部字符串.是的,SecureString确实允许我们char一次写一个并给我们一些其他的小用法,同时隐藏它的秘密,但有时我们需要整个字符串或类似的东西.到目前为止,我看到的所有实现string最终都使用常规,使用SecureString我认为(或希望)的提取和解密内容在某些情况下可以避免,即使它可能涉及一些复杂的代码来绕过.NET string.

    在我的例子中,我使用一个名为BCrypt的密码哈希库.它使用常规string来计算哈希值,我认为这远非理想.我没有找到任何可以SecureString直接接受的库,所以我没有太多的选择但是使用它.

    目前我运行的代码如下:

    SecureString password; // This usually comes from a PasswordBox Property
    IntPtr passwordBSTR = Marshal.SecureStringToBSTR(password);
    
    string insecurePassword = Marshal.PtrToStringBSTR(passwordBSTR);
    Marshal.ZeroFreeBSTR(passwordBSTR);
    passwordBSTR = default(IntPtr);
    password.Clear();
    
    // Use the insecurePassword....usually as:
    bool result = BCrypt.Net.BCrypt.Verify(insecurePassword, user.Password); // This hashes the provided password and compares it with another BCrypt hash.
    
    insecureString = string.Empty; // hoping for the GC …
    Run Code Online (Sandbox Code Playgroud)

    c# c++ memory security string

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

    何时在 Dart 中使用 num

    我是 Dart 的新手,我可以看到 Dart 有num哪个是intand的超类double(并且只有这两个,因为子类化num到其他任何东西都是编译时错误)。

    到目前为止,我看不到使用num代替intor 的任何好处double,是否有num更好甚至推荐的情况?还是只是为了避免考虑数字的类型,以便编译器为我们决定数字是 anint还是 a double

    dart

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

    了解 Flutter didChangeDependencies 机制

    阅读文档后在这里State生命周期在这里,我仍然不知道如何didChangeDependencies工作。

    据我所知,它将initState在 a 的任何更改之后和之后触发InheritedWidget,但是这些更改是什么?我认为了解触发什么变化很重要didChangeDependencies,这样我们才能了解何时以及如何正确使用它。

    flutter

    13
    推荐指数
    3
    解决办法
    3467
    查看次数