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

x/mobile/example/audio: build on windows system,run CRASH #12514

Open
DoraemonYu opened this issue Sep 5, 2015 · 11 comments

Comments

@DoraemonYu
Copy link

commented Sep 5, 2015

Hello.
I am using gomobile in Windows System.
When build the example named "Audio",it is successful.Howevery,when run it on the Genymotion virtual device and a true Android device, the application is crashed the same.
After the debug, something I found:

  • I can find the error message from logcat, it show this:
I/GoLog   ( 9589): al: cannot load libopenal.so 
  • Additionally, I try to delete code line, then I am sure this code (in onStart function) throw this error:
rc, err := asset.Open("boing.wav") 

Is someone get the same error when running the example of "Audio" ?


I am not sure is this the issues from gomobile,or other reason?
However, as a new developer who use gomobile to build android apps,I read the document from:
https://godoc.org/golang.org/x/mobile/example/audio
It tell me just to use "gomobile build".
Additionally, I notice the message about:

On Linux, you need to install OpenAL developer library by running the command below. 
$ apt-get install libopenal-dev

However, on Windows, do I need to do something similarly?
If the GoDoc could write down it more clearly, we walked some detours can be avoided. :)


I am using the newest gomobile package and keep to update everyday.
So everything is newest when this problem was happended.
Thank you sincerely.

@DoraemonYu DoraemonYu changed the title x/mobile/example/audio: Crash, due to the error "al: cannot load libopenal.so" x/mobile/example/audio: build on windows system,run CRASH. due to the error "al: cannot load libopenal.so" Sep 6, 2015

@DoraemonYu DoraemonYu changed the title x/mobile/example/audio: build on windows system,run CRASH. due to the error "al: cannot load libopenal.so" x/mobile/example/audio: build on windows system,run CRASH Sep 6, 2015

@DoraemonYu

This comment has been minimized.

Copy link
Author

commented Sep 6, 2015

Hi,everyone.
I try to reinstall my gomobile environment ,then the log of "al: cannot load libopenal.so" was disappeared. But the crash problem is still exist.


First of all, about the "al: cannot load libopenal.so".
I compared two APK files between my and other developer's , and found it's different, the former lost the target file "lib\armeabi\libopenal.so".
After check carefully and redo gomobile init -u again and bulid, then now my apk can include the expectant file now.

So sorry for my development environment.
Due to my network , I cannot access "dl.google.com" ,so "gomobile init" download files failed! Then, when build android , it seems that no include the "libopenal.so" file.
By the way, if it download failed, can gomobile show some conspicuous error message? thanks :)   If someone was in the same trouble, try to check and re-get gomobile.


Now , the crash is still exist. It seems that is due to a error "Fatal signal 11".
And the log was follow( the log is so long, search the keyword named "!!! Here" please ):

I/ActivityManager(  834): Start proc org.golang.todo.audio for activity org.golang.todo.audio/org.golang.app.GoNativeI/ActivityManager(  834): Start proc org.golang.todo.audio for activity org.golang.todo.audio/org.golang.app.GoNativeActivity: pid=3966 uid=10059 gids={50059}
I/dalvikvm( 3966): Enabling JNI app bug workarounds for target SDK version 9...
D/dalvikvm( 3966): Trying to load lib /data/app-lib/org.golang.todo.audio-2/libaudio.so 0xa4f81980
D/dalvikvm( 3966): Trying to load lib /data/app-lib/org.golang.todo.audio-2/libaudio.so 0xa4f81980
D/houdini ( 3966): [3966] Loading library(version: 2.0.5.42475 RELEASE)... successfully.
D/houdini ( 3966): [3966] Loading library(version: 2.0.5.42475 RELEASE)... successfully.
D/dalvikD/dalvikvm( 3966): Added shared lib /data/app-lib/org.golang.todo.audio-2/libaudio.so 0xa4f81980
D/MobileDataStateTracker(  834): default: setPolicyDataEnable(enabled=true)
V/PhoneStatusBar(  890): setLightsOn(true)
D/houdini ( 3966): [3966] Loading library(version: 2.0.5.42475 RELEASE)... successfully.

