【问题标题】:libspotify fails with SIGSEGV on Androidlibspotify 在 Android 上使用 SIGSEGV 失败
【发布时间】:2012-09-07 13:47:54
【问题描述】:

我正在围绕原生 libspotify.so(Android 的Spotify 库)编写一个包装器。我在调用 sp_session_starred_create 时得到了这个:

A/libc(26182): Fatal signal 11 (SIGSEGV) at 0x00000000 (code=1), thread 26182 
I/DEBUG(34): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
I/DEBUG(34): Build fingerprint: 'generic/sdk/generic:4.1.1/JRO03E/403059:eng/test-keys'
I/DEBUG(34): pid: 26182, tid: 26182, name: UNKNOWN 
I/DEBUG(34): signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 00000000
...
I/DEBUG(34): backtrace:
I/DEBUG(34):     #00  pc 0011fc40  /data/data/.../lib/libspotify.so
I/DEBUG(34):     #01  pc 000e1e58  /data/data/.../lib/libspotify.so
...
D/Zygote(37): Process 26182 terminated by signal (11)

当我调用 sp_search_createsp_session_playlistcontainer 时同样的问题。

这是跟踪文件的内容(我已经删除了一些重复的 sp_session_process_events):

libspotify trace from 12.1.51.g86c92b43 Release Android-arm 

> sp_session_process_events(0x200f40 0xbeba10cc) on 0xafd4a828
< sp_session_process_events() = 300447
< sp_session_create() = 0
> sp_session_connectionstate(0x200f40) on 0xafd4a828
< sp_session_connectionstate() = 0
> sp_session_remembered_user(0x200f40 0xbeba12a4 256) on 0xafd4a828
< sp_session_remembered_user() = 21
> sp_session_relogin(0x200f40) on 0xafd4a828
< sp_session_relogin() = 0
> sp_session_connectionstate(0x200f40) on 0xafd4a828
< sp_session_connectionstate() = 1
> sp_session_starred_create(0x200f40) on 0xafd4a828
> sp_session_process_events(0x200f40 0xbeba0e9c) on 0xafd4a828
< sp_session_process_events() = 693
> sp_session_process_events(0x200f40 0xbeba0e7c) on 0xafd4a828
< sp_session_process_events() = 692

我确信应用程序在 sp_session_starred_create 中某处崩溃的调试跟踪。

有人收到这些错误吗?我怎样才能避免它们?

【问题讨论】:

  • 你是如何调用 sp_session_starred_create 的?
  • 这是我的代码:jobject pl = NULL; sp_session *n_session = get_session_from_object(env, obj); sp_playlist *n_pl = sp_session_starred_create(n_session); return pl;**sp_session_starred_create** 已输入但从不返回控制流。
  • 我们在 libSpotify 中发现了一些类似的问题并正在调查它们(我在 Spotify 工作)。
  • Android 版 libspotify 的下一个版本何时会修复此错误?
  • 是否有更旧、更稳定的 libspotify 版本可供下载?

标签: android android-ndk spotify


【解决方案1】:

我怀疑这是 libspotify 本身的一个问题,并有望在库的下一个版本中得到解决(免责声明:我在 Spotify 工作)。我无法评论此版本何时可用。所以坚持住!

但是,我建议检查您传递给sp_session_starred_create() 的会话对象,即调用sp_session_connectionstate() 以确保一切正常。

【讨论】:

  • 嗨 Nik,有没有办法获得较旧的更稳定版本的 lib?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多