[BRLTTY] Brlapi on Android

Peter Lecky peter.lecky at stopka.sk
Wed Apr 3 05:40:34 EDT 2024


Good morning,

I made some progress with this, but still do not have working library, 
so please, if someone has any idea what to do, then let me know.

I made my own build from latest source (master branch). I changed 
common.mk, to have libraries without version suffix. More concretely, i 
changed line

API_LIB_VERSIONED = $(API_LIB).$(API_VERSION)

to

API_LIB_VERSIONED = $(API_LIB)

And then

make clean

cfg-android -a arm64-v8a

make

I manually added resulting libraries and jar archive to my project and 
successfully compiled.

I can now properly load library, but with another kind of crash.

Testing with this code in onclick method on one button:

ConnectionBase cb=null;

try {
     cb=new ConnectionBase(new ConnectionSettings());
     Shares.I.mTTS.say((cb==null)?"null":"have instance"+cb.getModelIdentifier());
}catch(Exception e) {}
And it crashes whole virtual machine with this in log (removing timestamp to make it readable ;)):
  AndroidRuntime: FATAL EXCEPTION: main
  AndroidRuntime: Process: xx.xx.xx, PID: 13299
  AndroidRuntime: connect: No such file or directory
  AndroidRuntime: 	at org.a11y.brlapi.ConnectionBase.openConnection(Native Method)
  AndroidRuntime: 	at org.a11y.brlapi.ConnectionBase.<init>(ConnectionBase.java:43)
  AndroidRuntime: 	at xx.xx.xx.UIMainScreen.onBatteryClick(UIMainScreen.java:497)
Please, let me know if someone has any ideas
Thank you
Peter

On 28. 3. 2024 14:07, Peter Lecky wrote:
> Good afternoon to all,
>
> I am trying to use brlapi library for android in the project. I found 
> this page:
>
> https://brltty.app/android.html
>
> There is a older build of brlapi library which i am trying to use. I 
> used repository mentioned on that page and successfully compiled my 
> project, but my app crashes during initialization of the library with 
> this error:
>
>>  AndroidRuntime: FATAL EXCEPTION: main
>>  AndroidRuntime: Process: xxx.xxx.xxx, PID: 29870
>>  AndroidRuntime: java.lang.UnsatisfiedLinkError: dlopen failed: 
>> library "libbrlapi.so.0.8" not found: needed by 
>> /data/app/~~YB-_ApEJ6BKmHFGYgcO1CQ==/xxx.xxx.xxx-YTdxhFskgX0ZhCxZbEwOhw==/base.apk!/lib/arm64-v8a/libbrlapi_java.so 
>> in namespace clns-5
>>  AndroidRuntime:     at 
>> java.lang.Runtime.loadLibrary0(Runtime.java:1082)
>>  AndroidRuntime:     at 
>> java.lang.Runtime.loadLibrary0(Runtime.java:1003)
> It seems that libbrlapi_java library tryes to load libbrlapi.so with 
> version suffix (initialization crashes because file "libbrlapi.so.0.8" 
> is missing) but compiled apk contains libbrlapi.so without version 
> suffix.
>
> I tryed to fetch all required files and added libs manually. Tryed to 
> rename brlapi.so to brlapi.so.0.8, but it seems that the package 
> manager does not support fformats other than something.so.
>
> Can someone help please?
>
> With best and thanks
>
> Peter
>
-- 
Peter Lecký Stopka n. o.


More information about the BRLTTY mailing list