----------- !!! Here Begin-----------
D/houdini ( 3966): [3966] Loading library(versioD/houdini ( 3966): [3979] Unsupported feature .
F/libc    ( 3966): Fatal signal 11 (SIGSEGV) at 0xdead0000 (code=1), thread 3979 (lang.todo.audio)
----------- !!! Here End-----------

I/DEBUG   (  147): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
I/DEBUG   (  147): Build fingerprint: 'generic/vbox86p/vbox86p:4.4.4/KTU84P/eng.buildbot.20150610.102145:userdebug/test-keys'
I/DEBUG   (  147): Revision: '0'
* *** *** *** *** *** *** *** *** *** *** *** ***
I/DEBUG   (  147): Build fingerprint: 'geneI/DEBUG   (  147): pid: 3966, tid: 3979, name: lang.todo.audio  >>> org.golang.todo.audio <<<
  147): Revision: '0'
I/DEBUG   (  147): pid: 3966, tid: 3979, name: lang.todo.audio  >>> org.I/DEBUG   (  147): signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr dead0000
I/DEBUG   (  147):     eax 00000fff  ebx 00000001  ecx 95530bfc  edx 000000e0
I/DEBUG   (  147):     esi 00000008  edi 9514fc18
I/DEBUG   (  147):     xcs 00000073  xds 0000007b  xes 0000007b  xfs 00000043  xss 0000007b
I/DEBUG   (  147):     eip 952da530  ebp 9514fb78  esp 9514fb30  flags 00210202
I/DEBUG   (  147): 
I/DEBUG   (  147): backtrace:
bp 9514fb78  esp 9514fb30  flags 00210202
I/DEBUG   (  147): 
I/DEBI/DEBUG   (  147):     #00  pc 00086530  /system/lib/libhoudini.so
system/lib/libhoudini.so
I/DEBUG   (  147):     #01  pc 0008b5d4  /I/DEBUG   (  147):     #01  pc 0008b5d4  /system/lib/libhoudini.so
I/DEBUG   (  147):     #02  pc 0008b6a1  /system/lib/libhoudini.so
I/DEBUG   (  147):     #03  pc 00089c63  /system/lib/libhoudini.so
I/DEBUG   (  147):     #04  pc 00087bbc  /system/lib/libhoudini.so
I/DEBUG   (  147):     #05  pc 00087c01  /system/lib/libhoudini.so
I/DEBUG   (  147):     #04  pc 00087bbc  /system/lib/libhoudini.so
I/DEBUG   (  147):     #05  pc 00087c01  /system/lib/libhoudini.so
I/DEBUG   (  147):     #06  pc 00087f73  /system/lib/libhoudini.so
I/DEBUG   (  147):     #07  pc 0000bc7c  /system/lib/libc.so (__thread_entry+236)
I/DEBUG   (  147):     #08  pc 0003e295  /system/lib/libc.so (__pthread_clone+69)
I/DEBUG   (  147):     #09  pc 00087f2f  /system/lib/libhoudini.so
I/DEBUG   (  147):     #10  pc ffffffff  <unknown>
I/DEBUG   (  147I/DEBUG   (  147):     #11  pc 00001a77  [heap]
so
I/DEBUG   (  147):     #12  pc 00048527  [heap]
I/DEBUG   (  147):     #13  pc 000478cf  [heap]
I/DEBUG   (  147):     #14  pc 00047377  [heap]
p]
I/DEBUG   (  147):     #13  pc 000478cf  [heaI/DEBUG   (  147):     #15  pc 00046ab7  [heap]
I/DEBUG   (  147):     #14  pc 00047377  [heap]
I/DEBUG   (  147):     #16  pc 000257e7  [heap]
I/DEBUG   (  147):     #17  pc 0004c71f  [heap]
I/DEBUG   (  147):     #18  pc 0000e9c7  [heap]
I/DEBUG   (  147):     #19  pc 000261df  [heap]
I/DEBUG   (  147):     #19  pc 000261df  [heapI/DEBUG   (  147): 
I/DEBUG   (  147): stack:
I/DEBUG   (  147):          9514fd40  00000001  
I/DEBUG   (  147):          9514fd44  9514fdc0  [stack:3979]
I/DEBUG   (  147):          9514fd48  b76eafcc  /system/lib/libc.so
I/DEBUG   (  147):          9514fd4c  94000220  
I/DEBUG   (  147):          9514fd50  940003d4  
I/DEBUG   (  147):          9514fd54  b9245a78  [heap]
I/DEBUG   (  147):          9514fd58  9514fd78  [stack:3979]
I/DEBUG   (  147):          9514fd5c  952dbf74  /system/lib/libhoudini.so
I/DEBUG   (  147):          9514fd60  9552c9a0  
I/DEBUG   (  147):          9514fd64  00000000  
I/DEBUG   (  147):          9514fd68  b765cda9  /system/lib/libc.so (pthread_mutex_lock+9)
I/DEBUG   (  147):          9514fd6c  b76eafcc  /system/lib/libc.so
(pthread_mutex_lock+9)
I/DEBUG   (  147):          9514fd6c  b76eafcI/DEBUG   (  147):          9514fd70  b76eafcc  /system/lib/libc.so
I/DEBUG   (  147):          9514fd74  9514fdd0  [stack:3979]
I/DEBUG   (  147):          9514fd78  b9245a78  [heap]
I/DEBUG   (  147):          9514fd7c  b765ac7d  /system/lib/libc.so (__thread_entry+237)
I/DEBUG   (  147):     #07  9514fd80  94000220  
I/DEBUG   (  147):          9514fd84  00000000  
I/DEBUG   (  147):          9514fd88  00000003  
I/DEBUG   (  147):          9514fd8c  00000022  
I/DEBUG   (  147):          9514fd90  00000000  
I/DEBUG   (  147):          9514fd94  00000000  
I/DEBUG   (  147):          9514fd98  00000000  
I/DEBUG   (  147):          9514fd9c  00000000  
I/DEBUG   (  147):          9514fda0  00000000  
I/DEBUG   (  147):          9514fda4  9504e000  
I/DEBUG   (  147):          9514fda8  00000000  
I/DEBUG   (  147):          9514fdac  00002000  
I/DEBUG   (  147):          9514fdb0  00050f00  
I/DEBUG   (  147):          9514fdb4  9514fdd0  [stack:3979]
I/DEBUG   (  147):          9514fdb8  95050000  
I/DEBUG   (  147):          9514fdbc  b768d296  /system/lib/libc.so (__pthread_clone+70)
I/DEBUG   (  147):     #08  9514fdc0  952dbf30  /system/lib/libhoudini.so
I/DEBUG   (  147):          9514fdc4  94000220  
I/DEBUG   (  147):          9514fdc8  9514fdd0  [stack:3979]
I/DEBUG   (  147):          9514fdcc  00000000  
I/DEBUG   (  147):          9514fdd0  9514fdd0  [stack:3979]
I/DEBUG   (  147):          9514fdd4  b9245a78  [heap]
I/DEBUG   (  147):          9514fdd8  00000000  
I/DEBUG   (  147):          9514fddc  00000000  
I/DEBUG   (  147):          9514fde0  00000000  
I/DEBUG   (  147):          9514fd9c  00000000  
I/DEBUG   (  147):          9514fda0  00000000  
I/DEBUG   (  147):          9514fda4  9504e000  
I/DEBUG   (  147):          9514fde4  cfb4d1c6  
I/DEBUG   (  147):          9514fde8  00000000  
I/DEBUG   (  147):          9514fdec  00000000  
I/DEBUG   ( I/DEBUG   (  147):          9514fdf0  00000000  
I/DEBUG   (  147):          9514fdf4  00000000  
I/DEBUG   (  147):          9514fdbc  b7I/DEBUG   (  147):          9514fdf8  00000000  
I/DEBUG   (  147):     #0I/DEBUG   (  147):          9514fdfc  00000000  
I/DEBUG   (  147):          9514fdc4  94000220  
I/DEBUG   ( I/DEBUG   (  147): 
I/DEBUG   (  147): memory map around fault addr dead0000:
I/DEBUG   (  147):     bfee2000-bff03000 rw- [stack]
I/DEBUG   (  147):     (no map for address)
[stack:3979]
I/DEBUG   (  147):          9514fdd4  b9245a78  [heap]
I/DEBUG   (  147):          9514fdd8  00000000  
I/DEBUG   (  147):          9514fddc  00000000  
I/DEBUG   (  147):          9514fde0  00000000  
I/DEBUG   (  147):          9514fde4  cfb4d1c6  
I/DEBUG   (  147):          9514fde8  00000000  
I/DEBUG   (  147):          9514fdec  00000000  
I/DEBUG   (  147):          9514fdf0  00000000  
I/DEBUG   (  147):          9514fdf4  00000000  
I/DEBUG   (  147):          9514fdf8  00000000  
I/DEBUG   (  147):          9514fdfc  00000000  
I/DEBUG   (  147): 
I/DEBUG   (  147): memory map around fault addr dead0000:
I/DEBUG   (  147):     bfee2000-bff03000I/DEBUG   (  147):     (no map above)
o map for address)
I/DEBUG   (  147): I/BootReceiver(  834): Copying /data/tombstones/tombstone_06 to DropBox (SYSTEM_TOMBSTONE)
I/BootReceiver(  834): Copying /data/tombstones/tombstone_06 to DropBox (SYSTEM_TOMBSTONE)
W/ActivityManager(  834):   Force finishing activity org.golang.todo.audio/org.golang.app.GoNativeActivity
W/ActivityManager(  834):   Force finishing activity org.golang.todo.audio/org.golang.app.GoNativeActivity
D/Zygote  (  496): Process 3966 terminated by signal (11)
I/WindowManager(  834): Screenshot max retries 4 of Token{528f3038 ActivityRecord{52995b18 u0 org.golang.todo.audio/org.golang.app.GoNativeActivity t27 f}} appWin=Window{5293a168 u0 Starting org.golang.todo.audio} drawState=4
W/WindowManager(  834): Screenshot failure taking screenshot for (480x854) to layer 21040
I/WindowManager(  834): Screenshot max retries 4 of Token{528f3038 ActivityRecord{52995b18 u0 org.golang.todo.audio/org.golang.app.GoNativeActivity t27 f}} appWin=Window{5293a168 u0 Starting org.golang.todo.audio} drawState=4
W/WindowManager(  834): Screenshot failure taking screenshot for (480x854) to layer 21040
W/ActivityManager(  834): Exception thrown during pause
W/ActivityManager(  834): android.os.DeadObjectException
W/ActivityManager(  834):   at android.os.BinderProxy.transact(Native Method)
W/ActivityManager(  834):   at android.app.ApplicationThreadProxy.schedulePauseActivity(ApplicationThreadNative.java:660)
W/ActivityManager(  834):   at com.android.server.am.ActivityStack.startPausingLocked(ActivityStack.java:761)
W/ActivityManager(  834):   at com.android.server.am.ActivityStack.finishActivityLocked(ActivityStack.java:2443)
W/ActivityManager(  834):   at com.android.server.am.ActivityStack.finishTopRunningActivityLocked(ActivityStack.java:2320)
W/ActivityManager(  834):   at com.android.server.am.ActivityStackSupervisor.finishTopRunningActivityLocked(ActivityStackSupervisor.java:2050)
W/ActivityManager(  834):   at com.android.server.am.ActivityManagerService.handleAppCrashLocked(ActivityManagerService.java:9548)
W/ActivityManager(  834):   at com.android.server.am.ActivityManagerService.makeAppCrashingLocked(ActivityManagerService.java:9441)
W/ActivityManager(  834):   at com.android.server.am.ActivityManagerService.crashApplication(ActivityManagerService.java:10086)
W/ActivityManager(  834):   at com.android.server.am.ActivityManagerService.handleApplicationCrashInner(ActivityManagerService.java:9637)
W/ActivityManager(  834):   at com.android.server.am.NativeCrashListener$NativeCrashReporter.run(NativeCrashListener.java:86)
I/ActivityManager(  834): Process org.golang.todo.audio (pid 3966) has died.

Thank you sincerely.

@rakyll rakyll self-assigned this Sep 8, 2015

@rakyll

This comment has been minimized.

Copy link
Member

commented Sep 8, 2015

Due to my network , I cannot access "dl.google.com" ,so "gomobile init" download files failed! Then, when build android , it seems that no include the "libopenal.so" file.

Could you file a different bug with the steps to produce this case, please? It is a fatal case and must be fixed.

Could you share details about your test device -- brand, model, Android version and similar? The audio package is currently tested only on ARM devices. As far as I can see, you have an x86 device with ARM emulation.

/cc @crawshaw

@DoraemonYu

This comment has been minimized.

Copy link
Author

commented Sep 9, 2015

o(∩_∩)o Hi, rakyll. Thank you for your reply.

My test device

  • [A true device]. Nokia N1. Android version is 5.1.1.
  • [A Simulator]. Genymotion. Android version is 4.4.4.

Mmm, yes, they are both the x86 architecture.
First one can run ARM app because of the Built-in ARM-translate;
Second one can run as well because of the support from "Genymotion-ARM-Translation_v1.1".
The "x86" maybe the important similar point between them.

Lost the "libopenal.so" file

The reproduce step is simple:
go get golang.org/x/mobile/cmd/gomobile
gomobile init
cmd.exe -> "cd /d" to the audio example directory,then:
gomobile bulid

I feel sorry that the network limit us to access the "*.Google.com".We have to modify the HOSTS file frequently or use vpn to access it .
Few days ago, I unzip the apk file, and found no "libopenal.so" file.
I forgot to check the files in "GoPath\pkg\gomobile" at that time.But I only compare the directory "GoPath" and found that the size is smaller, smaller than after "Make computer can assess *.google.com again, then redo 'gomobile init -v' "

I file a different bug with the quick reproduce steps,click the link here please: #12550


Thank you sincerely :)

