Android开发教程:Android基础知识2

  • A+
所属分类:web前端开发
Android开发教程:Android基础知识2

Android开发

1.广播接收器

1)系统之间的传递,需要广播进行传播,即可以接受来自系统和应用的广播;

2)创建广播:新建一个广播接收器类,继承MyBroadcastReceive?extends?BroadcastReceiver,重写onReceive()方法,最后注册广播;

3)生命周期:执行完onReceive()就会结束,若是时间过长,就会出现错误;

4)分为静态注册和动态注册方法;

5)分为普通广播和有序广播两种类型,一种是所有人监听的人都能够接受,另外一种是按照接收者的优先级顺序进行接收,通过intent-filter中的prioity属性进行设置。

 

2.使用zxing进行条码识别

1)从网上下载文件,将源文件中的zxing文件夹下的文件拷贝到工程中;

2)代码示例:

[java]?view plain?copy

  1. IntentIntegrator?interIntegrator?=?new?IntentIntegrator(activity.this);
  2. IntentIntegrator.initiateScan();

3)重写onActivityResult方法接收结果,代码示例:

[java]?view plain?copy

  1. IntentResult?scanResult?=?IntentResult.parseActivityResult(requestCode,?resultCode,?data);
  2. if?(scanResult){
  3. ????textView.setText(scanResult.toString);
  4. }?else?{
  5. ????Toast.makeText(this,?“扫描没有成功”,?Toast.LENGTH_SHORT).show();
  6. }

 

3.创建线程的三种方式

1)创建子线程类,继承Thread;

2)创建线程,传入Runnable;

3)将类实现一个接口Runnable,在其中实现run方法。

 

4.Service介绍

1)Service是Android的四大组件之一,主要用于进行耗时的任务,或者执行某些需要长期执行的任务,另外还可以作为后台守护程序,在程序退出仍可运行;

2)服务种类:本地服务、远程服务,后台服务、前台服务,启动服务、绑定服务;

3)注意解绑服务的时候需要进行校验处理,否则会重复解绑,产生错误;

4)服务和线程没有任何的关系,服务是在主线程中。

5)Service中使用线程示例:

[java]?view plain?copy

  1. public?class?MyService?extends?Service{
  2. ????@Override<span?style="font-family:?Arial,?Helvetica,?sans-serif;">???</span>
  3. ????public?int?onStartCommand(Intent?intent,?int?flags,?int?startId){
  4. ????????new?Thread(new?Runnable(){
  5. ????????????@Override
  6. ????????????public?void?run(){
  7. ????????????????//执行耗时的后台操作
  8. ????????????}
  9. ????????});
  10. ????????return?supper.onStartCommand(intent,?flags,?startId);
  11. ????}
  12.  
  13. ????@Override
  14. ????public?IBinder?onBind(Intent?intent){
  15. ????????return?null;
  16. ????}
  17.  
  18. ????private?class?Bind?extents?Binder{
  19. ????????public?void?DownFile(){
  20. ????????????new?Thread(new?Runnable(){
  21. ????????????????@Override
  22. ????????????????public?void?run(){
  23. ????????????????????//耗时的操作
  24. ????????????????}
  25. ????????????});
  26. ????????}
  27. ????}
  28. }

6)利用NotificationManager来进行服务通知。

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: