CompanionDeviceService уничтожается сразу после создания.Android

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 CompanionDeviceService уничтожается сразу после создания.

Сообщение Anonymous »

У меня есть простая операция с функцией, которая при вызове отображает запрос на сопряжение. После подтверждения пользователя вызывается startObservingDevicePresence («Некоторый Mac-адрес»). Это успешно запускает CompanionDeviceService, и я вижу журналы, что устройство появилось в диапазоне, но сразу после этого вызывается onDestroy. Приложение продолжает работать, и в журналах нет ошибок. Кто-нибудь успешно использовал эти новые API для Android 12 (https://developer.android.com/guide/top ... keep-awake)?
MainActivity:
public class MainActivity extends ReactActivity {
private static final int SELECT_DEVICE_REQUEST_CODE = 42;
private static CompanionDeviceManager deviceManager;
private static AssociationRequest pairingRequest;
private static BluetoothDeviceFilter deviceFilter;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(null);

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
deviceManager = getSystemService(CompanionDeviceManager.class);
}
}

public void start() {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
deviceFilter = new BluetoothDeviceFilter.Builder()
.build();

pairingRequest = new AssociationRequest.Builder()
.addDeviceFilter(deviceFilter)
.build();

deviceManager.associate(pairingRequest,
new CompanionDeviceManager.Callback() {
@Override
public void onDeviceFound(IntentSender chooserLauncher) {
try {
startIntentSenderForResult(chooserLauncher,
SELECT_DEVICE_REQUEST_CODE, null, 0, 0, 0);
} catch (IntentSender.SendIntentException e) {
e.printStackTrace();
}
}

@Override
public void onFailure(CharSequence charSequence) {

}
},
null);

}
}

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == Activity.RESULT_OK) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
try {
deviceManager.startObservingDevicePresence("Some MAC address");
} catch(DeviceNotAssociatedException e) {}
}
}
}
}

CompanionService:
@RequiresApi(VERSION_CODES.S)
public class BleCompanionDeviceService extends CompanionDeviceService {
private static final String TAG = "BleReceiver";

@Override
public void onCreate() {
super.onCreate();
}

@Override
public void onDeviceAppeared(@NonNull String s) {
Log.d(TAG, "DEVICE APPEARED INTO RANGE");
}

@Override
public void onDeviceDisappeared(@NonNull String s) {
Log.d(TAG, "DEVICE DISAPPEARED");
}

@Override
public void onDestroy() {
Log.d(TAG, "SERVICE DESTROYED");
}
}


Подробнее здесь: https://stackoverflow.com/questions/731 ... r-creation
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • FirebaseMessagingService уничтожается сразу после создания.
    Anonymous » » в форуме Android
    0 Ответы
    17 Просмотры
    Последнее сообщение Anonymous
  • Почему моя пуля уничтожается сразу, а не когда столкнется?
    Anonymous » » в форуме C#
    0 Ответы
    23 Просмотры
    Последнее сообщение Anonymous
  • CompanionDeviceService VS Foreground Service для фоновых задач BLE
    Anonymous » » в форуме Android
    0 Ответы
    23 Просмотры
    Последнее сообщение Anonymous
  • CompanionDeviceService не запускается
    Anonymous » » в форуме Android
    0 Ответы
    20 Просмотры
    Последнее сообщение Anonymous
  • Устранение неполадок с утечкой памяти в JInput: Windows не уничтожается должным образом
    Гость » » в форуме JAVA
    0 Ответы
    52 Просмотры
    Последнее сообщение Гость

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