android应用内部实现生成桌面快捷方式与进度条控制音量大小
2016-06-29 17:15
531 查看
最近日子总算有点样子了,趁空闲将自己最近工作中用到的知识总结一下分享给大家。第一个就是在应用中加入可以在桌面上生成快键方式的功能,比如聊天APP在桌面生成某个经常联系的好友的快捷方式,在桌面点击快捷方式可以直接进入与他的聊天页面。第二个就是使用进度条去控制音量的大小。这些都是自己用过的下面会粘一些代码,比较急的童鞋可以直接使用。好了,看代码吧。
桌面生成快捷方式
1.在清单文件注册receiver。
2.添加权限。
3.在需要生成快捷方式的地方添加如下代码,注释很清楚,大家只用根据需求修改相关内容就可以。
使用进度条控制音量的大小
1.声明相关控件以及音量的管理者AudioManager,此处省略。
2.得到音量管理者,获得音量的最大值以及当前音量大小设置为进度条的最大值以及初始值。添加进度条的监听。
坐等下班,祝大家都开心。
桌面生成快捷方式
1.在清单文件注册receiver。
<receiver android:name="com.android.launcher2.InstallShortcutReceiver" android:permission="com.android.launcher.permission.INSTALL_SHORTCUT"> <intent-filter> <action android:name="com.android.launcher.action.INSTALL_SHORTCUT" /> </intent-filter> </receiver>
2.添加权限。
<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT"/>
3.在需要生成快捷方式的地方添加如下代码,注释很清楚,大家只用根据需求修改相关内容就可以。
public void createShortCut(){ //创建快捷方式的Intent Intent shortcutintent = new Intent("com.android.launcher.action.INSTALL_SHORTCUT"); //不允许重复创建 shortcutintent.putExtra("duplicate", false); //需要现实的名称也就是桌面快捷方式的名字 shortcutintent.putExtra(Intent.EXTRA_SHORTCUT_NAME, getString(R.string.shortcutname)); //快捷方式的图片 Parcelable icon = Intent.ShortcutIconResource.fromContext(getApplicationContext(), R.drawable.bz); shortcutintent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, icon); //点击快捷图片,运行的程序入口 shortcutintent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, new Intent(getApplicationContext() , TestMusicActivity.class)); //发送广播。OK sendBroadcast(shortcutintent); }
使用进度条控制音量的大小
1.声明相关控件以及音量的管理者AudioManager,此处省略。
2.得到音量管理者,获得音量的最大值以及当前音量大小设置为进度条的最大值以及初始值。添加进度条的监听。
audioManager=(AudioManager)getSystemService(AUDIO_SERVICE); int MaxSound=audioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC); switch_sound.setMax(MaxSound); int currentSount=audioManager.getStreamVolume(AudioManager.STREAM_MUSIC); switch_sound.setProgress(currentSount); switch_sound.setOnSeekBarChangeListener(new SeekBarListener());
class SeekBarListener implements SeekBar.OnSeekBarChangeListener { @Override public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { if (fromUser) { int SeekPosition=seekBar.getProgress(); audioManager.setStreamVolume(AudioManager.STREAM_MUSIC, SeekPosition, 0); } } @Override public void onStartTrackingTouch(SeekBar seekBar) { } @Override public void onStopTrackingTouch(SeekBar seekBar) { } }
坐等下班,祝大家都开心。
相关文章推荐
- Android中的“再按一次返回键退出程序”实现
- android源码解析之(一)-->android项目构建过程
- android--之笔记(一)
- Android项目研发之多分辨率适配
- 深入理解Android消息处理系统——Looper、Handler、Thread
- Android生命周期
- android控制系统回退按钮再按一次退出程序
- Android中的FlexboxLayout
- Activity的启动模式
- 通过js调用android原生方法
- Android开发环境搭建
- Android RecyclerView设置item间距
- Android取消EditText自动默认获取焦点行为
- Android 热补丁动态修复框架小结
- 安卓报错
- Android软键盘弹出,返回键Activity不结束
- Android跨进程通信之ContentProvider
- Android开发中RecyclerView组件使用的一些进阶技讲解
- Android 应用Crash Log在Logcat中消失的问题 threadid=1: thread exiting with uncaught exception
- Android 获取图片真实宽高