Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

673
Visualizações
android studio kotlin - bluetooth "HABILITAR SOLICITUD DE ACCIÓN" no funciona

Después de iniciar mi programa, haga clic en el botón, la aplicación se cae. Cuando probé tutoriales de otros desarrolladores, Google, ... no resuelve el problema. Estoy ignorando que startActivityForResult() está en desuso, quiero pedirle al usuario que active el bluetooth, eso es todo.

El problema está en el dispositivo con Android 12.

Aquí está mi permiso del archivo de manifiesto:

 <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> <uses-permission android:name="android.permission.BLUETOOTH_CONNECT" /> <uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>

Aquí está mi código de MainActivity.kt

 package com.example.piratsilnic import android.bluetooth.BluetoothAdapter import android.bluetooth.BluetoothManager import android.content.Context import android.content.Intent import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import android.widget.Button import android.widget.Toast class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) val BTadapter = getSystemService(Context.BLUETOOTH_SERVICE) as BluetoothManager BTadapter.getAdapter() var REQUEST_ENABLE_BT = 1 val sparovatButton = findViewById<Button>(R.id.sparovatButton) sparovatButton.setOnClickListener{ if (BTadapter != null) { if (BTadapter.adapter?.isEnabled == false) { val enableBtIntent = Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE) startActivityForResult(enableBtIntent, REQUEST_ENABLE_BT) } if (BTadapter.adapter.isEnabled) { Toast.makeText(this, "bluetooth on", Toast.LENGTH_LONG).show() } } else { Toast.makeText(this, "Device doesnt support bluetooth", Toast.LENGTH_LONG).show() } } } }

estoy un poco perdido... gracias por la ayuda...

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Puede usar la nueva registerForActivityResult() Para obtener más información al respecto, hay una buena guía en developer.android.com: Obtener un resultado de una actividad

Primero necesitaría registrar su devolución de llamada:

 val registerForResult = registerForActivityResult( ActivityResultContracts.StartActivityForResult() ) { result -> if (result.resultCode == Activity.RESULT_OK) { val intent = result.data // Handle the Intent } }

Luego, dentro de su onClickListener lo ejecutaría.

 if (BTadapter.adapter?.isEnabled == false) { val enableBtIntent = Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE) regiterForResult.launch(enableBtIntent) }
over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda