黑马程序员技术交流社区

标题: 泄密:黑马Android内部压轴技术面连载现世(三) [打印本页]

作者: Android_Robot    时间: 2016-6-16 14:58
标题: 泄密:黑马Android内部压轴技术面连载现世(三)
泄密:黑马Android内部压轴技术面连载现世(三)

涨薪机密——潮流新技术、新框架资源以后不定期更新,
   


11. 同一个程序,但不同的Activity是否可以放在不同的Task任务栈中?
          Singleinstance 运行在另外的单独的任务栈里面
          比方说在激活一个新的activity时候, 给intent设置flag
          Intent的flag添加FLAG_ACTIVITY_NEW_TASK
          这个被激活的activity就会在新的task栈里面。
          Intentintent = new Intent(A.this,B.class);
          intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
          startActivity(intent);
12. 怎么在activity中启动自己对应的service?Activity怎么和service绑定?
          startService() 一旦被创建,与调用者无关,没法使用service里面的方法
          bindService () 把service 与调用者绑定 ,如果调用者被销毁, service会销毁。
          bindService().  让activity能够访问到 service里面的方法。
          //构建一个intent对象,
          Intentservice = new Intent(this,MyService.class);
         // 通过bindService的方法去启动一个服务,
            bindService(intent,new MyConn(), BIND_AUTO_CREATE);
            ServiceConnection对象(重写onServiceConnected和OnServiceDisconnected方法) 和BIND_AUTO_CREATE.
            privateclass myconn implements ServiceConnection {
                   publicvoid onServiceConnected(ComponentName name, IBinder service) {
                   //TODO Auto-generated method stub
                   //可以通过IBinder的对象 去使用service里面的方法
                    }
                    publicvoid onServiceDisconnected(ComponentName name) {
                    //TODO Auto-generated method stub
                    }
          }
13. 什么是Service以及描述下它的生命周期。Service有哪些启动方法,有什么区别,怎样停用Service?

          在Service的生命周期中,被回调的方法比Activity少一些,只有onCreate, onStart, onDestroy,onBindonUnbind
          通常有两种方式启动一个Service,他们对Service生命周期的影响是不一样的。

       1.通过startService
               Service会经历 onCreate 到onStart,然后处于运行状态,stopService的时候调用onDestroy方法。
               如果是调用者自己直接退出而没有调用stopService的话,Service会一直在后台运行。
      2 通过bindService   
            Service会运行onCreate,然后是调用onBind, 这个时候调用者和Service绑定在一起。调用者退出了,Srevice就会调用onUnbind- >onDestroyed方法。
          所谓绑定在一起就共存亡了。调用者也可以通过调用unbindService方法来停止服务,这时候Srevice就会调用onUnbind-   >onDestroyed方法。

          需要注意的是如果这几个方法交织在一起的话,会出现什么情况呢?
          一个原则是Service的onCreate的方法只会被调用一次,就是你无论多少次的startService又bindService,Service只被创建一次。
         
         如果先是bind了,那么start的时候就直接运行Service的onStart方法,如果先是start,那么bind的时候就直接运行onBind方法。
         
         如果service运行期间调用了bindService,这时候再调用stopService的话,service是不会调用onDestroy方法的,service就stop不掉了,只能调用UnbindService, service就会被销毁。
        
         如果一个service通过startService 被start之后,多次调用startService 的话,service会多次调用onStart方法。多次调用stopService的话,service只会调用一次onDestroyed方法。
         
         如果一个service通过bindService被start之后,多次调用bindService的话,service只会调用一次onBind方法。
         多次调用unbindService的话会抛出异常。

14. 不用service,B页面为音乐播放,从A跳转到B,再返回,如何使音乐继续播放?
        这个问题问的很山寨,默认不做任何处理,B里面的音乐都能播放。
       遇到问题, 可以随机应变,灵活发挥,多考虑些细节,比如说这个题就可以这样说,说说你对startActivityForResult的理解()。
       A开启B的时候,用startActivityForResult()方法, B返回的时候把播放的状态信息返回给A ,A继续播放音乐

15. 什么是IntentService?有何优点?
       普通的service ,默认运行在ui main 主线程。
       Sdk给我们提供的方便的,带有异步处理的service类,
       OnHandleIntent()处理耗时的操作。

其他精华资源推荐:
【强荐!】2016年最新Android学习路线图——按此路线图学习月薪过万{ 火速收入}

部落与荣耀:拥有一个足以让你自豪的薪资——Android76—83期连续霸(8)气(期)平均薪资超11K!
泄密:黑马Android内部压轴技术面连载现世(一)
泄密:黑马Android内部压轴技术面连载现世(二)



