作者PenguinLee (企鹅)
看板AndroidDev
标题[问题] Setvice回传字串阵列
时间Tue May 14 12:36:36 2019
各位前辈大家好 想请问一下如果今天要用service做无限回圈的工作,并且在不定时回传一个字串阵列的话有办法吗 上网看了一下onstartcommand 前面回传值都是int,有爬了一下关键字 不过对回传字串阵列的资讯找不太到
想请问
1.service类别里面如果要传字串阵列的话有适合的吗
2.service在回传计算完的data是用什麽方法呢
有上网做功课 不过都没有比较适合初学者浅显易懂的QQ
再麻烦大家了
-----
Sent from JPTT on my iPhone
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 115.82.4.135
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/AndroidDev/M.1557808598.A.BF7.html
1F:→ PenguinLee: 因为要做无限回圈的工作,目前打算用startService 有 05/14 12:39
2F:→ PenguinLee: 看到有人说onstartcommand 里面回传可以用broadcast, 05/14 12:39
3F:→ PenguinLee: 只是看不太懂他的机制也不知道能不能回传字串阵列 手 05/14 12:39
4F:→ PenguinLee: 机排版有点乱请见谅 05/14 12:40
5F:→ kobe8112: 无穷回圈这种事还是背景执行绪做吧,无论是否用Service 05/14 13:31
6F:→ kobe8112: 我自己比较喜欢使用interface,由Activity提供callback 05/14 13:33
7F:→ kobe8112: 的实作,背景工作内呼叫,不一定最佳,仅供参考 05/14 13:34
8F:→ ssccg: onstartcommand回传值是给系统用的不是给你用的 05/14 13:53
9F:→ ssccg: 是你要在执行过程中自己传你要传的东西到你要收的地方 05/14 13:53
10F:推 zcbxvsdf: 用Broadcast把它想成广播,有广播就要有接收器Receiver 05/14 19:37
11F:→ erty0402: 听起来你的需求不需要service, 05/14 19:52
12F:→ erty0402: 一般的背景执行就可以了 05/14 19:52
13F:→ PenguinLee: 因为startService 刚好可以无限爬 只是问题在没办法把 05/14 21:52
14F:→ PenguinLee: 它运算的结果丢出来 只是想问要怎麽从service中取值 05/14 21:52
15F:→ kobe8112: startservice跟无限爬为什麽会有直接关系? 05/14 23:17
16F:→ kobe8112: 你应该是误会什麽了,你开个执行绪也可以无穷回圈啊 05/14 23:17
17F:→ PenguinLee: 目前看完service架构是想说用startService 塞一个thre 05/15 07:59
18F:→ PenguinLee: ad做无限回圈应该ok吧~ 是想问一下如果要把无限回圈 05/15 07:59
19F:→ PenguinLee: 的参数丢出来是用broadcast或是其他函数吗 05/15 07:59
20F:→ y3k: 看你的呼叫是要做单向还是双向 能不能从其他APP呼叫阿 05/15 08:15
21F:→ PenguinLee: 请问如果是爬虫爬到一半用broadcast自动传值到activit 05/15 08:30
22F:→ PenguinLee: y (然後爬虫继续执行)这样可行吗 05/15 08:30
23F:→ zcbxvsdf: 做法没有唯一,就看你想怎做 05/15 08:52
24F:→ PenguinLee: 是想请问我上面说的那个方法的可行性有办法吗 怕会因 05/15 10:53
25F:→ PenguinLee: 为broadcast导致程序跳出之类的 05/15 10:53
26F:→ kobe8112: 不懂你干嘛一直鬼打墙 05/15 11:29
27F:→ kobe8112: 你只是想要背景无穷回圈,不定时给前景资料,以这样来说 05/15 11:30
28F:→ kobe8112: Service并非必要,你说自己是初学者,却又硬要把机制 05/15 11:30
29F:→ kobe8112: 复杂化,所以你真正的目标到底是想完成这个功能,还是说 05/15 11:31
30F:→ kobe8112: 「不管难易度或适合自己与否,就是要用Service完成」? 05/15 11:32
31F:→ kobe8112: 如果是後者,我猜测你搜寻到的service都是最常见的范例 05/15 11:34
32F:→ kobe8112: ,他只是没有UI而已,还是跑在主执行绪,你要无穷回圈, 05/15 11:35
33F:→ kobe8112: 还是得要开一个执行绪,那不还是回到原点了... 05/15 11:35
34F:→ PenguinLee: 不好意思我一开始没说清楚 我要写的那个回圈在结果跑 05/15 12:09
35F:→ PenguinLee: 出来的时候因为传资料可能会传给好几个activity之前问 05/15 12:09
36F:→ PenguinLee: 朋友说建议用service 包thread写,不过现在主要问题是 05/15 12:09
37F:→ PenguinLee: : 05/15 12:09
38F:→ PenguinLee: 不管用哪个方法 在无限回圈内如果要用broadcast对外传 05/15 12:09
39F:→ PenguinLee: 参数,broadcast有办法在不影响回圈继续跑的情况下把 05/15 12:10
40F:→ PenguinLee: 值丢给activity 吗 因为不是很懂broadcast的运作细节 05/15 12:10
41F:→ PenguinLee: 想问一下 谢谢大家 05/15 12:10
42F:→ PenguinLee: 补充一下那个传的值是字串阵列 谢谢 05/15 12:40
43F:嘘 zcbxvsdf: Google很难吗?Android四大元件之一别跟我说没资料 05/15 14:20
44F:→ zcbxvsdf: 自己写一个就知道有没有影响了 05/15 14:21
45F:→ PenguinLee: 有啊 只是都是在讲他的写法 细节看到的很少 所以想问 05/15 16:04
46F:→ PenguinLee: 一下各位高手 05/15 16:04
47F:→ kobe8112: 就你的应用,执行广播花费的时间应该没差吧我觉得, 05/15 16:27
48F:推 t52101t: 我的理解是不影响 不过你直接写出来实验一下不就知道了 05/15 16:27
49F:→ kobe8112: 不然你也可以"广播"跟"回圈任务"用不同的执行绪啊 05/15 16:27
50F:→ erty0402: 初学者建议多写一点测试程式看看这些元件是不是如自己 05/16 23:50
51F:→ erty0402: 预期的运行。才能更了解 05/16 23:50
52F:→ PenguinLee: 感谢大家的建言 最後有用广播做出来了 因为要在程式休 05/24 10:09
53F:→ PenguinLee: 眠还能继续发送 目前打算用静态广播 不过顺带一提 8.0 05/24 10:09
54F:→ PenguinLee: 的静态广播要改写一下 不然用传统写法会出不来 05/24 10:09