在android中,一个Activity绑定一个Service组件我们一般用Context().bindService方法就可以,但是如果这个Activity属于一个Tabhost的话就不行了,在网上查了一下,发现在Google Android Issue中有这个缺陷,缺陷详细信息在这里(Google Android Issue 2483),三楼的oliver给出了正解
Using getApplicationContext().bindService instead of just bindService on your
activity solves the problem as it is using the higher level application context.
也就是在 onCreate()方法中使用this.getApplicationContext().bindService([args…])就可以了,否则 bindService将永远失败返回false。
分享到:
相关推荐
在Android开发中,TabHost是一个非常重要的组件,它允许开发者创建具有多个标签(tabs)的界面,每个标签对应一个不同的活动(Activity)。这个"封装的一个tabhost框架.zip"压缩包很可能是提供了一个预封装好的...
2. **AndroidManifest.xml**:定义应用的元数据,包括声明Activity、Service、BroadcastReceiver等组件。 3. **布局设计**:如LinearLayout、RelativeLayout、ConstraintLayout等,用于构建用户界面。 4. **XML资源*...
在显式Intent中,我们明确指定要启动的组件(如Activity或Service);而在隐式Intent中,我们只指定操作和数据类型,让系统找到能处理这些请求的合适组件。 Intent的主要功能包括: 1. **启动Activity**:通过...
- 在TabHost的每个Tab中,Intent可以用来启动一个新的Activity,这样点击Tab时,就会跳转到对应的Activity,展示不同的内容。 - 这个源码示例可能会展示如何动态地根据Intent传递的数据来更新TabHost中的内容,...
- **2.3.2 如何使用Service**:指导开发者如何创建和使用Service,包括绑定Service和启动Service的方法。 - **2.3.3 Service的生命周期**:详细说明了Service从创建到销毁的各个阶段,以及如何正确地管理其生命...
使用TabHost,开发者可以创建一个包含多个Tab的布局,每个Tab下面可以绑定一个不同的View或者Activity,用户可以通过点击Tab在不同的功能之间切换。 在实现TabHost时,首先需要在XML布局文件中定义一个TabWidget和...
- `onBind()`:当客户端通过`bindService()`绑定Service时调用。 - `onUnbind()`:当客户端解除绑定时调用。 - `onDestroy()`:Service被销毁前调用。 **2.3.4 判断服务开启状态** 可以通过查询正在运行的服务列表...
在Android开发中,Activity是应用的...以上内容涵盖了Android开发中的一些基础概念,包括Activity的生命周期、Service的使用、UI布局的控制以及数据管理等方面的知识点。这些都是Android初级开发者必须掌握的基础技能。
- **获取服务**:使用bindService()方法绑定到一个Service,并获取Service的引用。 ##### 2.4 CONTENTPROVIDER ContentProvider用于实现数据共享,使其他应用能够访问本应用的数据。 #### 四、ANDROID UI LAYOUT ...
以上只是Android开发中的一部分技巧,实际开发中还有许多其他主题,如Service、BroadcastReceiver、ContentProvider、IntentService、AsyncTask、多线程处理、数据库操作(SQLite)、网络请求、图片加载优化、权限...
**Activity**是Android应用中最基本的组成部分之一,负责处理用户交互,并控制屏幕上的输出。 - **2.1.1 概述** - Activity代表了应用程序的一个屏幕,它可以与其他Activity进行交互。 - **2.1.2 Activity的生命...
- **关闭所有Activity**:介绍了如何一次性关闭应用程序中的所有Activity,通常用于退出应用的场景。 - **PreferenceActivity**:讲解了PreferenceActivity的用法,它主要用于构建设置页面。 - **Dialog风格的...
- **Intent**:Android中最常见的数据传递方式,用于启动Activity或Service,同时可以携带数据。 - **Bundle**:Intent中的数据通常以Bundle形式存储,也可以在Fragment间传递数据。 - **Parcelable** 或 **...
- **概述**: Activity是Android中最基本的UI组件之一,每个Activity代表了一个屏幕上的界面。 - **生命周期**: Activity的状态会随着用户的操作而变化,主要包括onCreate、onStart、onResume、onPause、onStop、...
以上只是Android开发中的一小部分基础知识,深入学习还需要掌握更多概念,如Service、BroadcastReceiver、ContentProvider,以及对Android框架和组件的深入理解。随着经验的积累,你会逐渐精通这个强大的移动开发...