java - 为什么我的选择设备活动不运行?
问题描述
我一直在通过android studio制作一个应用程序。该应用程序的理念是它通过蓝牙从 arduino 获取数据并将该数据显示给用户。但是我为选择设备活动创建的 Java 类是启动它的一个,它没有运行。我已经使用 logcat 进行了检查。` 我还在 github 上发布了我的所有代码:https ://github.com/OtakuDisease/Hivey 这是 SelectDeviceActivity.java 类。
import androidx.appcompat.app.AppCompatActivity;
import androidx.recyclerview.widget.DefaultItemAnimator;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothDevice;
import android.os.Bundle;
import android.view.View;
import com.example.hivey.ui.DeviceInfoModel;
import com.example.hivey.ui.DeviceListAdapter;
import com.google.android.material.snackbar.Snackbar;
import java.util.ArrayList;
import java.util.List;
import java.util.Set;
public class SelectDeviceActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_select_device);
// Bluetooth Setup
BluetoothAdapter bluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
// Get List of Paired Bluetooth Device
Set<BluetoothDevice> pairedDevices = bluetoothAdapter.getBondedDevices();
List<Object> deviceList = new ArrayList<>();
if (pairedDevices.size() > 0) {
// There are paired devices. Get the name and address of each paired device.
for (BluetoothDevice device : pairedDevices) {
String deviceName = device.getName();
String deviceHardwareAddress = device.getAddress(); // MAC address
DeviceInfoModel deviceInfoModel = new DeviceInfoModel(deviceName,deviceHardwareAddress);
deviceList.add(deviceInfoModel);
}
// Display paired device using recyclerView
RecyclerView recyclerView = findViewById(R.id.recyclerViewDevice);
recyclerView.setLayoutManager(new LinearLayoutManager(this));
DeviceListAdapter deviceListAdapter = new DeviceListAdapter(this,deviceList);
recyclerView.setAdapter(deviceListAdapter);
recyclerView.setItemAnimator(new DefaultItemAnimator());
} else {
View view = findViewById(R.id.recyclerViewDevice);
Snackbar snackbar = Snackbar.make(view, "Activate Bluetooth or pair a Bluetooth device", Snackbar.LENGTH_INDEFINITE);
snackbar.setAction("OK", new View.OnClickListener() {
@Override
public void onClick(View view) {
}
});
snackbar.show();
}
}
}
解决方案
你能把logcat错误发给你吗?这可能是一个空指针异常(也许,不是 sur)
推荐阅读
- ansible - 在ansible中使用脚本模块运行python脚本时导入错误?
- git - git lfs migrate import --no-rewrite 未知标志 --no-rewrite
- assembly - 使用 RISC-V (RV32I) 编译器计算第 n 个斐波那契数,无需递归
- java - Java 多个 UDP 客户端监听同一个端口
- jekyll - 是否可以根据两个变量对 Jekyll 数组进行排序?
- r - 将 abind 与模式列表数组一起使用
- ubuntu - Ansible:如何处理首次登录强制密码更改和推送 ssh-key
- python - 我在 Heroku 上托管了一个 Discord Bot,它只是给了我错误 14 ps webscale 也不起作用
- python - Python Django 保存帖子计算方法
- azure - 是否缺少此 Terraform 代码权限或 Azure 帐户(附加错误)以及如何解决?