腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
首页
学习
活动
专区
工具
TVP
最新优惠活动
返回腾讯云官网
老欧说安卓
专栏成员
举报
251
文章
428310
阅读量
77
订阅数
订阅专栏
申请加入专栏
全部文章(251)
android(206)
kotlin(36)
android studio(19)
编程算法(14)
java(12)
xml(12)
github(6)
数据库(4)
sql(4)
打包(4)
git(4)
listview(3)
textview(3)
sqlite(3)
http(3)
容器(3)
开源(3)
https(3)
webview(2)
ide(2)
eclipse(2)
腾讯云测试服务(2)
网站(2)
parcel(2)
网络安全(2)
gradle(2)
socket编程(2)
canvas(2)
机器学习(1)
c++(1)
javascript(1)
node.js(1)
arm(1)
svn(1)
api(1)
windows server(1)
神经网络(1)
文件存储(1)
云推荐引擎(1)
缓存(1)
数据迁移(1)
sdk(1)
add(1)
app(1)
view(1)
布局(1)
动画(1)
搜索文章
搜索
搜索
关闭
Android开发笔记(一百八十九)利用LAME录制MP3音频
打包
android
java
Android常用的录音工具有两种,分别是MediaRecorder和AudioRecord,前者用于录制普通音频,后者用于录制原始音频。然而无论是普通音频的amr和aac格式,还是原始音频的pcm格式,都不能在电脑上直接播放,也不能在苹果手机上播放,因为它们属于安卓手机的定制格式,并非通用的音频格式。若想让录音文件放之四海而皆能播放,就得事先将其转为通用的MP3格式,虽然Android官方的开发包不支持MP3转换,不过借助第三方的LAME库,能够将原始音频转存为MP3文件。 LAME是一个高质量的MP3编码器,它采用C/C++代码开发,需要通过JNI技术引入到App工程。LAME源码的下载页面为https://lame.sourceforge.io/download.php,笔者找到的最新版本是3.100,先解压下载完成的源码包,再按照下列步骤依次调整源码细节: 1、把源码包里面的libmp3lame目录整个复制到App模块的jni目录下; 2、把include目录下的lame.h头文件复制到jni\libmp3lame目录下; 3、打开jni\libmp3lame下面的set_get.h,把这行代码
aqi00
2022-11-16
1.5K
0
Android Studio 3.2升级后的编译问题解决办法
gradle
android studio
android
http
打包
2018年9月24日,Android Studio千呼万唤终于放出了3.2正式版,博主赶紧下载了安装包升级到最新版,每次AS升级都会带来各种各样的惊喜(大坑),这次不出所料也出现了几个编译问题,逐个想办法解决后记录如下,供各位朋友参考。
aqi00
2019-01-18
1K
0
Android开发笔记(八十二)SDK版本兼容
android
打包
api
java
github
Android控件很多属性都有默认值,比如文字默认黑色、编辑框默认透明背景等等,但因为android是开源的,各厂商都会自行修修补补,所以很多时候默认值并不靠谱。举例如下: 1、在某些低版本的Android上,如不指定文字颜色textColor,则默认的文字颜色是白色; 2、编辑框有的默认透明背景加一根底线,有的默认白色圆角背景; 3、主题Theme.Holo默认是浅灰背景,但有的品牌手机上改成了深灰背景; 4、调用View的getDrawingCache方法对指定控件截图,默认背景是黑色,而不是我们在UI上看到的透明背景,是不是很惊讶?所以截图前要先设置好背景色。 所以,为了让app在不同设备上都是一样的显示风格,就得自己设置期望的各种属性值,另外也尽量不用系统自带的主题,如有可能自定义主题风格,这样即使设备厂商修改了默认属性值,app也仍然保持统一的风格。
aqi00
2019-01-18
1K
0
Android开发笔记(六十九)JNI实战
c++
java
socket编程
打包
android
NDK全称为Native Development Kit,意即原生的开发工具,NDK允许开发者在APP中通过C/C++代码执行部分程序。它是Android提供的方便开发者通过JNI接口进行Java与C/C++交叉编译的工具集。 NDK的用于概括来说主要分为以下几种情况(以下三点摘自百度百科): 1. 代码的保护,由于apk的Java层代码很容易被反编译,而C/C++库反编译难度较大; 2. 在NDK中调用第三方C/C++库,因为很多的开源库都是用C/C++代码编写的,例如:OpenGL,FFmpeg等; 3. 便于移植,用C/C++写的库可以很方便在其它的嵌入式平台上再次使用。
aqi00
2019-01-18
918
0
没有更多了
社区活动
【纪录片】中国数据库前世今生
穿越半个世纪,探寻中国数据库50年的发展历程
立即查看
Python精品学习库
代码在线跑,知识轻松学
立即查看
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
立即体验
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
立即查看
领券
问题归档
专栏文章
快讯文章归档
关键词归档
开发者手册归档
开发者手册 Section 归档