代码内部广播 改成本地广播

master
hwf452 10 months ago
parent 4639bc7d9d
commit b88565a31c

@ -20,6 +20,8 @@ import java.util.List;
import static org.litepal.crud.DataSupport.where; import static org.litepal.crud.DataSupport.where;
import androidx.localbroadcastmanager.content.LocalBroadcastManager;
public class ChangeYulActivity extends BaseActivity { public class ChangeYulActivity extends BaseActivity {
ListView lv; ListView lv;
@ -99,7 +101,7 @@ public class ChangeYulActivity extends BaseActivity {
IntentFilter filter = new IntentFilter(); IntentFilter filter = new IntentFilter();
filter.addAction(Contans.ACTION_YULONE); filter.addAction(Contans.ACTION_YULONE);
//注册广播 //注册广播
registerReceiver(myReceiver, filter); LocalBroadcastManager.getInstance(this).registerReceiver(myReceiver, filter);
} }
private void searchdata() { private void searchdata() {
@ -172,7 +174,7 @@ public class ChangeYulActivity extends BaseActivity {
@Override @Override
protected void onDestroy() { protected void onDestroy() {
super.onDestroy(); super.onDestroy();
//反注册广播(注销) // 注销广播接收器
unregisterReceiver(myReceiver); LocalBroadcastManager.getInstance(this).unregisterReceiver(myReceiver);
} }
} }

@ -8,6 +8,9 @@ import android.os.Bundle;
import android.view.View; import android.view.View;
import android.widget.AdapterView; import android.widget.AdapterView;
import android.widget.ListView; import android.widget.ListView;
import androidx.localbroadcastmanager.content.LocalBroadcastManager;
import com.rehome.bhdxj.DBModel.QYDDATABean; import com.rehome.bhdxj.DBModel.QYDDATABean;
import com.rehome.bhdxj.R; import com.rehome.bhdxj.R;
import com.rehome.bhdxj.adapter.DlbAdapter; import com.rehome.bhdxj.adapter.DlbAdapter;
@ -80,7 +83,7 @@ public class SbSelectActivity extends BaseActivity {
IntentFilter filter = new IntentFilter(); IntentFilter filter = new IntentFilter();
filter.addAction(Contans.ACTION_YULONE); filter.addAction(Contans.ACTION_YULONE);
//注册广播 //注册广播
registerReceiver(myReceiver, filter); LocalBroadcastManager.getInstance(this).registerReceiver(myReceiver, filter);
} }
private void setListAdapter() { private void setListAdapter() {
@ -121,7 +124,7 @@ public class SbSelectActivity extends BaseActivity {
@Override @Override
protected void onDestroy() { protected void onDestroy() {
super.onDestroy(); super.onDestroy();
//反注册广播(注销) // 注销广播接收器
unregisterReceiver(myReceiver); LocalBroadcastManager.getInstance(this).unregisterReceiver(myReceiver);
} }
} }

@ -28,6 +28,7 @@ import java.util.ArrayList;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
import androidx.fragment.app.Fragment; import androidx.fragment.app.Fragment;
import androidx.localbroadcastmanager.content.LocalBroadcastManager;
/** /**
@ -132,7 +133,7 @@ public class SbxdjcjsbActivity extends BaseActivity3 {
} }
}); });
registerReceiver(mGattUpdateReceiver, makeGattUpdateIntentFilter()); LocalBroadcastManager.getInstance(this).registerReceiver(mGattUpdateReceiver, makeGattUpdateIntentFilter());
sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Bundle bundle = SbxdjcjsbActivity.this.getIntent().getExtras(); Bundle bundle = SbxdjcjsbActivity.this.getIntent().getExtras();
if (bundle != null) { if (bundle != null) {
@ -265,8 +266,7 @@ public class SbxdjcjsbActivity extends BaseActivity3 {
Intent intent = new Intent(Contans.ACTION_YULONE); Intent intent = new Intent(Contans.ACTION_YULONE);
intent.putExtra(Contans.KEY_POSITION, position); intent.putExtra(Contans.KEY_POSITION, position);
intent.putExtra(Contans.KEY_NAME, name); intent.putExtra(Contans.KEY_NAME, name);
sendBroadcast(intent); LocalBroadcastManager.getInstance(SbxdjcjsbActivity.this).sendBroadcast(intent);
} }
private final BroadcastReceiver mGattUpdateReceiver = new BroadcastReceiver() { private final BroadcastReceiver mGattUpdateReceiver = new BroadcastReceiver() {
@ -298,7 +298,8 @@ public class SbxdjcjsbActivity extends BaseActivity3 {
@Override @Override
protected void onDestroy() { protected void onDestroy() {
unregisterReceiver(mGattUpdateReceiver);
super.onDestroy(); super.onDestroy();
// 注销广播接收器
LocalBroadcastManager.getInstance(this).unregisterReceiver(mGattUpdateReceiver);
} }
} }

@ -21,6 +21,8 @@ import java.util.ArrayList;
import java.util.List; import java.util.List;
import static org.litepal.crud.DataSupport.where; import static org.litepal.crud.DataSupport.where;
import androidx.localbroadcastmanager.content.LocalBroadcastManager;
public class YulActivity extends BaseActivity { public class YulActivity extends BaseActivity {
ListView lv; ListView lv;
@ -99,7 +101,7 @@ public class YulActivity extends BaseActivity {
IntentFilter filter = new IntentFilter(); IntentFilter filter = new IntentFilter();
filter.addAction(Contans.ACTION_YULONE); filter.addAction(Contans.ACTION_YULONE);
registerReceiver(myReceiver, filter); LocalBroadcastManager.getInstance(this).registerReceiver(myReceiver, filter);
} }
private void searchdata() { private void searchdata() {
@ -210,7 +212,7 @@ public class YulActivity extends BaseActivity {
@Override @Override
protected void onDestroy() { protected void onDestroy() {
super.onDestroy(); super.onDestroy();
//反注册广播(注销) // 注销广播接收器
unregisterReceiver(myReceiver); LocalBroadcastManager.getInstance(this).unregisterReceiver(myReceiver);
} }
} }

@ -25,6 +25,8 @@ import java.util.List;
import static org.litepal.crud.DataSupport.where; import static org.litepal.crud.DataSupport.where;
import androidx.localbroadcastmanager.content.LocalBroadcastManager;
public class Yul_SBActivity extends BaseActivity { public class Yul_SBActivity extends BaseActivity {
private static final int Req = 101; private static final int Req = 101;
@ -116,7 +118,7 @@ public class Yul_SBActivity extends BaseActivity {
TYOnclick(); TYOnclick();
IntentFilter filter = new IntentFilter(); IntentFilter filter = new IntentFilter();
filter.addAction(Contans.ACTION_YULONE); filter.addAction(Contans.ACTION_YULONE);
registerReceiver(myReceiver, filter); LocalBroadcastManager.getInstance(this).registerReceiver(myReceiver, filter);
} }
private void TYOnclick() { private void TYOnclick() {
@ -268,6 +270,7 @@ public class Yul_SBActivity extends BaseActivity {
@Override @Override
protected void onDestroy() { protected void onDestroy() {
super.onDestroy(); super.onDestroy();
unregisterReceiver(myReceiver); // 注销广播接收器
LocalBroadcastManager.getInstance(this).unregisterReceiver(myReceiver);
} }
} }

@ -36,6 +36,7 @@ import java.util.List;
import androidx.annotation.RequiresApi; import androidx.annotation.RequiresApi;
import androidx.appcompat.app.AlertDialog; import androidx.appcompat.app.AlertDialog;
import androidx.fragment.app.Fragment; import androidx.fragment.app.Fragment;
import androidx.localbroadcastmanager.content.LocalBroadcastManager;
/** /**
@ -156,7 +157,7 @@ public class SbxjcjsbActivity extends BaseActivity3 {
} }
}); });
registerReceiver(mGattUpdateReceiver, makeGattUpdateIntentFilter()); LocalBroadcastManager.getInstance(this).registerReceiver(mGattUpdateReceiver, makeGattUpdateIntentFilter());
Bundle bundle = SbxjcjsbActivity.this.getIntent().getExtras(); Bundle bundle = SbxjcjsbActivity.this.getIntent().getExtras();
if (bundle != null) { if (bundle != null) {
isEdit = bundle.getBoolean("edit"); isEdit = bundle.getBoolean("edit");
@ -277,8 +278,7 @@ public class SbxjcjsbActivity extends BaseActivity3 {
intent.putExtra(Contans.KEY_POSITION, position); intent.putExtra(Contans.KEY_POSITION, position);
intent.putExtra(Contans.KEY_NAME, name); intent.putExtra(Contans.KEY_NAME, name);
//发送广播 //发送广播
sendBroadcast(intent); LocalBroadcastManager.getInstance(SbxjcjsbActivity.this).sendBroadcast(intent);
} }
@Override @Override
@ -320,7 +320,8 @@ public class SbxjcjsbActivity extends BaseActivity3 {
@Override @Override
protected void onDestroy() { protected void onDestroy() {
unregisterReceiver(mGattUpdateReceiver);
super.onDestroy(); super.onDestroy();
// 注销广播接收器
LocalBroadcastManager.getInstance(this).unregisterReceiver(mGattUpdateReceiver);
} }
} }

@ -24,6 +24,8 @@ import java.util.List;
import static com.rehome.bhdxj.activity.sbxdj.SbxdjcjsbActivity.Req; import static com.rehome.bhdxj.activity.sbxdj.SbxdjcjsbActivity.Req;
import static org.litepal.crud.DataSupport.where; import static org.litepal.crud.DataSupport.where;
import androidx.localbroadcastmanager.content.LocalBroadcastManager;
public class XjYulActivity extends BaseActivity { public class XjYulActivity extends BaseActivity {
ListView lv; ListView lv;
@ -86,7 +88,7 @@ public class XjYulActivity extends BaseActivity {
setListAdapter(); setListAdapter();
IntentFilter filter = new IntentFilter(); IntentFilter filter = new IntentFilter();
filter.addAction(Contans.ACTION_YULONE); filter.addAction(Contans.ACTION_YULONE);
registerReceiver(myReceiver, filter); LocalBroadcastManager.getInstance(this).registerReceiver(myReceiver, filter);
} }
private void searchdata() { private void searchdata() {
@ -181,6 +183,7 @@ public class XjYulActivity extends BaseActivity {
@Override @Override
protected void onDestroy() { protected void onDestroy() {
super.onDestroy(); super.onDestroy();
unregisterReceiver(myReceiver); // 注销广播接收器
LocalBroadcastManager.getInstance(this).unregisterReceiver(myReceiver);
} }
} }

@ -32,6 +32,7 @@ import com.rehome.bhdxj.base.BaseActivity3;
import java.util.ArrayList; import java.util.ArrayList;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.core.app.ActivityCompat; import androidx.core.app.ActivityCompat;
import androidx.localbroadcastmanager.content.LocalBroadcastManager;
public class BlueTestInfoActivity extends BaseActivity3 { public class BlueTestInfoActivity extends BaseActivity3 {
@ -92,7 +93,9 @@ public class BlueTestInfoActivity extends BaseActivity3 {
return; return;
} }
setAdapter(); setAdapter();
registerReceiver(mGattUpdateReceiver, makeGattUpdateIntentFilter()); LocalBroadcastManager.getInstance(this).registerReceiver(mGattUpdateReceiver, makeGattUpdateIntentFilter());
Intent gattServiceIntent = new Intent(BlueTestInfoActivity.this, BluetoothLeService.class); Intent gattServiceIntent = new Intent(BlueTestInfoActivity.this, BluetoothLeService.class);
bindService(gattServiceIntent, mServiceConnection, BIND_AUTO_CREATE); bindService(gattServiceIntent, mServiceConnection, BIND_AUTO_CREATE);
initconn = true; initconn = true;
@ -241,7 +244,7 @@ public class BlueTestInfoActivity extends BaseActivity3 {
if (initconn) { if (initconn) {
if (!mConnected) mBluetoothLeService.connect(mDeviceAddress); if (!mConnected) mBluetoothLeService.connect(mDeviceAddress);
} else { } else {
registerReceiver(mGattUpdateReceiver, makeGattUpdateIntentFilter()); LocalBroadcastManager.getInstance(this).registerReceiver(mGattUpdateReceiver, makeGattUpdateIntentFilter());
Intent gattServiceIntent = new Intent(BlueTestInfoActivity.this, BluetoothLeService.class); Intent gattServiceIntent = new Intent(BlueTestInfoActivity.this, BluetoothLeService.class);
bindService(gattServiceIntent, mServiceConnection, BIND_AUTO_CREATE); bindService(gattServiceIntent, mServiceConnection, BIND_AUTO_CREATE);
initconn = true; initconn = true;
@ -396,7 +399,8 @@ public class BlueTestInfoActivity extends BaseActivity3 {
scanLeDevice(false); scanLeDevice(false);
mLeDeviceListAdapter.clear(); mLeDeviceListAdapter.clear();
unbindService(mServiceConnection); unbindService(mServiceConnection);
unregisterReceiver(mGattUpdateReceiver); // 注销广播接收器
LocalBroadcastManager.getInstance(this).unregisterReceiver(mGattUpdateReceiver);
super.onDestroy(); super.onDestroy();
} }

@ -19,6 +19,7 @@ import android.os.IBinder;
import android.util.Log; import android.util.Log;
import androidx.core.app.ActivityCompat; import androidx.core.app.ActivityCompat;
import androidx.localbroadcastmanager.content.LocalBroadcastManager;
import java.util.List; import java.util.List;
import java.util.UUID; import java.util.UUID;
@ -116,7 +117,7 @@ public class BluetoothLeService extends Service {
private void broadcastUpdate(final String action) { private void broadcastUpdate(final String action) {
final Intent intent = new Intent(action); final Intent intent = new Intent(action);
sendBroadcast(intent); LocalBroadcastManager.getInstance(BluetoothLeService.this).sendBroadcast(intent);
} }
//收到数据后,触发广播 //收到数据后,触发广播
@ -130,7 +131,7 @@ public class BluetoothLeService extends Service {
stringBuilder.append(String.format("%02X ", byteChar)); stringBuilder.append(String.format("%02X ", byteChar));
intent.putExtra(EXTRA_DATA, new String(data) + "\n" + stringBuilder.toString()); intent.putExtra(EXTRA_DATA, new String(data) + "\n" + stringBuilder.toString());
} }
sendBroadcast(intent); LocalBroadcastManager.getInstance(BluetoothLeService.this).sendBroadcast(intent);
} }
public class LocalBinder extends Binder { public class LocalBinder extends Binder {

Loading…
Cancel
Save