zoukankan      html  css  js  c++  java
  • android中activity向service中传值

    和activity中互相传值类似

    在activity中

    Intent regIntent = new Intent(this, ChatService.class);
      regIntent.putExtra("student_id", student_id);
      startService(regIntent);

    然后再service中的onStart函数中获取该值

    student_id=intent.getStringExtra("student_id");
      System.out.println("sevice_student_id---------------"+student_id);

    当然写到这里还是不能传的,不然会报错!!!

    我们需要在Mainfeist文件中注册这个service

    销毁Service写在activity的onDestroy方法里:

     @Override
     protected void onDestroy() {
       ChatActivity.this.stopService(new
       Intent(ChatActivity.this,
       ChatService.class));
      super.onDestroy();
     }

    补充:

    也可以从public int onStartCommand(Intent intent, int flags, int startId)中取出从activity中传过来的值。intent.getExtra()获得bundle对象,可从中取值。
    也可以用bindService(intent, conn,BIND_AUTO_CREATE);传值,把要传的值绑定在intent里,在service的public IBinder onBind(Intent intent) 方法里取得intent。
    可以在service里面注册一个广播,在activity里sendbroadcast(intent)传值。

  • 相关阅读:
    css的选择器
    javaScript 的变量使用
    关于外键约束
    javaScript中运算符
    css介绍和三种引入方式
    关于盒子模型
    类和类的六种关系
    DQL和DML更多操作
    javaScript的特点
    关于 让页面中的按钮 响应回车
  • 原文地址:https://www.cnblogs.com/to-creat/p/5682338.html
Copyright © 2011-2022 走看看