- 浏览: 153790 次
- 性别:
- 来自: 茂名
文章分类
最新评论
-
stoneyulu:
很好,正需要要!用来在thread和activity之间传数 ...
在Activity中通过Bundle传递自定义数据类型 -
鱼在陆地上跑:
只能读取TXT格式的文件,而不能读取图片
读取Rescource和asset文件夹中的文件 -
myg_315:
我也在调查这个问题,谢谢!
Android程序的退出终于完美解决,兼容所有SDK -
jk138:
谢谢各位的评论,楼下的建议很好,值得大家注意了.
Android程序的退出终于完美解决,兼容所有SDK -
cyilinycc:
非常感谢你提供的这个方法,但我经过测试之后,发现这个方法存在弊 ...
Android程序的退出终于完美解决,兼容所有SDK
第一步.MainActivity.java
package com.chaowen; import android.app.Activity; import android.app.Service; import android.content.ComponentName; import android.content.Intent; import android.content.ServiceConnection; import android.os.Bundle; import android.os.IBinder; import android.util.Log; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.Toast; public class MainActivity extends Activity { private Button startButton,stopButton,bindButton,unbindButton; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); startButton = (Button)findViewById(R.id.startButton); stopButton = (Button)findViewById(R.id.stopButton); bindButton = (Button)findViewById(R.id.bindButton); unbindButton = (Button)findViewById(R.id.unbindButton); //添加监听器 startButton.setOnClickListener(startListener); stopButton.setOnClickListener(stopListener); bindButton.setOnClickListener(bindListener); unbindButton.setOnClickListener(unbindListener); } //启动Service监听器 private OnClickListener startListener = new OnClickListener() { @Override public void onClick(View v) { //创建Intent Intent intent = new Intent(); //设置Action属性 intent.setAction("com.chaowen.action.MY_SERVICE"); //启动该Service startService(intent); } }; //停止Service监听器 private OnClickListener stopListener = new OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(); intent.setAction("com.chaowen.action.MY_SERVICE"); stopService(intent); } }; //连接对象 private ServiceConnection connection =new ServiceConnection() { //断开时调用 @Override public void onServiceDisconnected(ComponentName name) { //输出日志 Log.i("Service", "断开连接"); //通过Toast显示信息 Toast.makeText(MainActivity.this, "断开连接", Toast.LENGTH_LONG).show(); } //连接时调用 @Override public void onServiceConnected(ComponentName name, IBinder service) { //输出日志 Log.i("Service", "连接成功"); //通过Toast显示信息 Toast.makeText(MainActivity.this, "连接成功", Toast.LENGTH_LONG).show(); } }; //绑定Service监听器 private OnClickListener bindListener = new OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(); intent.setAction("com.chaowen.action.MY_SERVICE"); bindService(intent, connection, Service.BIND_AUTO_CREATE); } }; //解除绑定Service监听器 private OnClickListener unbindListener = new OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(); intent.setAction("com.chaowen.action.MY_SERVICE"); unbindService(connection); } }; }
第二步.MyService.java
package com.chaowen;
import android.app.Service; import android.content.Intent; import android.os.IBinder; import android.util.Log; import android.widget.Toast; public class MyService extends Service { @Override public IBinder onBind(Intent intent) { Log.i("SERVICE", "onBind"); Toast.makeText(MyService.this, "onBind...", Toast.LENGTH_LONG).show(); return null; } @Override public void onCreate() { Log.i("SERVICE", "onCreate"); Toast.makeText(MyService.this, "onCreate...", Toast.LENGTH_LONG).show(); } @Override public void onStart(Intent intent, int startId) { Log.i("SERVICE", "onStart"); Toast.makeText(MyService.this, "onStart...", Toast.LENGTH_LONG).show(); } @Override public void onDestroy() { Log.i("SERVICE", "onDestroy"); Toast.makeText(MyService.this, "onDestroy...", Toast.LENGTH_LONG).show(); } }
第三步.main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <Button android:text="启动Service" android:id="@+id/startButton" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <Button android:text="停止Service" android:id="@+id/stopButton" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <Button android:text="绑定Service" android:id="@+id/bindButton" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <Button android:text="解除绑定" android:id="@+id/unbindButton" android:layout_width="wrap_content" android:layout_height="wrap_content" /> </LinearLayout>
第四步.AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.chaowen" android:versionCode="1" android:versionName="1.0"> <uses-sdk android:minSdkVersion="4" /> <application android:icon="@drawable/icon" android:label="@string/app_name"> <activity android:name=".MainActivity" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <service android:name="MyService"> <intent-filter> <action android:name="com.chaowen.action.MY_SERVICE" /> </intent-filter> </service> </application> </manifest>
发表评论
-
Failed to receive access token
2013-04-24 12:52 1511在 com.weibo.net.Token.java文件中 ... -
Android实例五:Notification通知和Broadcast结合
2011-06-15 11:42 8303第一步.MainActivity.java pack ... -
Android实例四:BroadCast_Receiver
2011-06-15 10:36 6789第一步. MainActivity.java ... -
Android实例二:手机数据库SQListe
2011-06-14 11:16 2191[code="java"] ... -
Android实例一:文件搜索
2011-06-13 20:12 3802本例子参考SDK开发范例大全 说明:以ListA ... -
关于android ListView的美化
2011-05-31 08:36 988用心的朋友应该会发现,listview中在设置了背景之后。会有 ... -
Android程序的退出终于完美解决,兼容所有SDK
2011-05-30 16:23 3712上网学了好多方法,关于Android的Activity如何退出 ... -
android兼容2.2及以前版本的退出方法
2011-05-30 14:16 1239首先,在首个activity中写: Intent inten ... -
缩放图片的方法
2011-05-26 15:35 1104代码一: public Bitmap ResizeBi ... -
Android对图片的压缩读取和保存
2011-05-26 12:46 1756在开发图片浏览器等软件是,很多时候要显示图片的缩略图,而一般情 ... -
android显示单位
2011-05-19 16:10 1008px (pixels)像素 一般HVGA代表320 ... -
申请Google Map密钥
2011-05-17 15:25 17531.启动eclipse,依次单 ... -
SharedPreferences
2011-05-17 14:16 1294package wyf.wpf;//声明包语句 imp ... -
Content Provider
2011-05-17 11:54 1136package wyf.wpf; //声明包 ... -
轻量级数据库SQLite
2011-05-17 11:29 1232MySQLiteHelper.java im ... -
读取Rescource和asset文件夹中的文件
2011-05-17 11:01 5262package wyf.wpf; //声明包 ... -
数据存储之IO
2011-05-17 10:54 985package wyf.wpf; import jav ... -
android 检测当前网络并调用系统设置
2011-05-12 10:07 1716/** * 检测网络是否可用 */ pu ... -
Android 菜单(Menu)控件的使用
2011-05-11 14:05 744有两种方法,可以创建。 1.通过xml来创建 ... -
GridView宫格图的使用
2011-05-11 10:18 2562学习内容:1.GridView的使用 ...
相关推荐
本篇文章将深入解析"android service 简单实例源代码",帮助你理解如何在Android应用中创建和使用Service。 首先,我们来了解一下Service的基本概念。Service主要分为两种类型:标准Service和IntentService。标准...
这篇博客"Android实例四:BroadCast_Receiver"将深入探讨如何在实际项目中使用BroadcastReceiver。 首先,我们需要了解BroadcastReceiver的基本概念。BroadcastReceiver是一个抽象类,用于接收并处理系统或应用广播...
全书分为18章,分别讲解了UI布局实例集锦、控件实例集锦、自动化服务实例集锦、数据存储实例集锦、电话和短信实例集锦、图形图像实例集锦、和网络有关的实例集锦、多媒体实例集锦、Google地图实例集锦、GoogleAPI...
在Android开发领域,实例是学习和提升技能的重要途径。"Android开发实例:手机助手 源码"是一个供开发者研究和学习的项目,它涵盖了多种Android应用开发的关键技术和实践。这个手机助手应用可能包含了诸如设备管理、...
在Android平台上进行应用程序开发时,...通过这个实例,开发者可以学习到如何在Android应用中实现拨打电话的功能,同时理解权限管理、Intent的使用以及用户交互设计等核心概念。这将有助于构建更完善的Android应用。
在这个“ProAndroid学习”系列中,我们将关注如何使用HttpURLConnection或者第三方库如OkHttp来创建HTTP服务。 1. **HttpURLConnection**:这是Android SDK内置的网络请求API,可以用来发送GET和POST请求。我们可以...
总之,"Android 实例 源码 39个"是一个全面的学习资源,通过实践这些实例,开发者可以从中学到Android开发的各个方面,从而提升自己的专业能力。无论是初学者还是经验丰富的开发者,都能从中受益匪浅。
这个实例程序源自博客文章《android基础知识05:四大组件之service 01实例程序2》,它为开发者提供了关于如何在Android应用中实现和使用Service的实践指导。 首先,Service是Android中的后台运行组件,它可以长时间...
这个“Android手机编程实例源码:Widget源代码”压缩包包含了一系列关于Android Widget开发的实践示例,对于学习和理解如何创建自定义Widget具有极高的价值。 首先,Android Widget主要由AppWidgetProvider、布局...
本篇文章将深入探讨`startService`类型的Android Service,通过一个简单的实例来展示其工作原理和使用方法。 `Service`分为两种主要类型:`Start Service`和`Bound Service`。`Start Service`主要用于执行非交互式...
通过分析这个音乐播放器实例,开发者可以深入学习到Android多媒体编程、服务、UI设计、线程管理等多个核心领域,这对于提升Android开发技能非常有帮助。源码和说明文档将提供具体的实现细节,有助于理论与实践相结合...
在这个"android intent service实例"中,我们将深入探讨Intent Service的工作原理、创建过程以及如何在实际应用中使用。 Intent Service的基本概念: 1. 工作队列:Intent Service使用一个工作队列来顺序处理Intent...
本篇文章将深入探讨`Android Service`的实例,帮助开发者更好地理解和运用这一核心功能。 首先,Service的基本概念是:它是一个没有用户界面的后台组件,可以执行长时间的操作,比如播放音乐、处理网络请求或同步...
在Android开发领域,掌握实例源码是提升技能和理解系统工作原理的重要途径。"android 实例源码 集合" 提供了多种Android应用程序的源代码,这为我们提供了宝贵的参考资源,帮助开发者深入理解Android应用开发的各种...
本资源包含了一系列Android应用实例的源代码,旨在帮助开发者通过实际操作来探索和学习Android开发的创新方法。 首先,我们要明确,Android创意实例是展示如何在平台上实现各种独特功能和交互方式的示例。这些实例...
在本压缩包“Android PPT及实例代码.rar”中,主要包含了两个部分:Android实例代码和相关的PPT教学材料。这些资源是针对Android开发的学习资料,适用于初学者和有一定经验的开发者,旨在通过实例和理论讲解,深入...
在Android应用开发中,Remote Service是一种允许不同应用进程间通信并执行操作的服务。Remote Service能够使得应用程序组件(如Activity)可以跨进程调用服务中的方法,实现数据共享或执行耗时任务,而不阻塞用户...
在"android基础知识05:四大组件之service 02:远程调用实例程序"中,我们探讨的是如何在不同的应用之间通过AIDL(Android Interface Definition Language)进行远程服务调用。AIDL是Android提供的一种机制,用于在...
启动Service: ```java Intent intent = new Intent(this, MyService.class); startService(intent); ``` 绑定Service: ```java Intent intent = new Intent(this, MyService.class); bindService(intent, new ...