@rakyll

This comment has been minimized.

Copy link
Member

commented Sep 9, 2015

Open AL is known to have problems before Genymotion v2.10. The crash is happening during libopenal.so is being loaded, not particularly because of the Go runtime or Go packages. Is it possible for you to update to a relatively newer version of Genymotion?

@DoraemonYu

This comment has been minimized.

Copy link
Author

commented Sep 10, 2015

Thanks rakyll.
My version of Genymotion is newest one (v2.5.3, released on 2015-07-29 ).
Mmm... I will try to install other applications which use Open AL as well, to see they could run on my test devices well or not.


Thank you sincerely :)

@DoraemonYu

This comment has been minimized.

Copy link
Author

commented Sep 13, 2015

run other apps on my test device

I did not known which android game or app is used OpenAL. So these few days, I try to search and test different apks.
As a result, I only found one apk is also use openAL library and can found "libopenal.so" in it as well.
(download link: github.com/gjtorikian/Shmup-for-Android/blob/master/Android/bin/TouchpadNAActivity-debug.apk )

This debug apk crash due to other problem, but in the message of logcat, I could see that it seems can run OpenAL well.

I/ActivityManager(  463): Start proc com.miadzin.shmup for activity com.miadzin.shmup/.TouchpadNAActivity: pid=4173 uid=10079 gids={50079, 3003, 1015, 1028}
I/dalvikvm( 4173): Turning on JNI app bug workarounds for target SDK version 9...
D/dalvikvm( 4173): Trying to load lib /data/app-lib/com.miadzin.shmup-1/libopenal.so 0xa4e785c0
D/houdini ( 4173): [4173] Loading library(version: 3.2.1.43093 RELEASE)... successfully.
D/dalvikvm( 4173): Added shared lib /data/app-lib/com.miadzin.shmup-1/libopenal.so 0xa4e785c0
D/dalvikvm( 4173): Trying to load lib /data/app-lib/com.miadzin.shmup-1/libshmup.so 0xa4e785c0
D/dalvikvm( 4173): Added shared lib /data/app-lib/com.miadzin.shmup-1/libshmup.so 0xa4e785c0
load lib /data/app-lib/com.miadzin.shmup-1/libshmup.so 0xa4e785c0
D/dalvikvm( 4173): Added shared lib /data/app-liD/dalvikvm( 4173): No JNI_OnLoad found in /data/app-lib/com.miadzin.shmup-1/libshmup.so 0xa4e785c0, skipping init
xxxxx other message xxxxx
I/libshmup( 4173): [OpenAL] Context succesfully initialized.
I/libshmup( 4173): [OpenAL] Context succesfully initialized.

