Closed dshokouhi closed 2 years ago
Interesting error:
01-06 13:21:47.669 11236 11307 E HaConProService: Error getting list of entities
01-06 13:21:47.669 11236 11307 E HaConProService: java.lang.IllegalArgumentException: Cannot construct instance of `java.util.ArrayList` (although at least one Creator exists): no String-argument constructor/factory method to deserialize from String value ('Mikrotik Konkovo ax RB1100x4')
01-06 13:21:47.669 11236 11307 E HaConProService: at [Source: UNKNOWN; byte offset: #UNKNOWN] (through reference chain: java.util.ArrayList[73]->io.homeassistant.companion.android.common.data.websocket.impl.entities.DeviceRegistryResponse["identifiers"]->java.util.ArrayList[0])
I'm assuming this error is just Jackson encountering something unexpected in the response while deserializing, which is still interesting because the DeviceRegistryResponse
class is directly based on the class for device registry entries in core.
The full response could be helpful to see if there's anything not following the expected format but is is so long it is cut off... Edit: what is included looks fine, but the text 'Mikrotik Konkovo ax RB1100x4' is not in there so it probably has something to do with the specific device, otherwise it probably would have failed on one of the first device in the response.
@x-plood Would you by any chance be able to use the developer tools in a desktop browser to get the full response for us?
"type":"config/device_registry/list"
. Remember the ID number displayed next to it.@jpelgrom It seems like I did everything right :)
By the way, the problem appeared only in the latest version of the app.
Thanks! Makes sense that the problems only appears on the latest stable version of the app, before that it didn't load as much data.
It looks like the device registry response doesn't match the expected response format. These identifiers
are nothing like the documented [["a", "b"]] format:
"identifiers": [["mikrotik_router", "serial-number", "91D70AE3F432", "sensor", "System"]]
"identifiers": ["Mikrotik Konkovo ax RB1100x4", ["M", "i", "k", "r", "o", "t", "i", "k", " ", "K", "o", "n", "k", "o", "v", "o", " ", "a", "x", " ", "R", "B", "1", "1", "0", "0", "x", "4"], "serial-number", ["9", "1", "D", "7", "0", "A", "E", "3", "F", "4", "3", "2"], "mikrotik_router", ["m", "i", "k", "r", "o", "t", "i", "k", "_", "r", "o", "u", "t", "e", "r"], ["mikrotik_router", "serial-number", "91D70AE3F432", "sensor", "Mikrotik Konkovo ax RB1100AHx4"], "91D70AE3F432", ["s", "e", "n", "s", "o", "r"], ["s", "e", "r", "i", "a", "l", "-", "n", "u", "m", "b", "e", "r"], "sensor"]
Trying to get someone who knows more about core to comment on whether types are enforced in some way on Discord. If not it might just be easier to get rid of all properties we don't need for now so the app just ignores them.
@x-plood can you please help us test a fix for this issue? You can find the full debug APK here: https://github.com/home-assistant/android/actions/runs/1673730317
The app will install side by side the production version so it will be easy to tell a part and wont interfere with the other app. You can safely remove it after testing too.
@dshokouhi yeah sure
Log can be found on https://disk.yandex.ru/d/kuyV7XXN2zc96w
@dshokouhi yeah sure
Log can be found on https://disk.yandex.ru/d/kuyV7XXN2zc96w
Did the debug APK work? Or same issue?
Did the debug APK work? Or same issue?
It's working properly
Hey, I have the same problem. I've tried alternative build and it's working fine for me.
The error log from normal app version is attached for your reference. I can provide log from alternative build too if needed.
BTW, I see it was already discussed.. But to be clear: after removing Mikrotik integration, it immediately started working with normal app version too.
after removing Mikrotik integration, it immediately started working with normal app version too
Yes if you manage to find out which integration(s) is/are causing the problem, removing it will make the controls work again. However finding that isn't always easy, and based on reports like these and others the issue isn't really something that the user should fix. The change in the alternative version you tried, which is included in the next version of the app, will make it work without any changes required to your setup.
Home Assistant Android version:
2022.1.1-full
Android version: 11
Phone model: Samsung Galaxy s10+
Home Assistant version: Home Assistant 2021.12.1
I hope this is what you need
Originally posted by @x-plood in https://github.com/home-assistant/android/issues/2036#issuecomment-1006461511