我已经构建了一个通过jni使用tinyalsa的Android应用。当我致电pcm_open
时,我得到:
cannot open device '/dev/snd/pcmC1D0c': Permission denied
与this poster's case不同,如果我su -c 'ls /dev/snd'
,我确实会看到相关文件。事实上,如果我stat
这个文件及其上面的目录,一直到根目录,stat
输出的权限符合我在普通linux工作站上看到的权限: / p>
所有目录均为0755/drwxr-xr-x
,文件本身为0660/crw-rw----
。
为什么Android会拒绝我的许可,我需要做些什么呢?
尽管对我的设备文件上方的目录有755
的权限,如果我adb shell
然后ls /dev/snd
,我会Permission denied
!
编辑:有人建议this problem的解决方案(顺便提一下,仍未解决)将解决我的问题;我不知道是否会。我担心的是pcm_open
open
/dev/snd/pcmC1D1c
来a
o
g
pcm.c
pcm.h
ArrayAdapter
items
setData(List<ObjectAgenda>)
public void setData(ArrayList<ObjectAgenda> items) {
super.clear();
for(ObjectAgenda a : items)
super.add(a);
this.items = items;
notifyDataSetChanged();
}
public void deleteRowFromUi(int position) {
super.remove(getItem(position));
this.items.remove(position);
notifyDataSetChanged();
}
}或#columns
)用户。在构建我的Android应用程序时,使用alsa是否需要我做一些 more 而不是链接libtinyalsa.so.1?
我的连接策略错了吗?在我的应用的JNI模块中,我从主要source中添加了#columns
和#columns > div
,然后按照标准程序打开了音频设备。