- 浏览: 663205 次
- 性别:
- 来自: 安徽
文章分类
- 全部博客 (252)
- Html/Div+CSS (12)
- Js/Jquery (34)
- Flex (2)
- Ajax (3)
- Java (35)
- C# (15)
- Spring (16)
- Hibernate (13)
- Struts2 (12)
- Struts1 (7)
- DWR (1)
- iBatis/myBatis (9)
- Tag(JSTL、EL) (1)
- Android (44)
- SQL (7)
- SEO (7)
- Exception (3)
- Tool (10)
- Other (3)
- WebService (9)
- Apache (7)
- Ext (0)
- Utils (12)
- thinking in programme (2)
- Hadoop (0)
- ActiveMQ (0)
- HTML5/CSS3 (0)
- WPF (1)
- NodeJs (1)
- 设计模式 (0)
- 程序人生 (1)
- 随笔 (1)
- Linux (1)
- Load Balance (0)
最新评论
-
drinkjava2:
太复杂了而且不通用,利用ThreadLocal可完美解决这一问 ...
JDBC的多条件动态查询 -
u013107014:
multipartRequest.getFiles(" ...
多文件上传 by MultipartFile and Multiple -
liyys:
可惜没讲你mysql数据库的表的设计
iBatis入门 -
Mapple_leave:
效果还是挺不错的,谢谢了。
中文简体与繁体的转换 -
arcpad:
JS禁用浏览器退格键
一、取得电池电量信息
在 Android 系统中,专门提供了一个取得电池电量信息的 Action—ACTION_BATTERY_CHANGED ,在此 Action 中定义了许多附加信息,这些附加信息的名称及作用如下:
No. |
附加信息 |
类型 |
备注 |
1 |
status |
int |
取得电池的状态,返回的状态类型由 android.os.BatteryManager 类定义的常量所决定,包括: ·电池充电状态( BATTERY_STATUS_CHARGING ) ·电池放电状态( BATTERY_STATUS_DISCHARGING ) ·电池满电状态( BATTERY_STATUS_FULL ) ·电池不充电状态( BATTERY_STATUS_NOT_CHARGING ) ·电池未知状态( BATTERY_STATUS_UNKNOWN ) |
2 |
health |
int |
取得电池的健康状态,返回的状态类型由 android.os.BatteryManager 类定义的常量所决定,包括: ·电池损坏( BATTERY_HEALTH_DEAD ) ·电池健康( BATTERY_HEALTH_GOOD ) ·电池过热( BATTERY_HEALTH_OVERHEAT ) ·电池电压过大( BATTERY_HEALTH_OVER_VOLTAGE ) ·未知状态( BATTERY_HEALTH_UNKOWN ) ·未明示故障( BATTERY_HEALTH_UNSPECIFIED_FAILURE ) |
3 |
present |
boolean |
判断当前是否存在电池 |
4 |
level |
int |
取得电池的剩余容量 |
5 |
scale |
int |
取得电池的总容量,通常为 100 |
6 |
Icon-small |
int |
取得电池对应的图标 ID |
7 |
plugged |
int |
连接的电源插座累心,返回的状态由 android.os.BatteryManager 类定义的常量所决定,包括: · USB 电源( BATTERY_PLUGGED_USB ) ·交流电电源( BATTERY_PLUGGED_AC ) |
8 |
voltage |
int |
取得电池的电压 |
9 |
temperature |
int |
取得电池的温度,单位是摄氏度 |
10 |
technology |
String |
取得电池的类型 |
范例:取得剩余电量
定义广播接受,显示电池电量, BatteryInfoBroadcastReceiver.java
package com.iflytek.demo; import android.app.AlertDialog; import android.app.Dialog; import android.content.BroadcastReceiver; import android.content.Context; import android.content.DialogInterface; import android.content.Intent; public class BatteryInfoBroadcastReceiver extends BroadcastReceiver {// 广播接收器 @Override public void onReceive(Context context, Intent intent) {// 接受广播 if (Intent.ACTION_BATTERY_CHANGED.equals(intent.getAction())) {// 判断Action int level = intent.getIntExtra("level", 0);// 取得电池剩余容量 int scale = intent.getIntExtra("scale", 100);// 取得电池总理 Dialog dialog = new AlertDialog.Builder(context)// 创建对话框 .setTitle("电池电量")// 设置标题 .setMessage( "电池电量为:" + String.valueOf(level * 100 / scale) + "%")// 设置信息 .setNegativeButton("关闭", new DialogInterface.OnClickListener() {// 设置取消按钮 @Override public void onClick(DialogInterface dialog, int which) {// 设置监听操作 } }).create();// 创建Dialog dialog.show();// 显示对话框 } } }
BatteryActivity.java
package com.iflytek.demo; import android.app.Activity; import android.content.Intent; import android.content.IntentFilter; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; public class BatteryActivity extends Activity { private Button but = null; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); super.setContentView(R.layout.main); this.but = (Button) super.findViewById(R.id.but); this.but.setOnClickListener(new OnClickListenerImpl()); } private class OnClickListenerImpl implements OnClickListener { @Override public void onClick(View v) { BatteryInfoBroadcastReceiver receiver = new BatteryInfoBroadcastReceiver(); IntentFilter filter = new IntentFilter( Intent.ACTION_BATTERY_CHANGED); BatteryActivity.this.registerReceiver(receiver, filter); } } }
二、声音服务: AudioManager
在 Android 系统中,为了满足用户操作声音功能的需要,专门提供了一个声音管理类 —android.media.AudioManager ,通过此类,可以实现手机音量的大小控制,或者进行静音、震动模式的切换。此类中所提供的常量及常用方法如下:
No. |
常量及方法 |
描述 |
1 |
Public static final int RINGER_MODE_NORMAL |
正常铃声模式 |
2 |
Public static final int RINGER_MODE_SILENT |
静音模式 |
3 |
Public static final int RINGER_MODE_VIBRATE |
震动模式 |
4 |
Public static final int STAREAM_ALARM |
报警音 |
5 |
Public static final int STAREAM_MUSIC |
播放音乐 |
6 |
Public static final int STAREAM_NOTIFICATION |
播放提示 |
7 |
Public static final int STAREAM_RING |
电话铃声 |
8 |
Public static final int STAREAM_VOICE_CALL |
电话呼叫 |
9 |
Public static final int VIBRATE_SETTING_ON |
打开震动 |
10 |
Public static final int VIBRATE_SETTING_ON |
通知震动 |
11 |
Public static final int VIBRATE_TYPE_RINGER |
电话响铃震动 |
12 |
Public static final int ADJUST_LOWER |
电话音量调小一格 |
13 |
Public static final int ADJUST_RAISE |
电话音量调大一格 |
14 |
Public int abandonAudioFocus(AudioManager.OnAudioFocusChangeListener l) |
放弃声音的焦点并设置监听 |
15 |
Public String getParameters(String keys) |
返回配置的指定参数内容 |
16 |
Public int getRingerMode() |
取得响铃模式 |
17 |
Public void setParameters(String keyValuePairs) |
设置响铃参数 |
18 |
Public void setRingerMode(int ringerMode) |
设置响铃模式 |
19 |
Public void adjustVolume(int direction,int flags) |
调节音量 |
20 |
Public int getStreamVolume(int streamType) |
返回指定数据流的当前音量值 |
21 |
Public void setStreamVolume(int streamType,int index,int flags) |
设置音频数据流 |
如果想取得 AudioManager 对象,则必须通过 getSystemService() 方法找到 Context.AUDIO_SERVICE 服务。
范例:完成设置手机铃声和音量的增加或减少
AudioManagerActivity.java
package com.iflytek.demo; import android.app.Activity; import android.content.Context; import android.media.AudioManager; import android.media.MediaPlayer; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.ImageButton; import android.widget.Toast; public class AudioManagerActivity extends Activity { private ImageButton voiceOn = null;// 打开声音 private ImageButton voiceOff = null;// 静音按钮 private ImageButton voiceVibrate = null;// 震动按钮 private ImageButton voiceLower = null;// 降低音量 private ImageButton voiceRaise = null;// 调高音量 private AudioManager audio = null;// 音量管理 /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); super.setContentView(R.layout.main); this.voiceOn = (ImageButton) super.findViewById(R.id.voiceon); this.voiceOff = (ImageButton) super.findViewById(R.id.voiceoff); this.voiceVibrate = (ImageButton) super.findViewById(R.id.voicevibrate); this.voiceLower = (ImageButton) super.findViewById(R.id.voicelower); this.voiceRaise = (ImageButton) super.findViewById(R.id.voiceraise); this.audio = (AudioManager) super .getSystemService(Context.AUDIO_SERVICE);// 取得服务 this.voiceOn.setOnClickListener(new VoiceOnOnClickListenerImpl()); this.voiceOff.setOnClickListener(new VoiceOffOnClickListenerImpl()); this.voiceVibrate .setOnClickListener(new VoiceVibrateOnClickListenerImpl()); this.voiceLower.setOnClickListener(new VoiceLowerOnClickListenerImpl()); this.voiceRaise.setOnClickListener(new VoiceRaiseOnClickListenerImpl()); this.playAudio(); } /** * @descrption 播放音乐 * @author xdwang * @create 2012-11-05 下午8:55:38 */ private void playAudio() { MediaPlayer media = MediaPlayer.create(this, R.raw.shiqisuideyuji);// 指定资源 media.setLooping(true);// 循环播放 try { media.prepare();// 预备状态 } catch (Exception e) { } media.start();// 播放文件 } private class VoiceOnOnClickListenerImpl implements OnClickListener { @Override public void onClick(View v) { AudioManagerActivity.this.audio .setRingerMode(AudioManager.RINGER_MODE_NORMAL); Toast.makeText(AudioManagerActivity.this, "手机音量开启!", Toast.LENGTH_SHORT).show(); } } private class VoiceOffOnClickListenerImpl implements OnClickListener { @Override public void onClick(View v) { AudioManagerActivity.this.audio .setRingerMode(AudioManager.RINGER_MODE_SILENT); Toast.makeText(AudioManagerActivity.this, "手机静音!", Toast.LENGTH_SHORT).show(); } } private class VoiceVibrateOnClickListenerImpl implements OnClickListener { @Override public void onClick(View v) { AudioManagerActivity.this.audio .setRingerMode(AudioManager.RINGER_MODE_VIBRATE); Toast.makeText(AudioManagerActivity.this, "手机为震动模式!", Toast.LENGTH_SHORT).show(); } } private class VoiceLowerOnClickListenerImpl implements OnClickListener { @Override public void onClick(View v) { AudioManagerActivity.this.audio.adjustVolume( AudioManager.ADJUST_LOWER, 0); Toast.makeText(AudioManagerActivity.this, "音量减小!", Toast.LENGTH_SHORT).show(); } } private class VoiceRaiseOnClickListenerImpl implements OnClickListener { @Override public void onClick(View v) { AudioManagerActivity.this.audio.adjustVolume( AudioManager.ADJUST_RAISE, 0); Toast.makeText(AudioManagerActivity.this, "音量增加!", Toast.LENGTH_SHORT).show(); } } }
发表评论
-
This version of ADT requires android SDK
2013-07-25 16:45 1541Windows系统下用Eclipse开发工具开发An ... -
Android学习13-----网络通信(4) WebView组件
2012-11-27 09:18 2453WebView 是一个开发的浏览 ... -
Android学习13-----网络通信(3) 与Web Service进行通讯
2012-11-26 09:40 1858这里我们的WebService使用xFire开发。 ... -
Android学习13-----网络通信(2) 与Socket交换数据
2012-11-23 09:11 3267对于网络开发而言,最常用的交互模式:WebService、We ... -
Android学习13-----网络通信(1) 与WEB服务器交换数据
2012-11-22 09:11 2158与Web服务器交互: 如果手机要想与 web ... -
Android学习11-----多媒体技术(5) 媒体录制
2012-11-16 08:10 1846在Android中通过android.media ... -
Android学习11-----多媒体技术(4) 使用摄像头拍照,多点触控
2012-11-15 08:37 2834一、摄像头拍照 前面说媒体播放 时了解了 ... -
Android学习11-----多媒体技术(3) 媒体播放
2012-11-14 08:25 1380在 Androi ... -
Android学习11-----多媒体技术(2) Animation
2012-11-13 08:47 1955一、渐变动画, Tweened Animation ... -
Android学习11-----多媒体技术(1) 绘制简单图形,Bitmap,Matrix
2012-11-12 08:48 1568一、绘制简单图 ... -
Android学习12-----手机服务(4) 传感器
2012-11-19 09:13 1986传感器一般用于游戏中,在 Android 系统中为 ... -
Android学习10-----Android组件通信 (8) 桌面显示组件:AppWidget
2012-11-02 08:36 2001一、 AppWidget 在使用 Androi ... -
Android学习10-----Android组件通信 (7) 广播机制:Broadcast
2012-11-01 08:43 1480一、 广播: 广播也是一种信息的发送机制,在 ... -
Android学习10-----Android组件通信 (6) PendingIntent
2012-10-31 08:20 2206Intent 的主要功能是表示用 ... -
Android学习10-----Android组件通信 (5) Service
2012-10-30 08:25 1679Service 基本组成: ... -
Android学习10-----Android组件通信 (4) 消息机制
2012-10-29 08:22 1514在 Android 操作系统中存在着消息队列的操作 ... -
Android学习10-----Android组件通信 (3) ActivityGroup
2012-10-26 08:23 2264导航栏在 Android 中的应用是很常见的,前面 ... -
Android学习10-----Android组件通信 (2) Activity生命周期
2012-10-25 08:16 1248Activity 是整个 Android 平台的基 ... -
Android学习10-----Android组件通信 (1) Intent
2012-10-24 08:43 1930在一个项目之中,会由多个 Activity ... -
Android判断是否有网络连接
2013-04-25 16:34 1402Android中判断有时候因为功能的需求,需要判断是否有网络 ...
相关推荐
AudioManager设置声音模式和调整声音大小的方法。 如何获取声音管理器: AudioManager audioManager = (AudioManager) getSystemService(AUDIO_SERVICE); 里面主要的方法: A、设置声音模式 //声音模式 ...
Android程序设计
AudioManager的setmode使用及其详解,一个项目的开发经验。
在Android源码的基础上分析 音频文件的的扫描,系统铃声的管理以及情景模式的切换
一种在 Unity 中播放和管理多种不同声音的简单、通用的方法。 只需一行代码即可播放“Resources”文件夹中的声音文件! AudioManager . Main . PlayNewSound ( " GotNewItem " ); 安装 将 AudioManager.cs 和 ...
unity3d声音管理插件AudioManager
Android中使用AudioManager实现按键录音并保存以及点击播放功能示例代码 Android中使用AudioManager实现按键录音并保存以及点击播放功能示例代码 Android中使用AudioManager实现按键录音并保存以及点击播放功能示例...
在Android手机中,我们同样可以通过Android的SDK提供的声音管理接口来管理手机声音模式以及调整声音大小,这就是Android中AudioManager的使用。 AudioManager 类位于 android.Media 包中,该类提供访问控制音量和...
5.24 取得电信网络与手机相关信息——TelephonyManager与android.provider.Settings.System的应用 第6章 手机自动服务纪实 6.1 您有一条短信popup提醒——常驻BroadcastReceiver的应用 6.2 手机电池计量还剩多少...
背景音乐播放技术, 通过使用 MediaPlayer,AudioManager 需要用到的dl.mid 文件放在assets, 读者需将其复制到 /sdcard/ 目录下 详情请参见 http://blog.csdn.net/aduovip/article/details/9026567
Android 听筒扬声器切换(多机型兼容、兼容5.0以上) 亲测有效机型(案例有限、仅供参考) 三星系:SM-A9000、SM-S5 魅族系:魅蓝E(yun os)、魅蓝note5 小米系:红米1s、小米note Vivo系:忘了什么型号了 详细...
5.24 取得电信网络与手机相关信息——TelephonyManager与android.provider.Settings.System的应用 第6章 手机自动服务纪实 6.1 您有一条短信popup提醒——常驻BroadcastReceiver的应用 6.2 手机电池计量还剩多少...
5.24 取得电信网络与手机相关信息——TelephonyManager与android.provider.Settings.System的应用 第6章 手机自动服务纪实 6.1 您有一条短信popup提醒——常驻BroadcastReceiver的应用 6.2 手机电池计量还剩多少...
10.7、手机闹钟服务:AlarmManager; 10.8、接受广播信息:BroadcastReceiver; 10.9、接受系统广播消息: 第11章、多媒体应用开发 11.1、音频和视频的播放:MediaPlayer; SoundPool; VideoView; 11.2、使用...
《疯狂Android讲义(第2版)》.(李刚).源代码 疯狂Android讲义目录结构: 第2章、Android应用程序界面设计,即View 2.2、布局管理(Layout):LinearLayout、TableLayout、FrameLayout、RelativeLayout; 2.3、基本...
10.7、手机闹钟服务:AlarmManager; 10.8、接受广播信息:BroadcastReceiver; 10.9、接受系统广播消息: 第11章、多媒体应用开发 11.1、音频和视频的播放:MediaPlayer; SoundPool; VideoView; 11.2、使用...
5.24 取得电信网络与手机相关信息——TelephonyManager与android.provider.Settings.System的应用 第6章 手机自动服务纪实 –p254 6.1 您有一条短信popup提醒——常驻BroadcastReceiver的应用 6.2 手机电池计量还剩...
10.1.2 启动和停止Service 376 10.1.3 绑定本地Service并与之 通信 377 10.1.4 Service的生命周期 381 10.2 跨进程调用Service (AIDL服务) 382 10.2.1 AIDL服务简介 382 10.2.2 创建AIDL文件 383 ...
AudioManager中文翻译 让你不必再看烦恼的代码!