作者: shengdong521    时间: 2016-6-16 16:20
加油 ,一定要过去
作者: hubei3805979    时间: 2016-6-17 23:31
大神发点实用的
作者: lionc123    时间: 2016-6-18 00:57
好东西,谢谢
作者: zhaohua733    时间: 2016-6-18 20:15
有用,很有用.
作者: lsp0523    时间: 2016-6-19 00:11
大神们总是会分享这些营养大餐,感谢一路有你
作者: happyburglar    时间: 2016-6-20 09:38
这么神奇?
作者: keting555    时间: 2016-6-21 00:13
加油吧~~~~~~~~~~~~~~~~~~~~
作者: James_01    时间: 2016-6-21 07:32
多专研是成为大牛的途径
作者: 597652639    时间: 2016-6-22 00:04
谢谢分享!
作者: 杨培龙    时间: 2016-6-22 00:51
有些内容正是我在找的,非常感谢分享
作者: w1599928008    时间: 2016-6-22 23:51
谢谢楼主分享
作者: TommingYu    时间: 2016-6-22 23:52
好东西  收藏了先  用得着
作者: S..    时间: 2016-6-23 08:45
好,好,面试无忧
作者: jiazhuoxiao    时间: 2016-6-23 20:02
好东西 收藏了
作者: mqz89757    时间: 2016-6-24 23:59
秘籍 一波接一波  nice
作者: 麦子守望星空    时间: 2016-6-25 08:04
好好学习,加油。
作者: guyue    时间: 2016-6-26 11:41
有用,谢谢分享
作者: yuanzhils    时间: 2016-6-26 16:25
好深奥,服
作者: wanglun    时间: 2016-6-26 20:18
确实是精华
作者: wanglun    时间: 2016-6-26 20:24
很有参考价值
作者: flyming    时间: 2016-6-26 20:43
赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞赞
作者: 柴磊磊    时间: 2016-6-29 00:00
有那么一点用处
作者: YC1992    时间: 2016-6-29 00:52
startService() 一旦被创建,与调用者无关,没法使用service里面的方法
作者: ylca    时间: 2016-7-2 03:04
shengdong521 发表于 2016-6-16 16:20
加油 ,一定要过去

你考试过了么
作者: 梦想天空分外蓝    时间: 2016-7-3 00:14
精华中的精华{:2_32:}
作者: 张作辉    时间: 2016-7-4 00:55
很厉害的解释
作者: 15242694137    时间: 2016-7-4 11:24
。。。。。。。。。。。。。。。。。
作者: Ly丶Roman    时间: 2016-7-4 21:49
加油 可以的
作者: cjj363700424    时间: 2016-7-4 22:55
蓝翔学员到此一游
作者: yuanzhils    时间: 2016-7-5 12:34
huichangganxie,shifenchongbia
作者: scz63    时间: 2016-7-5 22:34
刚开始学,还看不太懂...
作者: 彭若飞    时间: 2016-7-5 22:55
666666真的赞一个!!!
作者: 657324    时间: 2016-7-5 23:49
Android_Robot 发表于 2016-6-16 14:58
泄密:黑马Android内部压轴技术面连载现世(三)

11. 同一个程序,但不同的Activity是否可以放在不同的Tas ...

小虾  悄悄路过   没敢多余说话
作者: 657324    时间: 2016-7-5 23:50
Android_Robot 发表于 2016-6-16 14:58
泄密:黑马Android内部压轴技术面连载现世(三)

11. 同一个程序,但不同的Activity是否可以放在不同的Tas ...

小虾  悄悄路过   没敢多余说话
作者: 往死里敲代码    时间: 2016-7-6 10:44
大神们总是会分享这些营养大餐,感谢一路有你
作者: 云袭    时间: 2016-7-7 09:45
呵呵哒~
作者: coco2016    时间: 2016-7-7 15:09
还不懂,学习中.....
作者: 陈君君    时间: 2016-7-7 20:39
顶一个顶一个
作者: 爷^周晨    时间: 2016-7-8 18:45