The last two message of the log above, [OpenAL] Context succesfully initialized, it is not printed when run "audio example" apk, but run this debug apk.

new result build with newest gomobile

I update newest gomobile yesterday. Now, audio example will NOT CRASH! But also have NO any SOUND.
It's so strange. By the history of commiting, I cannot found some adjustments related the old crash problem. I saved the two apk which is build with different gomobile version:
[build on 2015-09-05]
https://drive.google.com/file/d/0BwkL4cu4Uw1XOWxENUhJNzFQMVE/view?usp=sharing
[build on 2015-09-13]
https://drive.google.com/file/d/0BwkL4cu4Uw1XOHNKNzQ5azB0SGM/view?usp=sharing

The audio_20150905.apk will crash,messages of logcat is already writed down above the comment ;
The audio_20150913.apk will not crash, but have no any sound.

Is it in arm device, the audio example is still everything ok with newest gomobile ?


Thank you sincerely :)

@rakyll

This comment has been minimized.

Copy link
Member

commented Sep 14, 2015

I was not able to test it with an x86 Android device yet, so still cannot reproduce and give you more details. The non-deterministically of the crash looks like there are other possible problems you have spotted.

The OpenAL loading strategy we use (https://github.com/golang/mobile/blob/master/exp/audio/al/al_android.go#L25), is looking under /data/data/<pkg>/lib/libopenal.so which doesn't seem to be canonical path to look for for your device.

The log above lists /data/app-lib/com.miadzin.shmup-1/libX.so (/data/app-lib/-1/libname) as the location of the shared libraries. Can you list the libraries under /data/app-lib/org.golang.todo.audio using adb shell? It doesn't explain the no sound and libhoudini crashes, but I need to rule out other possible fatalities.

(Note: OpenAL loading strategy we use is immature and not well tested across different devices, we should rather invoke System.loadLibrary through JNI or replicate its behavior.)

@rakyll

This comment has been minimized.

Copy link
Member

commented Sep 14, 2015

As a side note, the audio sample works on every ARM device I have. Our current support is pretty limited and primarily focused on the mainstream (and canonical development devices) such as Nexus devices.

@DoraemonYu

This comment has been minimized.

Copy link
Author

commented Sep 15, 2015

Hi , @rakyll :)

