このコードで BroadcastReceiver を使用してサービスを開始したい
public void onReceive(Context context, Intent intent) {
Intent myIntent = new Intent(context,BlueToothService.class);
context.startService(myIntent);
}
しかし、サービスを開始できません。サービスとレシーバーもマニフェストに登録しました。
また、1 つ疑問があります。Broadcast Receiver をアクティビティなしで使用できますか?
これは私のサービスクラスです
public class BlueToothService extends Service {
@Override
public IBinder onBind(Intent intent) {
// TODO Auto-generated method stub
return null;
}
@Override
public void onStartCommand(Intent intent, int startId) {
super.onStart(intent, startId);
Toast.makeText(this, "service Started", Toast.LENGTH_LONG);
doBluetoothJob();
}
私のマニフェストファイルは次のようになります。
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
<uses-permission android:name="android.permission.BROADCAST_SMS" />
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
</application>
<service
android:name=".BlueToothService"
android:enabled="true" >
</service>
<receiver android:name="com.simsys.bt.DemoBT" >
</receiver>
<intent-filter>
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>