好东西,谢谢
作者: wx_GhSVW08z    时间: 2016-7-8 20:35
厉害  啊
作者: scz63    时间: 2016-7-8 21:11
完全看不懂啊...
作者: aa3233275    时间: 2016-7-8 22:45
干货啊~这个很黑马~
作者: anyeyyc    时间: 2016-7-8 23:04
好东西  Mark
作者: 紫电_恶魔    时间: 2016-7-8 23:09
看不懂,好好好
作者: 墨尔    时间: 2016-7-8 23:57
赞赞赞赞赞赞赞赞赞赞赞赞赞
作者: Leslie_YgOXQ    时间: 2016-7-9 23:54
好贴收了,读就业班用。嘎嘎。
作者: Ly丶Roman    时间: 2016-7-10 00:38
不明觉厉呀 大神
作者: zhanghaojun23    时间: 2016-7-10 10:23
现在还看不懂,mark
作者: luojiawen    时间: 2016-7-10 11:33
这里有秘籍,大家快来
作者: DDV    时间: 2016-7-10 23:13
好屌 啊 学习 了  膜拜下大神
作者: 回根的落叶    时间: 2016-7-10 23:48
好东西。先收藏。。哈哈
作者: wstm198907    时间: 2016-7-11 07:37
赞一个!!!
作者: 申落土    时间: 2016-7-11 07:40
加油。。。。。。。
作者: 弄啥呢    时间: 2016-7-11 21:59
值得学习
作者: 13182002757    时间: 2016-7-12 17:18
谢谢分享,学习一下
作者: object_dk    时间: 2016-7-12 22:19
基础班的我并不能看懂,不过还是感觉好叼
作者: 896575538    时间: 2016-7-12 22:37
好像是好东西
作者: a572880418    时间: 2016-7-13 18:07
火钳刘明,已收藏,敲敲敲
作者: 往死里敲代码    时间: 2016-7-13 23:15
什么时候才能收拾好自己这颗放纵的心
作者: Ly丶Roman    时间: 2016-7-14 22:24
黑马神典,你值得拥有!
作者: miniccc    时间: 2016-7-14 23:54
mark一下,有空来看看
作者: 13182002757    时间: 2016-7-15 11:18
感谢分享
作者: leoleeiot    时间: 2016-7-15 15:09
shengdong521 发表于 2016-6-16 16:20
加油 ,一定要过去

我也是啊!!!!!!!!!!!!
作者: leoleeiot    时间: 2016-7-15 15:12
hubei3805979 发表于 2016-6-17 23:31
大神发点实用的

可以看看的
作者: leoleeiot    时间: 2016-7-15 15:21
lsp0523 发表于 2016-6-19 00:11
大神们总是会分享这些营养大餐,感谢一路有你

对呀!!!!!!!!!!!!!!!
作者: Leslie_YgOXQ    时间: 2016-7-17 00:22
留着以后有用!
作者: 896575538    时间: 2016-7-17 22:42
坚持就是胜利,加油,总有出头的一天
作者: 赵晗    时间: 2016-7-18 16:15
好东西,谢谢
作者: 一叶知秋来    时间: 2016-7-18 21:53
好东西!!谢谢分享!!
作者: hcy8888    时间: 2016-7-19 09:53
andiod怎么这么多帖子
作者: jjw642961416    时间: 2016-7-20 23:23
键盘敲烂,月薪过万!
作者: sanmaovszhe    时间: 2016-7-21 00:57
努力,努力,再努力!!
作者: sanmaovszhe    时间: 2016-7-21 00:59
努力,努力,再努力!!
作者: 夜叶lx    时间: 2016-7-21 20:55
天天过的很充实,这样的生活我很满意!!!!欧耶
作者: 回根的落叶    时间: 2016-7-21 22:45
谢谢分享!
作者: 胡哓甫    时间: 2016-7-23 20:47
大神们总是会分享这些营养大餐,感谢一路有你
作者: Frank_Ms1ZR    时间: 2016-7-24 00:08
谢谢分享
作者: 樱释空    时间: 2016-7-24 21:37
6666神典啊/
作者: jjw642961416    时间: 2016-7-24 21:58
键盘敲烂,月薪过万
作者: yl2016    时间: 2016-7-25 23:34
大家好好加油,努力挺过去,明天更好!!!
作者: 敲代码小蚂蚁    时间: 2016-7-26 09:58
赞赞赞赞赞赞赞赞赞赞
作者: miqideliwu    时间: 2016-7-26 23:59
感谢楼主分享,学习。。。,一起加油
作者: houzhiming    时间: 2016-7-28 18:01
谢谢分享,楼楼辛苦啦
作者: 18072727834    时间: 2016-7-28 21:01
谢楼主分享
作者: 646721826    时间: 2016-7-29 17:17
不管咋样感谢
作者: 暗夜之鸦    时间: 2016-7-30 22:27
啦啦啦啦啦啦啦阿拉啦啦啦啦
作者: fzc123    时间: 2016-7-31 22:44
信。。。得永生啊啊啊啊啊啊啊啊啊
作者: 修身丶丶丶    时间: 2016-8-1 12:07
每天保持好心情
作者: 发现一只程序猿    时间: 2016-8-4 22:24
加油!未来在自己手里
作者: 橘子哥    时间: 2016-8-19 11:32
顶起来!
作者: wxm278187618    时间: 2016-11-12 01:29
感谢楼主分享
作者: 飞天神猫    时间: 2016-11-14 22:31
感谢感谢的6




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2