微信的发送语音是有一个向上取消的,我们使用onTouchListener来监听手势,然后做出相应的操作就行了。

直接上代码:
//语音操作对象 private MediaPlayer mPlayer = null; private MediaRecorder mRecorder = null; //语音文件保存路径 private String FileName = null; FileName = Environment.getExternalStorageDirectory().getAbsolutePath() + "/soundrecord/amrsend.amr";
定义一个ImageView,然后给它设置监听事件:
@Override
public boolean onTouch(View view, MotionEvent motionEvent) {
switch (motionEvent.getAction()) {
case MotionEvent.ACTION_DOWN:
beginX = motionEvent.getX();
beginY = motionEvent.getY();
Log.e("MainActivity", "beginX:" + beginX);
Log.e("MainActivity", "beginY:" + beginY);
Log.e("MainActivity", "ACTION_DOWN");
mRecorder = new MediaRecorder();
mRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
mRecorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
mRecorder.setOutputFile(FileName);
mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
try {
mRecorder.prepare();
} catch (IOException e) {
Log.e("MainActivity", "prepare() failed" + e);
}
mRecorder.start();
break;
case MotionEvent.ACTION_UP:
finalX = motionEvent.getX();
finalY = motionEvent.getY();
Log.e("MainActivity", "finalX:" + finalX);
Log.e("MainActivity", "finalY:" + finalY);
Log.e("MainActivity", "ACTION_UP");
mRecorder.stop();
mRecorder.release();
mRecorder = null;
if ((beginY - finalY) > 50) {
Log.e("MainActivity", "执行删除");
new File(FileName).delete();
Log.e("MainActivity", "执行删除后文件是否还存在:" + new File(FileName).exists());
}
break;
default:
break;
}
return true;
}
然后在清单文件中加上需要的权限就行了:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" /> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.RECORD_AUDIO" />
也可以在按下之后播放动画,显示正在录音,然后在抬起动作之后结束动画,这样就比较形象了。
总结
以上所述是小编给大家介绍的Android仿微信发送语音消息的功能及示例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
# android
# 微信发送语音消息
# Android Intent发送广播消息实例详解
# SpringBoot webSocket实现发送广播、点对点消息和Android接收
# Android之利用EventBus发送消息传递示例
# Android使用广播发送消息
# 小编
# 就行了
# 是有
# 在此
# 给大家
# 按下
# 所述
# 给它
# 给我留言
# 感谢大家
# 疑问请
# 有任何
# view
相关文章:
javascript基本数据类型及类型检测常用方法小结
制作假网页,招聘网的薪资待遇,会有靠谱的吗?一面试又各种折扣?
专业网站建设制作报价,网页设计制作要考什么证?
建站之星后台密码如何安全设置与找回?
网页设计网站制作软件,microsoft office哪个可以创建网页?
如何在西部数码注册域名并快速搭建网站?
建站之星IIS配置教程:代码生成技巧与站点搭建指南
非常酷的网站设计制作软件,酷培ai教育官方网站?
公司网站的制作公司,企业网站制作基本流程有哪些?
在线制作视频网站免费,都有哪些好的动漫网站?
如何用美橙互联一键搭建多站合一网站?
网站微信制作软件,如何制作微信链接?
如何在Golang中引入测试模块_Golang测试包导入与使用实践
高端建站如何打造兼具美学与转化的品牌官网?
番禺网站制作公司哪家值得合作,番禺图书馆新馆开放了吗?
详解ASP.NET 生成二维码实例(采用ThoughtWorks.QRCode和QrCode.Net两种方式)
如何制作一个表白网站视频,关于勇敢表白的小标题?
定制建站价位费用解析与套餐推荐全攻略
如何通过智能用户系统一键生成高效建站方案?
*服务器网站为何频现安全漏洞?
TestNG的testng.xml配置文件怎么写
香港服务器选型指南:免备案配置与高效建站方案解析
香港服务器部署网站为何提示未备案?
建站之星后台密码遗忘如何找回?
如何在IIS中新建站点并配置端口与物理路径?
建站之星安装模板失败:服务器环境不兼容?
如何使用Golang安装API文档生成工具_快速生成接口文档
建站IDE高效指南:快速搭建+SEO优化+自适应模板全解析
,柠檬视频怎样兑换vip?
如何通过山东自助建站平台快速注册域名?
如何高效配置IIS服务器搭建网站?
西安专业网站制作公司有哪些,陕西省建行官方网站?
定制建站平台哪家好?企业官网搭建与快速建站方案推荐
Python lxml的etree和ElementTree有什么区别
邀请函制作网站有哪些,有没有做年会邀请函的网站啊?在线制作,模板很多的那种?
,怎么在广州志愿者网站注册?
建站之星导航菜单设置与功能模块配置全攻略
专业的网站制作设计是什么,如何制作一个企业网站,建设网站的基本步骤有哪些?
建站之星Pro快速搭建教程:模板选择与功能配置指南
在线ppt制作网站有哪些软件,如何把网页的内容做成ppt?
jQuery 常见小例汇总
手机网站制作与建设方案,手机网站如何建设?
如何破解联通资金短缺导致的基站建设难题?
微信小程序 input输入框控件详解及实例(多种示例)
如何注册花生壳免费域名并搭建个人网站?
如何获取开源自助建站系统免费下载链接?
微网站制作教程,我微信里的网站怎么才能复制到浏览器里?
如何快速查询网址的建站时间与历史轨迹?
如何在Windows 2008云服务器安全搭建网站?
如何快速上传建站程序避免常见错误?
*请认真填写需求信息,我们会在24小时内与您取得联系。