Я использую библиотеку сигналов Alt beacon для сканирования маяка. Я сканирую маяк в классе service.i, чтобы продолжать сканировать маяк, даже приложение закрыто. Но если закрыть службу приложения является купирован и маяк не scanning.I пытался, но я не getting.please помочь мне и спасибо
// MainActivityКак отправить данные из службы даже закрыть приложение
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
setContentView(R.layout.activity_main);
Intent intent = new Intent(MainActivity.this, ScaningService.class);
startService(intent);//starting service
getApplicationContext().bindService(intent, mConnection, Context.BIND_AUTO_CREATE);//bounding service
}
@Override
protected void onResume() {
super.onResume();
}
@Override
protected void onPause() {
super.onPause();
}
@Override
protected void onDestroy() {
super.onDestroy();
}
private ServiceConnection mConnection = new ServiceConnection() {
@Override
public void onServiceConnected(ComponentName className,
IBinder service) {
}
@Override
public void onServiceDisconnected(ComponentName arg0) {
}
};
// класс обслуживания
public class ScaningService extends Service implements BeaconConsumer {
public BeaconManager beaconManager;
public MainActivity activity;
private final IBinder mBinder = new SimpleServiceBinder();
public class SimpleServiceBinder extends Binder {
public ScaningService getService() {
return ScaningService.this;
}
}
@Nullable
@Override
public IBinder onBind(Intent intent) {
return mBinder;
}
@Override
public void onCreate() {
super.onCreate();
handler = new Handler();
beaconManager = BeaconManager.getInstanceForApplication(getBaseContext());
beaconManager.getBeaconParsers().add(new BeaconParser().
setBeaconLayout("m:2-3=0215,i:4-19,i:20-21,i:22-23,p:24-24,d:25-25"));
beaconManager.setBackgroundMode(true);
beaconManager.setBackgroundScanPeriod(1100);//this will set how long a bluetooth should scan
beaconManager.setBackgroundBetweenScanPeriod(2000);//this will set bluetooth scanning interval
beaconManager.bind(ScaningService.this);
}
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
return START_STICKY;
}
@Override
public boolean onUnbind(Intent intent) {
return super.onUnbind(intent);
}
@Override
public void onDestroy() {
super.onDestroy();
}
@Override
public void onBeaconServiceConnect() {
beaconManager.setRangeNotifier(new RangeNotifier() {
@Override
public void didRangeBeaconsInRegion(Collection<Beacon> beacons, Region region) {
if (beacons.size() > 0) {
beacon = beacons.iterator().next();
Log.e(TAG, " UUID: " + beacon.getId1());// this is not showing and i tried toast also
}
});
try {
beaconManager.startRangingBeaconsInRegion(new Region("sBeacon", null, null, null));
} catch (RemoteException e) {
Log.i(TAG, "RemoteException: " + e);
}
}
}
Использование фона 'Сервис' –
[Документация библиотеки] (https://altbeacon.github.io/android-beacon-library/documentation.html) также рассказывает об операции фона. –
Пожалуйста, отредактируйте ваш вопрос, чтобы показать [что вы пробовали до сих пор] (http://whathaveyoutried.com). Вы должны включить [mcve] кода, с которым у вас возникают проблемы, тогда мы можем попытаться помочь с конкретной проблемой. Вы также должны прочитать [ask]. –