[BRLTTY] Brlapi on Android

Peter Lecky peter.lecky at stopka.sk
Wed Apr 3 07:18:21 EDT 2024


Hello to all again,

I tried to compile older sources, concretely version 6.4 and it works as 
expected with that one line tweak in common.mk file.

So it seems for now, that Android bindings in master branch are broken 
for now. And it is perfectly enough to enforce build sistem to produce 
libraries without version suffix to have working library with older 
stable versions.

Peter

On 3. 4. 2024 11:40, Peter Lecky wrote:
> 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