Как исправить ошибку импорта «android.support.v4.content.LocalBroadcastManager» при создании реактивного пакета и MqttSeAndroid

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Как исправить ошибку импорта «android.support.v4.content.LocalBroadcastManager» при создании реактивного пакета и MqttSe

Сообщение Anonymous »


Как исправить ошибку импорта «android.support.v4.content.LocalBroadcastManager» в классе MqttService.java в Jetpack Compose. Я пытаюсь работать с mqtt и android, но у меня возникает эта ошибка

Вот мой манифест:

build.gradle.kts:

плагины { идентификатор("com.android.application") id("org.jetbrains.kotlin.android") } андроид { пространство имен = "com.example.teste" компилироватьSdk = 34 defaultConfig { applicationId = "com.example.teste" минСдк = 21 цельСдк = 34 Код версии = 1 имя_версии = "1.0" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" векторDrawables { useSupportLibrary = правда } } типы сборки { выпускать { isMinifyEnabled = ложь proguardFiles( getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro" ) } } компиляцияварианты { sourceCompatibility = JavaVersion.VERSION_1_8 targetCompatibility = JavaVersion.VERSION_1_8 } котлинОпции { jvmTarget = "1,8" } buildFeatures { составить = правда } composeOptions { kotlinCompilerExtensionVersion = "1.4.3" } упаковка { Ресурсы { исключает += "/META-INF/{AL2.0,LGPL2.1}" } } } зависимости { реализация("androidx.core:core-ktx:1.12.0") реализация("androidx.lifecycle:lifecycle-runtime-ktx:2.6.2") реализация("androidx.activity:activity-compose:1.8.2") реализация(платформа("androidx.compose:compose-bom:2023.03.00")) реализация("androidx.compose.ui:ui") реализация("androidx.compose.ui:ui-graphics") реализация("androidx.compose.ui:ui-tooling-preview") реализация("androidx.compose.material3:material3") testImplementation("junit:junit:4.13.2") androidTestImplementation("androidx.test.ext:junit:1.1.5") androidTestImplementation("androidx.test.espresso:espresso-core:3.5.1") androidTestImplementation(platform("androidx.compose:compose-bom:2023.03.00")) androidTestImplementation("androidx.compose.ui:ui-test-junit4") debugImplementation("androidx.compose.ui:ui-tooling") debugImplementation("androidx.compose.ui:ui-test-manifest") реализация("org.eclipse.paho:org.eclipse.paho.client.mqttv3:1.2.5") реализация("org.eclipse.paho:org.eclipse.paho.android.service:1.1.1") реализация ("androidx.appcompat:appcompat:1.6.1") реализация ("com.google.android.material:material:1.11.0") } ошибка:

