我有类SpeexRunner如下,构造函数接受两个参数一个布尔变量和一个LinkedList<short[]>.如下 :-
public class SpeexRunner implements Runnable {
public boolean stopThread;
LinkedList<short[]> dataList;
public SpeexRunner(boolean val_stopThread, LinkedList<short[]> dataRef){
this.stopThread = val_stopThread;
dataList = dataRef;
}
@Override
public void run() {
//add objects in dataList;
// change / remove dataList Objects
}
}
Run Code Online (Sandbox Code Playgroud)
我的问题是: - 如果我在run()中更改dataList,更改是否会反映到原来的列表中,而这个列表是在其他地方声明的?
我在我的应用程序中使用了ActionBarSherlock来为蜂窝设备提供ActionBars.我想在Light.DarkActionBar主题中使用,如何为ActionBar的各个部分自定义以下内容(见图)

我尝试使用以下设置,虽然我取得了一些成功,但结果却看起来并不像预期的那样,
<item name="android:background">@drawable/bg_title_bar</item>
<item name="background">@drawable/bg_title_bar</item>
<item name="actionModeSplitBackground">@drawable/bg_tab_bar</item>
<item name="android:actionModeSplitBackground">@drawable/bg_tab_bar</item>
Run Code Online (Sandbox Code Playgroud)
我应该使用哪些其他设置?谢谢!!
我想从当前点找到距离A一点X kms的点,

如果我知道中心点的纬度和经度我怎样才能获得周长四点的纬度和经度....我正在寻找很长时间但却无法在JavaScript或Java中获得解决方案...距离在我的情况下将在几公里,所以不能认为地球是平坦的表面,所以PLZ不建议这样的解决方案......
谢谢
我用html创建了一个文档.我想从根节点检索子节点,因为我正在使用以下代码...
那就是HTML.
<a id="Main1" onclick="RetrieveElement(this);">Test1
<div name="Top1">
</div>
<div name="Middle1">
I'm Middle.
</div>
<div name="Bottom1">
</div>
</a>
<a id="Main2" onclick="RetrieveElement(this);">Test2
<div name="Top1">
</div>
<div name="Middle1">
I'm Middle.
</div>
<div name="Bottom1">
</div>
</a>
Run Code Online (Sandbox Code Playgroud)
JavaScript的.
function RetrieveElement(element){
alert(this.getElementByName("Middle1").innerHTML);
}
Run Code Online (Sandbox Code Playgroud)
但是,这不起作用.我试过找到问题但是无法解决它......有什么帮助吗?
我是Flex开发的新手,在创建一个新的Mobile项目时,它询问我是否要将它连接到某些服务器并给我四个选项`ColdFusion,PHP,Java和blazeDS).
我一直在java工作,而不是一个PHP家伙,我会简单地选择Java并忽略所有其他.但由于效率是我目前项目中的一个重要问题,我不想冒险.
根据你的哪一个是最好的选择,即ColdFusion,BlazeDS或Java,考虑到大多数时候我将在数据库中存储大量二进制数据即音频/视频文件等这一事实?
我正在开发一个类似于Skype的应用程序,具有更多功能.我对Skype对各种移动平台的反应感到好笑和惊讶,如iPhone,Android,黑莓,Symbian,Bada OS等.
我想知道Skype如何能够如此快速地发布适用于iPhone,Android和Blackberry的版本?
他们是否单独编写针对每个平台的代码,还是只编写一次代码然后使用某些实用程序使其在所有平台上都可用?
作为一名开发人员,我很想知道真正的技术,这可能是幕后魔术背后的原因.有线索吗?
有效的来源和参考的答案更受赞赏.
我正在开发一个需要音频/视频聊天的应用...我的问题是当我开始捕捉视频时音频播放完全停止.
技术说明 我使用AudioTrack Class和AudioTrack.OnPlaybackPositionUpdateListener进行音频播放.我使用Camera和Camera.PreviewCallBack进行视频录制.
现在,一旦摄像头启动,AudioTrack类的回叫就会停止工作.我该怎么做才能解决这个问题?我有HTC的设备,它有Android2.2.
编辑 因为我不能在这里发布完整的代码...(我无法访问视频模块的代码),我在这里列出了这个场景: -
public void start(){
bufferSize = AudioTrack.getMinBufferSize(sampleRateInHz, AudioFormat.CHANNEL_OUT_MONO, AudioFormat.ENCODING_PCM_16BIT);
if (bufferSize != AudioTrack.ERROR_BAD_VALUE && bufferSize != AudioTrack.ERROR) {
audioTrack = new AudioTrack(AudioManager.STREAM_MUSIC, this.sampleRateInHz, AudioFormat.CHANNEL_OUT_MONO, AudioFormat.ENCODING_PCM_16BIT,
this.bufferSize, AudioTrack.MODE_STREAM);
if (audioTrack != null && audioTrack.getState() == AudioTrack.STATE_INITIALIZED) {
Log.i(LOG_TAG, "Audio Track instance created buffer Size : " + this.bufferSize);
audioTrack.setPositionNotificationPeriod(320);
audioTrack.setPlaybackPositionUpdateListener(this);
// init All the jitter variables
initVariables();
// short[] tempBuf = shortBuffer;//new short[bufferSize / 2];
audioTrack.write(shortBuffer, 0, shortBuffer.length);
audioTrack.write(shortBuffer, 0, shortBuffer.length);
audioTrack.write(shortBuffer, 0, …Run Code Online (Sandbox Code Playgroud) 我有以下函数,它是从连续运行的Thread的run()连续调用的.
private LinkedList<short[]> playerData = new LinkedList<short[]>();
public synchronized void setPlayerData(short[] buffer) {
// Log.i(LOG_TAG, "Inside setData..");
playerData.addLast(buffer);
if (playerData.size() > 10) {
// Log.i(LOG_TAG, "playerData not empty");
playerData.removeFirst();
}
}
Run Code Online (Sandbox Code Playgroud)
现在DDMS的分配跟踪器说在addLast()中创建了很多对象(实际上在addLastImpl()内部),所以我想明确地删除这些数组,以便它们在Heap中总是足够的内存.现在,
有关LogCat的信息,请参阅链接,这是我解决整个synarion的另一个问题.在这个主题中,我只是试图通过将它分成一小部分问题来解决这个更大的问题.
可能的解决方案可能的解决方案是通过删除不需要的数组来释放内存空间.但是在Java中我们如何释放new运算符创建的数组呢?即
short[] buffer = new short[320];
// do some operation on buffer
/// now how can I explicitly free memory by deleting the buffer, when its job is over..
Run Code Online (Sandbox Code Playgroud)
我知道有垃圾收集来处理所有这些事情.但是在我的应用程序中,GC_CONCURRENT一直在吃掉.由于这个原因,其他过程也很匮乏.如果我能够显式释放内存,即在C++中删除,那将是很棒的.您可以在此处查看LogCat信息... 有关我的问题的详细问题
编辑2 3.将数组指定为null
这有什么用呢?null数组将被安排到垃圾收集,我想避免,因为从一个线程连续调用该方法(每20毫秒).如果我将数组赋值为null,GC_FOR_MALLOC消息将填充LogCat ...
android ×4
java ×4
javascript ×2
android-ndk ×1
android-ui ×1
apache-flex ×1
audio ×1
blackberry ×1
blazeds ×1
coldfusion ×1
collections ×1
flash ×1
html ×1
iphone ×1
java-ee ×1
memory-leaks ×1
mobile ×1
skype ×1