Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[问答]-Android开发中有哪些兼容性问题?都是怎么解决的? #47

Open
jasonross opened this issue Mar 12, 2015 · 13 comments

Comments

@jasonross
Copy link

此问题已经迁移至精选话题 android-cn/topics#2 请大家移步讨论

@jasonross
Copy link
Author

@Trinea Android手机兼容性问题其实还是很多的,我觉得有必要建个项目,专门收集Android不同机型兼容性问题。

我这有一篇微信处理兼容性的文章,摘取一段:

`音频的兼容性问题就复杂的多,分为语音业务也和视频电话业务两大模块。

  1. 首先是录音源配置,大部分的手机在语音或视频电话时使用 MediaRecorder.AudioSource.MIC 即可,但三星华为某些机型需要在视频电话时将录音设备设置成 MediaRecorder.AudioSource.VOICE_COMMUNICATION 。
  2. 接着是amr编码方式的配置,可以使用系统的Mediarecorder直接录制amr文件,也可以使用Audiorecorder录制pcm后,调so库编码成amr文件,有一个高速语音的设置项可以供用户选择,但是有些机型只能使用其中的某一种才能正常发语音,所以需要动态配置。
  3. 还有一些是声音录不进的问题,一般就是指定的samplerate不支持或者录音权限没开。
  4. 然后是语音播放扬声器、听筒模式切换,这类反馈量比较大。主要就是前面介绍的speakerPhone、mode、 streamType的组合要设置正确。语音播放和语音通话还不能使用同一套策略,需要分别设置。
    `

有些机型不遵循标准API,很有必要收集整理一下。

@Trinea
Copy link
Member

Trinea commented Mar 12, 2015

可以啊,兼容性确实面很广,尤其是三方定制问题多。你的意思是新建个项目而不是作为一个 Issue?

@jasonross
Copy link
Author

这个Issue本意是说一些通用的兼容问题。
我觉得可以建个项目,大家把各家产品遇到的机型兼容问题分享一下,包含问题和解决方案。

@Trinea
Copy link
Member

Trinea commented Mar 12, 2015

建个项目就存在需要提交 PR 的问题,这个过程有点没必要。

倒是可以考虑另建个项目,用跟这类似的 Issue 方式。只是固定几个 Issue 来讨论,不允许随便新增 Issue。

相当于固定几个话题来讨论,包括这个。

@jasonross
Copy link
Author

@Trinea 可以啊,这个项目你来搞还是我来搞?

@Trinea
Copy link
Member

Trinea commented Mar 12, 2015

我今天晚点在这 group 下面建吧,我会在合适地方链接过去

@jasonross
Copy link
Author

@Trinea 我还有个想法,就是我们经常会看到有些应用的UI效果或者功能很好,但不了解其实现原理,感觉这个东西也可以按照这种问答形式搞一搞。

@Trinea
Copy link
Member

Trinea commented Mar 12, 2015

@jasonross 这个东西我们之前考虑过做在源码解析的公共技术部分,也还在搞。两边也可以同事

@jasonross
Copy link
Author

@Trinea 你可能误解我的意思了,我说的是一些比较特殊的例子,比如MIUI6的流量监控有个波纹效果,很帅,可能不知道怎么实现,想问问别人弄明白,其实你的几个qq群里经常有人问一些效果的模仿实现,我觉得放到Github上可能关注度更高,存活时间更久。源码解析公共技术估计还是『授人以渔』吧,我想要的效果就是『授人以鱼』。

@Trinea
Copy link
Member

Trinea commented Mar 12, 2015

ok,了解你的意思了。那我再建个 View 特效实现的库。

今天忙的有点晚了,明天我梳理下规则,如果明早起得来的话明早我会建好,起不来的话就只能等晚上了囧rz。

另外我可能抽不出时间去深度参与这几个库,可以帮宣传这些库让更多人参与受益,大家如果有想法建议,可以直接告诉我。有兴趣管理维护的我加上权限。

开源需要大家一起努力才能做大做好,利人利己。

@Trinea
Copy link
Member

Trinea commented Mar 13, 2015

此问题已经迁移至精选话题 android-cn/topics#2 请大家移步讨论,谢谢

@gaoneng102
Copy link

@jasonross 我看你对语音处理这块讲的很不错,我目前也是在处理语音这块的,有个问题困扰了我很久,但是一直没有找到合适的方案,希望你能给我点建议,问题如下:
1、语音在利用距离传感器进行自动切换听筒和扬声器时,水平放置手机用手掌挡住顶部,也会触发听筒并黑屏;
2、如果利用距离传感器和重力传感器同时进行处理,根据z方向的加速度,可以大致区分手机水平放置和竖直放置的情况,但是重力传感器的数值有时候会出现极端值,导致切换不灵敏;
请问,你这边有处理过类似的问题吗?我对比过微信的听筒切换方案,他们能区分水平放置情况,同时还能很精准的处理拿到耳朵旁边处理的场景;

@devLiuGit
Copy link

@jasonross 最近在做这方面的项目, 在适配三星和小米的时候遇到各种传感器和播放问题. 能分享下这方面适配的经验吗?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants