小编Jos*_*osh的帖子

检测Android设备上缺少耳机(仅扬声器)

我有一个应用程序,当在手机上使用时会显示扬声器切换按钮.拨动开关切换手机耳机和扬声器之间的音频路由.但是,当应用程序在平板电脑(或任何没有耳机的设备)上运行时,我想删除切换按钮,因为所有音频都通过免提电话发送.

理想情况下,我想使用某种isEarpiecePresent()调用,或者在某些配置对象上检查一个标志来查找此信息,但我在API中找不到任何类型的那种.

我试图通过调用AudioManager.setSpeakerphoneOn(false),然后检查来解决这个问题AudioManager.isSpeakerphoneOn(),希望它仍然会返回true,我可以关闭它.false即使音频仍然通过扬声器路由,系统也会返回.

我目前正在考虑检查电话功能,即使这不完全适合.还有其他想法吗?

android

17
推荐指数
2
解决办法
2418
查看次数

2D精灵的OpenGL ES阴影

我有一个用一堆精灵渲染的OpenGL场景,我想自动为它们添加阴影.这是一张显示我的意思的图片:

在此输入图像描述

场景使用正交投影,精灵是纹理四边形,我使用深度缓冲区从前到后绘制它们.我正在使用OpenGL ES 2.0,但是来自iOS或非ES世界的想法也会受到赞赏.我在脑子里想了几个关于如何解决这个问题的想法,我想知道哪个最有希望.

  1. 绘制每个精灵两次,第一次正常,第二次使用某种投影着色器在场景中更深一些.不确定这是否可行?
  2. 绘制一个精灵,然后再次绘制,变暗,并使用一些alpha,几次,并将一些随机抖动应用于顶点.这可能看起来很傻,完全不像阴影.
  3. 在没有背景的情况下绘制基础场景到纹理,然后模糊并使其变暗以创建一个大的投影.然后在阴影纹理上绘制基本场景,最后在背景上绘制.但是,这会失去精灵之间的阴影.
  4. SSAO在后处理过程中.可能是最动态和最自动的,但可能看起来模糊/颗粒状,真的很慢.
  5. 在创建时,为每个sprite生成阴影纹理.对于渲染,绘制一个精灵,然后在场景中绘制更深的阴影文本.我想我想避免这种情况,因为加载时间和额外的内存要求,但这可能是最快和最好看的?

我不想对外部纹理进行任何阴影处理,因为我在不同的比例下使用相同的精灵纹理,并且预先烘焙的阴影会不自然地缩放.

那么这些比其他更好吗?还有其他我没想过的选择吗?谢谢!

graphics android opengl-es ios

13
推荐指数
1
解决办法
4837
查看次数

从Android上的GPS提供商处获取*粗略*位置

我的应用程序只需要非常粗略的位置数据,所以我最初设置我的清单权限ACCESS_COARSE_LOCATION,并为其设置位置监听器NETWORK_PROVIDER.这给了我所需的粗略位置估算,但只有Google位置服务开启.

我期待如果用户只启用了GPS,我仍然可以得到他们位置的粗略估计.但似乎GPS_PROVIDER是通过使用ACCESS_FINE_LOCATION权限从中获取任何位置信息的唯一方法.

那么,只有启用GPS,应用才能获得位置信息,除非获得ACCESS_FINE_LOCATION许可吗?换句话说,GPS_PROVIDER如果应用只有ACCESS_COARSE_LOCATION权限,则无法发送粗略的位置估算值?

gps android location

6
推荐指数
1
解决办法
3899
查看次数

Android - 存储生成的位图的位置?

我有一个应用程序,动态生成6到100个小位图,供用户在给定的会话中在屏幕上移动.我现在生成它们onCreate并将它们存储到SD卡中,以便在更改方向后我可以将它们从外部存储器中取出并再次显示它们.但是,这需要花费时间(加载),并且我希望在生命周期更改之间保留位图引用,以便更快地访问.

我的问题是,是否有更好的地方存储我生成的位图?我正在考虑在我的基本活动中创建一个静态存储库,当应用程序从内存中完全删除时,只需要重新加载(关闭,其他应用程序需要资源,30分钟重启等).

理想情况下,我希望用户能够退回标题屏幕,单击"恢复"按钮,然后onCreate我只能访问那些驻留位图引用,而不必再次从存储中加载它们.出于这个原因,我认为不是Activity.onRetainNonConfigurationInstance我需要的.

或者,有没有比我正在做的或我描述的计划更好的方法来处理多个生成的位图?

lifecycle storage android persistence bitmap

0
推荐指数
1
解决办法
778
查看次数

标签 统计

android ×4

bitmap ×1

gps ×1

graphics ×1

ios ×1

lifecycle ×1

location ×1

opengl-es ×1

persistence ×1

storage ×1