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

imsdroid and Android 7 #608

Open
jgpestana opened this issue Aug 31, 2017 · 5 comments
Open

imsdroid and Android 7 #608

jgpestana opened this issue Aug 31, 2017 · 5 comments

Comments

@jgpestana
Copy link

Hello:

I'm using imsdroid as SIP client for an android app that connects with Asterisk. It works perfectly for Android 5, but when I try in a device with Android 7 (for instance: Samsung S8) crashes inmediatally after login. I had to downgrade api target from 23 to 22 to solve the login problem, but others appears:

  1. /lib/arm/libtinyWRAP_neon.so has text relocations
  2. Call disconnections between client and Asterisk

I saw the following post in Duobango's mailing list:

"Using latest source code, you just need to build the libraries using 'commercial' target instead of 'gpl'. This will disable ffmpeg (replaced with libyuv) and x264 (replaced with openh264). These libraries introduce the relocation attributes"

After read it, I applied the solution: build source code using commercial target. However, when i tested the binaries in my app i got exactly the same poblems (1 and 2). May you help me to solve this issues?

Thanks in advance.

@linjiansheng
Copy link

@jgpestana
1, build source code using commercial target
2, update webrtc lib

@Capotasto
Copy link

@jgpestana Hi, I have the same issue now. Did you solve it?

@linjiansheng
For build source code using commercial target, I have a problem with the build same as below.

DoubangoTelecom/doubango#505

How do I fix this?

@linjiansheng
Copy link

linjiansheng commented Dec 22, 2017

@Capotasto I'm sorry for the late reply.
1, Follow DoubangoTelecom/doubango@e58bfcd , configure failed with webrtc, config.log:

ld: warning: skipping incompatible doubango/thirdparties/android/armv7-a-neon/lib/dist/libaudio_processing.a
ld: warning: skipping incompatible doubango/thirdparties/android/armv7-a-neon/lib/dist/libaudio_processing.a

This tell libaudio_processing.a is not armv7a-neon.

cd doubango/thirdparties/android/armv7-a-neon/lib/dist
arm-linux-androideabi-readelf -h ./libaudio_processing.a
 File: ./libaudio_processing.a(libaudio_processing_la-aec_core.o)
ELF Header:
  Magic:   7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00
  Class:                             ELF64
  Data:                              2's complement, little endian
  Version:                           1 (current)
  OS/ABI:                            UNIX - System V
  ABI Version:                       0
  Type:                              REL (Relocatable file)
  Machine:                           Advanced Micro Devices X86-64
  Version:                           0x1
  Entry point address:               0x0
  Start of program headers:          0 (bytes into file)
  Start of section headers:          30288 (bytes into file)
  Flags:                             0x0
  Size of this header:               64 (bytes)
  Size of program headers:           0 (bytes)
  Number of program headers:         0
  Size of section headers:           64 (bytes)
  Number of section headers:         15
  Section header string table index: 12

@DoubangoTelecom webrtc lib(include armv5te, armv7-a, armv7a-neon) is X86-x64, Hope to update ~

2, I try to build DoubangoTelecom/webrtc-audioproc, delete '-fPIC"' in configure.ac, and copy libaudio_processing.a, libcommon_audio.a, libsystem_wrappers.a to doubango/thirdparties/android.
rebuild doubango, the result is armv7-a-neon and x86 has text relocations.
maybe assembly code introduce text relocations, update the webrtc version will be solved.

3, DoubangoTelecom/doubango#486 , reset webrtc lib to the old version a6e8cd78927b8a2115c051c9ce574241474a6ea4,
and copy from armv7-a to replace armv7-a-neon.

4, disable webrtc, and use built-in AEC (NgnProxyAudioProducer.java)

@MahendranB
Copy link

Just change your target version to 22 it will work perfect

@behelit
Copy link

behelit commented Mar 19, 2018

@MahendranB that's not suitable as you now have to target at least 26 to publish to Google Play

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

No branches or pull requests

5 participants