Libraries

As the result of adb shell ls /data/app-lib/org.golang.todo.audio ,I got these list as follow.

  • [audio_20150905.apk]
    libaudio.so
  • [audio_20150913.apk]
    libaudio.so
    libopenal.so

Then I use a root explorer to check /data/data/org.golang.todo.audio/lib/ and /data/app-lib/org.golang.todo.audio again, the result is same as above.

Mmm... I unzip the 'audio_20150905.apk' and found the 'libopenal.so' file in it, but after be installed it 's not in lib directory. It is the key case crash?
Additionally, I have on idea which commiting make 'audio_20150913.apk' different between these few days.

@rakyll

This comment has been minimized.

Copy link
Member

commented Sep 15, 2015

Thanks for the details.

Mmm... I unzip the 'audio_20150905.apk' and found the 'libopenal.so' file in it, but after be installed it 's not in lib directory. It is the key case crash?

It is the crash case. The audio might be buggy for looking under /data/data/org.golang.todo.audio/lib/. I will switch to System.loadLibrary rather than dlopen'ing myself with that particular path. If Android prefers to install the libraries somewhere else, the SDK should know where to load them from.

I don't have much context why there is no sound in the arm-emulating device yet though.

@rsc rsc added this to the Unreleased milestone Oct 23, 2015

