我想在service內讓藍芽可以一直執行掃瞄,之前在activity內可以重複掃瞄,但移植到服務後就不能了請問要怎麼解決?
public class search_beacon extends service implements locationlistener
@override
public void oncreate()
@override
public int onstartcommand(intent intent, int flags, int startid)
final bluetoothmanager bluetoothmanager =
(bluetoothmanager) getsystemservice(context.bluetooth_service);
mbluetoothadapter = bluetoothmanager.getadapter();
//gps
locationmanager = (locationmanager) getsystemservice(location_service);
//set the location provider
criteria criteria = new criteria();
criteria.setaccuracy(criteria.accuracy_coarse);
best_loc = locationmanager.getbestprovider(criteria, true);
if (best_loc != null)
//計時器設定
starttime = system.currenttimemillis();
//設定定時要執行的方法
timer.removecallbacks(updatetimer);
//設定delay的時間
timer.postdelayed(updatetimer, 5000);
if (mbluetoothadapter.isenabled())
scanledevice(true);
}return service.start_sticky;
}private void scanledevice(final boolean enable) else
}}, scan_period);
if (build.version.sdk_int < 21) else
} else else }}
string device_mac;
integer device_rssi;
private scancallback mscancallback = new scancallback()
//if(update_record(device_mac,device_rssi))
log.i("jiejv",device_mac+" "+device_rssi);
}@override
public void onbatchscanresults(listresults)
}@override
public void onscanfailed(int errorcode)
};private bluetoothadapter.lescancallback mlescancallback =
new bluetoothadapter.lescancallback()
});}
};//固定要執行的方法
private runnable updatetimer = new runnable()
}record.clear();
timer.postdelayed(this, 10000);}};
@override
public void ondestroy()
}
Android藍芽掃瞄和連線
最近在做藍芽簽到功能時,了解了藍芽的一部分知識,雖然不夠深入,但是感覺良好,他的整體思路如下 在指定時間內,開啟藍芽,掃瞄周邊藍芽訊號,如果有指定的藍芽,則由使用者確認連線藍芽,最終簽到成功.首先,我們先寫乙個工具類,來判斷當前時間是否在指定時間之內 判斷時間是否在時間段內 param date 當...
藍芽掃瞄過濾
需要實現乙個過濾條件為devicename的功能。1.藍芽掃瞄的時候有兩種方法。1.1mbluetoothadapter.startlescan mlescancallback 這個方法已經過時 bluetoothmanager bm bluetoothmanager getsystemservic...
Android 藍芽4 0踩坑 掃瞄不到裝置
藍芽開啟之後啟動掃瞄。用2.0 bluetoothadapter.startdiscovery 這個方法可以發現藍芽裝置。但是使用低功耗藍芽的api bluetoothlescanner bluetoothlescanner bluetoothadapter.getbluetoothlescanne...