小编Nat*_*ann的帖子

根据buildtype android gradle启用dexoptions

我想使用增量dex选项,但因为它仍然是实验性的我只想在进行调试构建时启用它.但是,我找不到在dex选项的上下文中引用当前buildType的方法.

这样的事情,有可能吗?

android {
    ....
    dexOptions{
      if(buildType.name == 'debug') incremental = true
    }
}
Run Code Online (Sandbox Code Playgroud)

android android-gradle-plugin

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

为什么我的 PipedOutputStream 会死锁?

我正在尝试使用 PipedInputStream 和 PipedOutputStream 实现一个线程循环缓冲区,但是每次当我到达可运行的解码器中的 mHead.write 时它都会锁定。我认为使用单独的线程时不会出现死锁。

    private class DecoderTask implements Runnable{

    @Override
    public void run() {
        while(!mStop){
            try {
                    Log.d(TAG,"trying to write");
        mHead.write(decode( 0, 1000));
            mHead.flush();
            Log.d(TAG,"Decoded");
            } catch (DecoderException e) {
                Log.e(TAG,e.toString());
            } catch (IOException e) {
                Log.e(TAG,e.toString());
            }
        }
    }

}
private class WriteTask implements Runnable{

    @Override
    public void run() {
        while(!mStop){
            try {
                                 Log.d(TAG,"trying to read");
                 int read = mTail.read(mByteSlave, 0, mByteSlave.length);
                 mAudioTrack.flush();
                                 mAudioTrack.write(mByteSlave,0,read);
                                 Log.d(TAG,"read");                 
            } catch (IOException e) {
                Log.e(TAG,e.toString());
            }
        }
    }

}


//in …
Run Code Online (Sandbox Code Playgroud)

java android inputstream outputstream blocked-threads

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

如何处理mailto:在android webview中

我试图在我的应用程序中拦截嵌入式webview中的mailto:链接.我所拥有的工作正常,除非用户按下链接时返回应用程序时模糊.这是我在WebViewClient中所做的事情

    @Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
    if(url.startsWith("mailto:")){
        url = url.replaceFirst("mailto:", "");
        url = url.trim();
        Intent i = new Intent(Intent.ACTION_SEND);
        i.setType("plain/text").putExtra(Intent.EXTRA_EMAIL, new String[]{url});
        context.startActivity(i);
        return true;
    }
    context.findViewById(R.id.loadingBar).setVisibility(View.VISIBLE);
    view.loadUrl(url);
    return true;
}
Run Code Online (Sandbox Code Playgroud)

如果我做一个view.reload()它确实解决了问题,但有没有更好的方法来修复它而不浪费带宽?我尝试了invalidate()但它没有用.

这是我正在谈论的一个例子 替代文字

android android-webview

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

什么是McNaughton-Yamada算法?

我需要使用McNaughton-Yamada算法为CS类构建DFA.问题是算法是补充材料,我不清楚它究竟是什么.这是一种在给定RegEx的情况下查找DFA还是找到DFA并将其最小化的方法?我似乎无法找到有关该主题的任何信息.

我很困惑,因为我们的教师在课堂上发现DFA后所显示的最小化程序似乎与我们书中描述的"标记"最小化没有任何不同.

感谢您的回复,

弥敦道

algorithm computer-science finite-automata dfa

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

RandomAccessFile是否写入异步?

看一下RandomAccessFile的构造函数,它的模式就是'rws'The file is opened for reading and writing. Every change of the file's content or metadata must be written synchronously to the target device.

这是否暗示模式'rw'是异步的?如果我需要知道文件写入何时完成,是否需要包含's'?

java file-io

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

帮助阅读Android中的ANR堆栈跟踪

我一直在与我的一项服务中发生的ANR作斗争一段时间了.它很难重现,并且UI似乎在它发生之前就具有完整的功能,100%的时间从来没有任何明显的滞后或冻结.我的服务有一个TimerTask和一些运行的AsyncTask,就是这样.

我在2.2中使用Android Market报告它时得到的堆栈跟踪很难阅读,似乎没有直接引用我的任何代码,只是来自SDK中的类.任何人都可以看看堆栈跟踪,看看你是否可以告诉发生了什么.

打印输出是如此之大,我选择将其发布到pastebin,我希望这不违反规则. http://pastebin.com/KHUD0UHW

这是Logcat日志以及 http://pastebin.com/V5xSey36

android stack-trace android-anr-dialog

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