我正在尝试连接到
Android上的蓝牙设备.我在onClientConnectionState处理程序中收到状态133.我并不总是得到这个错误 – 有时连接很好.我无法指出触发问题的原因.重新启动设备和我的repro应用程序后,我甚至立即使用它.
我知道几个问题并建议解决这个问题,包括(从here,here和here):
>将UI线程用于所有BT API
>完成后务必关闭关贸总协定
但我正在做这一切.更重要的是,我的设备是一个Nexus 5(运行Lollipop),根据一些人甚至不需要BT交互在UI线程上.
我把最简单的复制品放在了一起.它在C#中,但Java等价物应该是显而易见的:
[Activity(Label = "BluetoothGatt133ErrorRepro", MainLauncher = true, Icon = "@drawable/icon")]
public class MainActivity : Activity
{
protected override void OnCreate(Android.OS.Bundle bundle)
{
base.OnCreate(bundle);
SetContentView(Resource.Layout.Main);
var button = FindViewById(Resource.Id.button);
button.Click += this.OnClick;
}
private async void OnClick(object sender, EventArgs e)
{
Action log =