OnReceive()怎么用,应写在那里?

OnReceive()怎么用,应写在那里?,第1张

首先Service、Broadcast Receiver、Content Provider都是运行在UI线程,或者说主线程中的,就是启动一个Activity时开始运行的那个进程。但是Broadcast Receiver不像Service,生命周期较短,耗时 *** 作你不能在onReceive中执行的,比如你试试在其中启动一个对话框看看,会报错的。可能是这个原因导致你加上延迟后没有更新文字。还有,要加上执行完调用timer.cancel()结束任务。如果简单的想五秒后执行,直接用Thread,在run方法中sleep(5000)就可以了。代码如下:

new Thread(){

@Override

public void run() {

super.run()

try {

sleep(5000)

} catch (InterruptedException e) {

e.printStackTrace()

}

String text=""

List<String>config = loadArray()

for(int i=0i<config.size()i++){

//am.killBackgroundProcesses(config.get(i))

text+=config.get(i)+"\n\r"

}

text+="off"

tv_show.setText(text)

}

}.start()

直接加到onReceive方法中就行了。

这个才看到过 先要继承Csock类啊,刚翻了下书。CClientSocket中写道public:

void sendmessage(CSock *psend,这里添加你需要的变量如char *p之类的);


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11280839.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-14
下一篇 2023-05-14

发表评论

登录后才能评论

评论列表(0条)

保存