​转自:http://www.sctarena.com/Article/Article.asp?nid=5070
​1、在编写xml布局的时候,总是提示[Accessibility] Missing contentDescription attribute on image的警告信息

解决方法:

[html] view plaincopyprint?
  1. <ImageView
  2. android:layout_width="210dp"
  3. android:layout_height="32dp"
  4. android:layout_centerHorizontal="true"
  5. />

修改为:

[html] view plaincopyprint?
  1. <ImageView
  2. android:layout_width="210dp"
  3. android:layout_height="32dp"
  4. android:layout_centerHorizontal="true"
  5. android:contentDescription="组件的描述内容"
  6. />
 2、在android编写布局的时候,我们有时候需要将一个类封装成一个组件来使用,那么体现在界面上的方法有两种,1.xml布局,2.代码编写

第一种:xml布局

如果是xml布局需要注意两点

a.类的构造方法中必须添加

[html] view plaincopyprint?
  1. public 类名(Context context, AttributeSet attribute) {  }

b.在xml中的形式如下: http://www.sctarena.com/java/

[html] view plaincopyprint?
  1. <包名.类名
  2. 属性
  3. />

第二种代码布局,只需要构造

[java] view plaincopyprint?
  1. public 类名(Context context) {
  2. }

3、在播放音频的时候使用AudioTrack来实现,但是多次实现audioTrack.play,audioTrack.stop会出现如下现象:

[java] view plaincopyprint?
  1. obtainBuffer() track 0x17c418 disabled, restarting

原因为:

[java] view plaincopyprint?
  1. 在循环使用AudioTrack.write(byte[] audioData, int offsetInBytes, int sizeInBytes)写入音频数据时,由于网络原因和处理数据代码逻辑乱的原因,音频数据没及时发送过来

解决方案:

这个方法可能只限于我现在产生这种现象的解决方案:

描述:通过socket来接收aac数据,我取一帧来然后通过faad来解码成pcm码流,然后放在audioTrack里面播放,但是我是先初始化audioTrack.play,然后接收aac数据,调用faad解码成pcm数据,最后把pcm数据写到audioTrack里面播放声音。

解决方法:

造成这种现象的原因在上面已经写出,由于数据没有及时的写入造成的,所以我这边只初始化audioTrack实例,但不马上进行audioTrack.play(),只有第一次来数据的时候才进行audioTrack.play,这样就解决了我现在的问题。

[java] view plaincopyprint?
  1. /*
  2. * 播放音频
  3. */
  4. public void playvideo(byte[] data){
  5. if (AppInforToSystem.islistening && aAudio != null && aAudio.getPlayState() == AudioTrack.PLAYSTATE_STOPPED) {
  6. aAudio.play();
  7. aAudio.write(data, 0, 8192);
  8. }else if (AppInforToSystem.islistening && aAudio != null && aAudio.getPlayState() == AudioTrack.PLAYSTATE_PLAYING) {
  9. aAudio.write(data, 0, 8192);
  10. }
  11. }

android开发过程中遇到的小问题的更多相关文章

  1. Android开发过程中在sh,py,mk文件中添加log信息的方法

    Android开发过程中在sh,py,mk文件中添加log信息的方法 在sh文件中: echo "this is a log info" + $info 在py文件中: print ...

  2. Android开发中实现桌面小部件

    详细信息请参考原文:Android开发中实现桌面小部件 在Android开发中,有时候我们的App设计的功能比较多的时候,需要根据需要更简洁的为用户提供清晰已用的某些功能的时候,用桌面小部件就是一个很 ...

  3. android开发过程中遇到的坑

    在android的学习过程中,会有很多坑,我会把我遇到的,一一列下来,方便后来者查阅! 1:android-support-v4.jar and android-support-v7-appcompa ...

  4. asp.net mvc开发过程中的一些小细节

    现在做网站用mvc越来越普及了,其好处就不说了,在这里只记录一些很多人都容易忽视的地方. 引用本地css和js文件的写法 这应该是最不受重视的地方,有同事也说我有点小题大作,但我觉得用mvc还是得有一 ...

  5. 小程序开发过程中常见问题[微信小程序、支付宝小程序]

    目录 一.样式中如何使用background-image呢? 二.使用自适应单位rpx类似于rem,布局尽量使用flex布局 三.万能的{{双大括号,用于在模版中输出变量 四.你想要的基础组件和API ...

  6. JAVA开发过程中的各种小坑

    1.有时候你在本地跑的ECLIPSE中得到的正确的结果,部署到服务器上使用其他容器,如tomcat或WARS的时候,跑出的结果也许就不一致, 我们程序员会经常抱怨,在我机器上跑的好好的. 在不同的容器 ...

  7. Android开发中遇到的小问题 一

    1)想要ListView活着Girdview左右留些空隙,但Scrollbar要在屏幕最右边 在xml中加入 android:paddingLeft="8dp" android:p ...

  8. android 开发过程中碰到的 Failed to create the part's controls 问题

    在开发android的过程中,遇到一个很奇怪的问题,出现了“ Failed to create the part's controls” 的错误,查询了N多资料,然后逐条删除代码测试, 后来发现是变量 ...

  9. Android开发过程中使用弱引用解决内存泄露的习惯

    Java虽然有垃圾回收,但是仍然存在内存泄露,比如静态变量.缓存或其他长生命周期的对象引用了其他对象,这些被引用的对象就会长期不能被GC释放,导致内存泄露. 弱引用(WeakReference)是解决 ...

随机推荐

  1. hibernate的常用配置

    hibernate.cfg.xml的一些相关配置 <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Co ...

  2. quartz搭建与应用

    1.添加依赖 依赖包括Quartz和logback <dependencies> <dependency> <groupId>org.quartz-schedule ...

  3. c++ 容器、继承层次、句柄类

    一.容器与继承 在容器中保存有继承关系的对象,如果定义成保存基类对象,则派生类将被切割,如果定义成保存派生类对象,则保存基类对象又成问题(基类对象将被强制转换成派生类对象,而派生类中定义的成员未被初始 ...

  4. springAOP配置原理

    什么是AOP AOP(Aspect-OrientedProgramming,面向方面编程),可以说是OOP(Object-Oriented Programing,面向对象编程)的补充和完善.OOP引入 ...

  5. 完全掌握KMP算法思想

    文档下载页面http://download.csdn.net/detail/yedeqixian/4209500      80页在讲KMP算法的开始先举了个例子,让我们对KMP的基本思想有了最初的认 ...

  6. Android外部存储 - 官方文档解读

    预备知识:External Storage Technical Information 摘要: "The WRITE_EXTERNAL_STORAGE permission must onl ...

  7. QT动画介绍(有例子可以下载)

    所谓动画就是在一个时间段内的不同时间点有不同的状态,只要定义好这样状态,实现动画就是水到渠成的事情.当然做这件事情,最好用的就是状态机,点击这里查看Qt使用状态机实现动画效果实例. 不过,实现动画也有 ...

  8. Spring boot 启动过程解析 logback

    使用 Spring Boot 默认的日志框架 Logback. 所有这些 POM 依赖的好处在于为开发 Spring 应用提供了一个良好的基础.Spring Boot 所选择的第三方库是经过考虑的,是 ...

  9. 基于visual Studio2013解决C语言竞赛题之0202坐标转换

    题目

  10. 性能超越 Redis 的 NoSQL 数据库 SSDB

    idea's blog - 性能超越 Redis 的 NoSQL 数据库 SSDB 性能超越 Redis 的 NoSQL 数据库 SSDB C/C++语言编程, SSDB Views: 8091 | ...