Может помочь мне.Я попытался реализовать библиотеку Android в Nativescript.
Я создаю проект Android -> Новый модуль -> Библиотека Andorid.
Создание класса Java платформы \ android \ nativescript-serial-port \ serialport\ src \ main \ java \ com \ nativescript \ serialport \ Toaster.java
package com.nativescript.serialport;
import android.content.Context;
import android.widget.Toast;
public class Toaster {
public Toaster() {}
public void show(Context context) {
Toast.makeText(context, "Hello NativeScript!", Toast.LENGTH_SHORT).show();
}
}
Добавить в файл nativescript проекта платформы \ android \ settings.gradle
include ':app', ':serialport'
project(':serialport').projectDir = new File('nativescript-serial-port/serialport')
Добавить в файл nativescript app app \ App_Resources \ Android \ app.gradle
dependencies {
implementation project(":serialport")
}
Добавить в JS-файл nativescript project some-file.js
import * as app from 'application';
const context = android.content.Context;
const toaster = new com.nativescript.serialport.Toaster();
toaster.show(context);
И если я запускаю этот код, появляется ошибка
System.err: TypeError: com.nativescript.serialport.Toaster не является конструктором System.err: File:"file: ///data/data/org.nativescript.application/files/app/bundle.js, строка: 372, столбец: 22 System.err: System.err: StackTrace: System.err: Frame: function: 'onPrint ', file:' file: ///data/data/org.nativescript.application/files/app/bundle.js ', строка: 372, столбец: 23 System.err: Frame: function: 'invoker', file: 'file: ///data/data/org.nativescript.application/files/app/vendor.js', строка: 4168, столбец: 18 System.err: Frame: function: 'Observable.notify ', file:' file: ///data/data/org.nativescript.application/files/app/vendor.js ', строка: 17698, столбец: 15 System.err: Frame: function:' Observable._emit ', file:' file: ///data/data/org.nativescript.application/files/app/vendor.js ', строка: 17726, столбец: 12 System.err: Frame: function:' ClickListenerImpl.onClick ', файл: 'file: ///data/data/org.nativescript.application/files/app/vendor.js', строка: 29193, столбец: 15 System.err: System.err: at com.tns.Runtime.callJSMethodNative (собственный метод) System.err: в com.tns.Runtime.dispatchCallJSMethodNative (Runtime.java:1120) System.err: в com.tns.Runtime.callJSMethodImpl (Runtime.java:1000) System.err: в com.tns.Runtime.callJSMethod (Runtime.java:987) System.err: в com.tns.Runtime.callJSMethod (Runtime.java:967) System.err: в com.tns.Runtime.callJSMethod (Runtime.java:959)System.err: на com.tns.gen.java..java: 6574) System.err: на android.view.View.access $ 3100 (View.java:778) System.err: на android.view.View $ PerformClick.run (View.java:25885) System.err:на android.os.Handler.h andleCallback (Handler.java:873) System.err: на android.os.Handler.dispatchMessage (Handler.java:99) System.err: на android.os.Looper.loop (Looper.Java: 193) System.err: на android.app.ActivityThread.main (ActivityThread.java:6669) System.err: на java.lang.reflect.Method.invoke (собственный метод) System.err: на com.android.internal.os.RuntimeInit $ MethodAndArgsCaller.run (RuntimeInit.java:493) System.err: at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:858)
Как исправитьэта ошибка.Спасибо