为了账号安全,请及时绑定邮箱和手机立即绑定

Android攻城狮的第二门课(第3季)

难度初级
时长 6小时 0分
学习人数
综合评分9.57
162人评价 查看评价
9.9 内容实用
9.5 简洁易懂
9.3 逻辑清晰
  • @Bind启动——(下) public class MyBindService extends Service { @Override public void onCreate() { Log.i("TAG", "BindService_onCreate"); super.onCreate(); } @Override public void unbindService(ServiceConnection conn) { Log.i("TAG", "BindService_unbindService"); super.unbindService(conn); } public class MyBinder extends Binder{ public MyBindService getService(){ return MyBindService.this;//返回当前服务对象 } } @Override public IBinder onBind(Intent intent) { Log.i("TAG", "BindService_onBind"); return new MyBinder();//返回一个数据类 } @Override public void onDestroy() { Log.i("TAG", "BindService_onDestroy"); super.onDestroy(); } public void play(){ Log.i("TAG", "播放"); } //其他三个类似 } 【温馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等编程爱好者关注我,加我慕课好友,互相学习,共同进步!】
    查看全部
    0 采集 收起 来源:Bind启动

    2018-03-22

  • @Bind启动——(中) public class MainActivity extends Activity { Intent intent1; Intent intent2; MyBindService bindservice; ServiceConnection conn=new ServiceConnection() { @Override//当启动源跟Service的连接意外丢失的时候会调用这个方法,但是当Service取消绑定是不会调用这个方法的。如:当Service崩溃了或被强行杀死了。 public void onServiceDisconnected(ComponentName name) { } @Override//当启动源跟Service成功连接之后将会自动调用这个方法 public void onServiceConnected(ComponentName name, IBinder binder) { bindservice=((MyBinder)binder).getService(); } }; @Override protected void onCreate(...) { ... } @Override protected void onDestroy() {//如果结合使用startService(Intent intent),一定要调用这个重写这个方法。 super.onDestroy(); stopService(intent2); unbindService(conn); } 【温馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等编程爱好者关注我,加我慕课好友,互相学习,共同进步!】
    查看全部
    0 采集 收起 来源:Bind启动

    2016-08-26

  • @Bind启动——(上) public void doClick(View v){ switch (v.getId()) { case R.id.start: intent1=new Intent(MainActivity.this, MyStartService.class); startService(intent1); break; case R.id.stop: stopService(intent1); break; case R.id.bind: intent2=new Intent(MainActivity.this,MyBindService.class); startService(intent2);//有必要时推荐:结合使用 bindService(intent2, conn, BIND_AUTO_CREATE);//第三个参数:自动创建 break; case R.id.play: bindservice.play(); break; ...//其他三个类似 case R.id.unbind: unbindService(conn); break; } } Ps1:StartService开启后onCreate只会调用一次,再点击StartService不会再调用,直接调用onStartCommand;而BindService开启后onCreate和onBind都只调用一次,再点击也不会调用。 Ps2:StopService点击多次,只调用一次,但是不会报错;而UnBindService点击多次,虽只调用一次,但是会报错。 @启动源(个人理解:Activity): Start方式:可以不需要界面(UI),但是服务还存在,但是数据不能返回。 Bind方式:与界面共存亡。 -有必要推荐Start与Bind一起结合使用。 【温馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等编程爱好者关注我,加我慕课好友,互相学习,共同进步!】
    查看全部
    1 采集 收起 来源:Bind启动

    2016-08-26

  • @Service启动与停止 public void doClick(View v){ switch (v.getId()) { case R.id.start: intent1=new Intent(MainActivity.this, MyStartService.class); startService(intent1); break; case R.id.stop: stopService(intent1); break; } } //另类 public class MyStartService extends Service { @Override public void onCreate() { Log.i("TAG", "Service_onCreate"); super.onCreate(); } @Override public int onStartCommand(Intent intent, int flags, int startId) { Log.i("TAG", "Service_onStartCommand"); return super.onStartCommand(intent, flags, startId); } @Override public void onDestroy() { Log.i("TAG", "Service_onDestroy"); super.onDestroy(); } @Override public IBinder onBind(Intent intent) { return null; } } Ps:开启后onCreate只会调用一次,再点击StartService不会再调用,直接调用onStartCommand。 【温馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等编程爱好者关注我,加我慕课好友,互相学习,共同进步!】
    查看全部
    0 采集 收起 来源:Start启动

    2018-03-22

  • @Start方式、Bind方式特点 【温馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等编程爱好者关注我,加我慕课好友,互相学习,共同进步!】
    查看全部
    0 采集 收起 来源:Servie概述

    2016-08-26

  • @服务生命周期 【温馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等编程爱好者关注我,加我慕课好友,互相学习,共同进步!】
    查看全部
    0 采集 收起 来源:Servie概述

    2016-08-26

  • @服务类型 同一个Apk下面的Service和Activity没有特殊的情况下,一般是在同一个进程的同一个线程里面的。都在主UI线程,这就是为什么我们在Service的OnStart、OnBind中不能做延时较长的操作。而且Service里创建的线程是在Service自己运行环境中线程的外面,但又在同一个进程里。 【温馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等编程爱好者关注我,加我慕课好友,互相学习,共同进步!】
    查看全部
    0 采集 收起 来源:Servie概述

    2016-08-26

  • Ps:如果带Service的APP,APP销毁了但是Service可能还存在,而且Service很难销毁,即使销毁了也可能会自动启动,除非人为关闭。 【温馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等编程爱好者关注我,加我慕课好友,互相学习,共同进步!】
    查看全部
    0 采集 收起 来源:Servie概述

    2016-08-26

  • 如何实现ContentProvider
    查看全部
  • contentProvider的理解
    查看全部
  • openFileInput()方法只接收一个对象即文件名<br> openFileOutput()方法接收两个对象(“文件名”,MODE),当允许其他程序访问该文件时MODE可以为MODE_WORLD_READABLE+MODE_WORLD_WRITEABLE
    查看全部
    0 采集 收起 来源:文件操作案例

    2018-03-22

  • Broadcast
    查看全部
  • 普通广播与有序广播
    查看全部
  • Service生命周期图
    查看全部
    0 采集 收起 来源:Servie概述

    2016-03-03

  • 服务分两种:本地服务和远程服务。 本地服务是程序内的服务有两套启动机制(startService、stopService、stopSelf、stopSelfResult)和(bindService、unbindService) 远程服务是同一个Android系统中的应用程序间的服务。有IBinder接口
    查看全部
    0 采集 收起 来源:Servie概述

    2016-03-03

举报

0/150
提交
取消
课程须知
本课程是Android开发课程的中后期部分,学习之前要求对一些知识点有一定的了解: 1、已经掌握了Java基础 2、已经熟悉或者了解Android中的监听事件原理 3、已经熟悉或者了解一种以上的数据库,并掌握基本的SQL语句
老师告诉你能学到什么?
1、初步掌握Android手势识别的原理以及实际使用 2、初步掌握Android的数据存储方式 3、深度了解Android中的组件 4、熟悉了解Android常用的系统服务并对服务的使用有新的认识

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!