@damti

This comment has been minimized.

Copy link

commented Jan 22, 2016

just for your reference/information:
I stepped onto the same problem DoraemonYu reported in its initial bug report the day before yesterday:
audio example app crashing on an arm based emulator and on a Samsung Galaxy Tab E Wifi + the following message in the log:
I/GoLog ( 9589): al: cannot load libopenal.so
examining the apk using aapt l audio.apk showed libopenal.so being placed into lib/arm/libopenal.so in the apk, whereas libaudio.so was placed into lib/armeabi-v7a/libaudio.so. I think the problem with this was not, that libopenal.so was then installed in a different place on the devices but rather that it was not installed at all. Modifying some code in golang.org/x/mobile/cmd/gomobile/build_androidapp.go, I could force-move libopenal.so into lib/armeabi-v7a as well, which made the two .so-files install in the same place on the device. The app work perfectly then. I planned to file an issue about this but noticed that the commit at [https://github.com/golang/mobile/commit/e7f16ac590465f5cefa43feb920df4cbfc1c0e6a] was checked in just a few hours ago and contained modifications of the code that I also worked on. Updating to the recent code from the repository thus fixed the problem for me.

So basically, the original loading strategy you mentioned in the comment above [https://github.com//issues/12514#issuecomment-140202336] might well be correct, as long as you can make sure that libaudio.so and libopenal.so end up in the same directory in the apk (and then, consequently, on the device). I think the code commit mentioned above does just that, so might close this issue as well. On the contrary, using System.loadLibrary might lead to other issues, like having to make sure that nativeLibraryPath/Directory contains the correct values or mistakenly loading an incompatible library version from another place, isn't it?

Regards,
damti

@gopherbot gopherbot added the mobile label Jul 20, 2017

@bradfitz bradfitz added the OS-Windows label Nov 21, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
6 participants
You can’t perform that action at this time.