в android.app.ActivityThread.main(ActivityThread.java:8058) в java.lang.reflect.Method.invoke (собственный метод) по адресу com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548) на com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1026) Вызвано: java.lang.ClassNotFoundException: не найден класс «android.support.v4.content.LocalBroadcastManager» по пути: DexPathList[[zip file «/data/app/~~JLox8OfsuMwxW3mCVxrEjg==/com.example.teste» --Ik6OrSbSVdnTemMoaxLtg==/base.apk"],nativeLibraryDirectories=[/data/app/~~JLox8OfsuMwxW3mCVxrEjg==/com.example.teste--Ik6OrSbSVdnTemMoaxLtg==/lib/arm64, /system/lib64, /system_ext/lib64 ]] в dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:259) в java.lang.ClassLoader.loadClass(ClassLoader.java:379) в java.lang.ClassLoader.loadClass(ClassLoader.java:312) ... еще 93 класс MQTT:

класс MQTT { частная переменная mqttClient: MqttAndroidClient?=null // ЯРЛЫК сопутствующий объект { const val TAG = "AndroidMqttClient" } весело подключиться (контекст: Контекст) { val serverURI = "tcp://x.x.x.x:1883" mqttClient = MqttAndroidClient(context, serverURI, "go_mqtt_client") mqttClient?.setCallback(объект: MqttCallback { переопределить fun messageArrived(topic: String?, message: MqttMessage?) { Log.d(TAG, «Получить сообщение: ${message.toString()} из темы: $topic») } переопределить fun ConnectionLost(cause: Throwable?) { Log.d(TAG, "Соединение потеряно ${cause.toString()}") } переопределить fun DeliveryComplete(token: IMqttDeliveryToken?) { } }) параметры вал = MqttConnectOptions() пытаться { mqttClient?.connect(options, null, object: IMqttActionListener { переопределить удовольствие onSuccess(asyncActionToken: IMqttToken?) { Log.d(TAG, «Успешное подключение») } переопределить fun onFailure(asyncActionToken: IMqttToken?, исключение: Throwable?) { Log.d(ТЕГ, «Ошибка соединения») } }) } catch (e: MqttException) { е.printStackTrace() } } весело подписаться (тема: String, qos: Int = 1) { пытаться { mqttClient?.subscribe(topic, qos, null, объект: IMqttActionListener { переопределить удовольствие onSuccess(asyncActionToken: IMqttToken?) { Log.d(TAG, «Подписка на $topic») } переопределить fun onFailure(asyncActionToken: IMqttToken?, исключение: Throwable?) { Log.d(TAG, «Не удалось подписаться на $topic») } }) } catch (e: MqttException) { е.printStackTrace() } } весело отписаться(тема: Строка) { пытаться { mqttClient?.unsubscribe(topic, null, object: IMqttActionListener { переопределить удовольствие onSuccess(asyncActionToken: IMqttToken?) { Log.d(TAG, «Отказ от подписки на $topic») } переопределить fun onFailure(asyncActionToken: IMqttToken?, исключение: Throwable?) { Log.d(TAG, «Не удалось отказаться от подписки $topic») } }) } catch (e: MqttException) { е.printStackTrace() } } забавная публикация (тема: String, msg: String, qos: Int = 1, сохранено: Boolean = false) { пытаться { val сообщение = MqttMessage() message.payload = msg.toByteArray() message.qos = qos message.isRetained = сохранено mqttClient?.publish(тема, сообщение, ноль, объект: IMqttActionListener { переопределить удовольствие onSuccess(asyncActionToken: IMqttToken?) { Log.d(TAG, "$msg опубликовано в $topic") } переопределить fun onFailure(asyncActionToken: IMqttToken?, исключение: Throwable?) { Log.d(TAG, «Не удалось опубликовать $msg в $topic») } }) } catch (e: MqttException) { e.printStackTrace() } } весело отключить() { пытаться { mqttClient?.disconnect(null, объект: IMqttActionListener { переопределить удовольствие onSuccess(asyncActionToken: IMqttToken?) { Log.d(ТЕГ, «Отключено») } переопределить fun onFailure(asyncActionToken: IMqttToken?, исключение: Throwable?) { Log.d(TAG, «Не удалось отключиться») } }) } catch (e: MqttException) { e.printStackTrace() } } } класс MainActivity:

класс MainActivity : ComponentActivity() { переопределить удовольствие onCreate(savedInstanceState: Пучок?) { super.onCreate(savedInstanceState) вал mqtt = MQTT() setContent { TesteTheme { // Поверхностный контейнер, использующий цвет фона из темы Поверхность( модификатор = Модификатор.fillMaxSize(), цвет = MaterialTheme.colorScheme.background ) { mqtt.connect(LocalContext.current) mqtt.subscribe("тема/тест") } } } mqtt.publish("тема/тест","Testar") mqtt.disconnect() } } Сервер mqtt go:

основной пакет Импортировать ( "бревно" "Операционные системы" "ОС/сигнал" "системный вызов" "время" mqtt "github.com/mochi-mqtt/server/v2" "github.com/mochi-mqtt/server/v2/hooks/auth" "github.com/mochi-mqtt/server/v2/listeners" ) функция main() { // Создаем канал сигналов для запуска сервера до тех пор, пока он не будет прерван sigs := make(chan os.Signal, 1) готово := make(chan bool, 1) signal.Notify(sigs, syscall.SIGINT, syscall.SIGTERM) иди в функцию() {
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Android»