草庐IT

ble-state-preservation

全部标签

java - Android 如何使用 PriorityQueue 读取多个 BLE 特征

有点卡在这里,可能需要你的帮助。我想一次读取多个BLE特性,有些人建议为此使用PriorityQueue。我已经知道所有的uuid等。只需要一种方法来一次读取多个。谁能解释一下它到底应该是什么样子?或者也许还有另一种更简单的解决方案?提前致谢,这是我的代码:publicstaticfinalBluetoothGattCallbackmGattCallback=newBluetoothGattCallback(){PriorityQueuequeue=newPriorityQueue();//Whenconnectionstatechanges@OverridepublicvoidonC

android - 尽管 state_pressed 有效,但 State_Selected 无效

我有一个问题。首先检查我的代码:这里,默认文本颜色出现在默认状态。当我单击时,列表项中的文本颜色发生变化。但是当一个项目被选中时文本的颜色不会改变。我尝试了一些东西,但我无法处理这个问题。我该怎么办? 最佳答案 在使用ListView时,我也在寻找这个问题的答案,并且在找到thisone之前不得不浏览这里的很多帖子。我认为这是最好的选择,而且效果很好。想法是将View设置为已选中,然后使用state_activated而不是state_selected来执行您的选择。如果您使用的是ListView或类似的,您还需要调用setChoi

安卓工作室 : Keep project file tree state expanded

我使用的是最新版本的AndroidStudio。每次我关闭AndroidStudio或开始调试/执行项目时,“项目文件”树都会崩溃。是否有设置保持树在当前状态展开或再次展开整个树? 最佳答案 非常烦人。您可以通过单击齿轮图标并选择Autoscrollfromsource来解决它。然后,只要您选择一个选项卡,它就会展开并在TreeView中选择文件。 关于安卓工作室:Keepprojectfiletreestateexpanded,我们在StackOverflow上找到一个类似的问题:

Android ConnectivityManager 没有看到权限 ACCESS_NETWORK_STATE

我有想要读取网络连接状态的简单代码。我已经向AndroidManifest.xml添加了权限:我尝试访问网络状态的代码:ConnectivityManagerconmgr=(ConnectivityManager)ctx.getSystemService(Context.CONNECTIVITY_SERVICE);NetworkInfoninfo=conmgr.getActiveNetworkInfo();以及抛出的错误:E/AndroidRuntime(7650):java.lang.SecurityException:ConnectivityService:Neitheruser1

Android Activity 生命周期 : state order when new activity starts

如果我通过这种方式从Activity1启动Activity2:startActivity(Activity2);首先执行的是:onStop()(Activity1)或onStart()(Activity2)?它们是同时工作还是轮流工作?如果一个接着一个,那么第一个是什么?所以一般来说:当第一个Activity第二个开始时,Activity的状态顺序是什么,如果这个顺序存在的话? 最佳答案 假设ActivityA通过调用StartActivity(Intent)方法启动ActivityB,然后生命周期调用如下:-一个onCreate(

android - RSSI BLE android的距离计算

我知道有很多关于我的问题的关于stackoverflow的问题,但我想知道是否有任何方法可以获得与RSSI的确切距离。我已关注thislink和其他一些gitlibrarymethodsfordistancecalculation以及这个tutorial.但我无法得到正确的解决方案。这是我用来测量距离的:protecteddoublecalculateDistance(floattxPower,doublerssi){if(rssi==0){return-1.0;//ifwecannotdeterminedistance,return-1.}doubleratio=rssi*1.0/t

android - 订阅通知后未调用 BLE GATT onCharacteristicChanged

这是我关于SO的第一篇文章。我在android5.0.2上订阅GATT通知时遇到一些问题。我打算做的是将带有BLEShield的Arduino连接到我的Android手机。我有一个连接到Arduino的传感器,我想使用BLEshield将数据从Arduino发送到我的手机。shield上有个nRF8001是server,我的手机/app是client。我所做的到目前为止是创建一个扫描BLE设备的Android应用程序。它可以连接到设备并读取或写入特性。因此,我可以通过调用gatt.readCharacteristic(mCharacteristic);“手动”读取特性。这使我能够从Ar

android - Ble 扫描回调只被调用几次然后停止

我有2部Android5.0.2的手机,都安装了最新的RadiusBeacon的App:LocateBeacon,同时我开启了2个IBeaconsender,可以看到RSSIkeep使用应用程序在两部手机中更改。但是当我尝试编写一些示例代码来模拟上述情况时,我发现ble扫描回调总是在调用2或3次后停止调用,我最初怀疑'LocateBeacon'可能使用不同的方式,所以我尝试了两种API,一种用于旧的4.4,另一种是android5中引入的新方式,但两者的行为相同(但都在android5上运行)。4.4版:publicclassMainActivityextendsActivity{pr

android - Statelist 可绘制 android :state_enabled not working in xml

我正在尝试将禁用状态添加到我现有的状态列表可绘制对象中,但它不起作用。最初,我有这段代码:它对选中的和未选中的都非常有效。现在我想像这样添加android:state_enabled="false":它永远不会切换到禁用的图像。有什么想法吗?编辑我将setEnabled(false)添加到View的构造函数中我正在设置这个状态列表drwable现在我看到禁用的图像,但是一旦我将View设置为启用,它就不会再次切换到禁用状态。 最佳答案 虽然这是一个非常古老的问题,但应该按以下顺序编写一个选择器:首先是残疾状态第二个按下状态正常状态最

Android 媒体播放器错误 (-38, 0) "stop called in state 0"

我查看了各种不同的网站,希望在我的代码中寻找针对此问题的解决方案。它是一个基本的音频播放器,有3个按钮:播放、暂停和停止。播放和暂停工作正常,停止也是如此,但是一旦音频停止,它就拒绝再次开始,并抛出错误:E/MediaPlayer:stopcalledinstate0E/MediaPlayer:error(-38,0)E/MediaPlayer:Error(-38,0)这是我的MainActivity.java:importandroid.app.Activity;importandroid.media.MediaPlayer;importandroid.net.Uri;importa