Я пишу следующий код для сочетания моего смартфона с некоторым программным устройством. Итак, это код, который я использую сейчас: < /p>
С следующим кодом я выберите устройство, чтобы соединиться из просмотра списка. < /P>
binding.listViewDeviceDiscovered.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@SuppressLint("MissingPermission")
@Override
public void onItemClick(AdapterView arg0, View arg1, int position, long arg3) {
BluetoothDevice deviceSelected = listDeviceDiscovered.get(position);
Log.v("", deviceSelected.getName()+" device selezionato per il pairing");
pairDevice(deviceSelected);
}
});
< /code>
Это метод pairdevice () < /p>
public void pairDevice(BluetoothDevice device)
{
String ACTION_PAIRING_REQUEST = "android.bluetooth.device.action.PAIRING_REQUEST";
Intent intent = new Intent(ACTION_PAIRING_REQUEST);
String EXTRA_DEVICE = "android.bluetooth.device.extra.DEVICE";
intent.putExtra(EXTRA_DEVICE, device);
String EXTRA_PAIRING_VARIANT = "android.bluetooth.device.extra.PAIRING_VARIANT";
int PAIRING_VARIANT_PIN = 1234;
intent.putExtra(EXTRA_PAIRING_VARIANT, PAIRING_VARIANT_PIN);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
getApplicationContext().startActivity(intent);
}
< /code>
Если я попытаюсь выполнить этот код, я получил следующую ошибку: < /p>
Process: it.eresult.silvermountain, PID: 10036
java.lang.SecurityException: Permission Denial: starting Intent { act=android.bluetooth.device.action.PAIRING_REQUEST flg=0x10000000 cmp=com.android.settings/.bluetooth.BluetoothPairingDialog (has extras) } from ProcessRecord{b9feacd 10036:it.eresult.silvermountain/u0a217} (pid=10036, uid=10217) requires android.permission.BLUETOOTH_PRIVILEGED
at android.os.Parcel.createExceptionOrNull(Parcel.java:2426)
at android.os.Parcel.createException(Parcel.java:2410)
at android.os.Parcel.readException(Parcel.java:2393)
at android.os.Parcel.readException(Parcel.java:2335)
at android.app.IActivityTaskManager$Stub$Proxy.startActivity(IActivityTaskManager.java:2466)
at android.app.Instrumentation.execStartActivity(Instrumentation.java:1760)
at android.app.ContextImpl.startActivity(ContextImpl.java:1093)
at android.app.ContextImpl.startActivity(ContextImpl.java:1064)
at android.content.ContextWrapper.startActivity(ContextWrapper.java:411)
at it.eresult.silvermountain.FindDeviceActivity.pairDevice(FindDeviceActivity.java:106)
at it.eresult.silvermountain.FindDeviceActivity$1.onItemClick(FindDeviceActivity.java:51)
at android.widget.AdapterView.performItemClick(AdapterView.java:330)
at android.widget.AbsListView.performItemClick(AbsListView.java:1220)
at android.widget.AbsListView$PerformClick.run(AbsListView.java:3213)
at android.widget.AbsListView$3.run(AbsListView.java:4217)
at android.os.Handler.handleCallback(Handler.java:938)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loopOnce(Looper.java:201)
at android.os.Looper.loop(Looper.java:288)
at android.app.ActivityThread.main(ActivityThread.java:7911)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1009)
Caused by: android.os.RemoteException: Remote stack trace:
at com.android.server.wm.ActivityTaskSupervisor.checkStartAnyActivityPermission(ActivityTaskSupervisor.java:1125)
at com.android.server.wm.ActivityStarter.executeRequest(ActivityStarter.java:987)
at com.android.server.wm.ActivityStarter.execute(ActivityStarter.java:676)
at com.android.server.wm.ActivityTaskManagerService.startActivityAsUser(ActivityTaskManagerService.java:1256)
at com.android.server.wm.ActivityTaskManagerService.startActivityAsUser(ActivityTaskManagerService.java:1228)
Подробнее здесь: https://stackoverflow.com/questions/794 ... in-android
Устройство сопряжения программно в Android ⇐ Android
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Существует ли поддержка поставщиков для безопасного сопряжения Wi -Fi на Android?
Anonymous » » в форуме Android - 0 Ответы
- 3 Просмотры
-
Последнее сообщение Anonymous
-