BLE connection failed abruptly after update data in room database and update view
I have an android app with min SDK 19, look at in my scenario:
- click on button;
- BLE scan callback scans around BLE devices and if it find specific device (i have special MAC address, sends to me;
3.returned object has ScannedBleDevice type, i get it and run mGattCallback.connect(...); - i connect to device perfectly and onConnectionStateChanged equals to SUCCESS;
- i write a characteristic then read another one;
- i update Room data base table depend on recieved data from ble device;
- imageviews and textviews on active view Update simultaneously because i use livedata type on room data tables;
- exactly after update view, i disconnect from BLE Device without receive any onConnectionStateChange callbacks.
why? i don't know. please help me...
i found somethings in these links but not exactly what i want:
Android: Catching BLE Connection Fails/Disconnects?
Android - BLE connection parameter and Storing BLE sensor data in SQLite Database
Android ble device is not disconnecting sometime
add a comment |
I have an android app with min SDK 19, look at in my scenario:
- click on button;
- BLE scan callback scans around BLE devices and if it find specific device (i have special MAC address, sends to me;
3.returned object has ScannedBleDevice type, i get it and run mGattCallback.connect(...); - i connect to device perfectly and onConnectionStateChanged equals to SUCCESS;
- i write a characteristic then read another one;
- i update Room data base table depend on recieved data from ble device;
- imageviews and textviews on active view Update simultaneously because i use livedata type on room data tables;
- exactly after update view, i disconnect from BLE Device without receive any onConnectionStateChange callbacks.
why? i don't know. please help me...
i found somethings in these links but not exactly what i want:
Android: Catching BLE Connection Fails/Disconnects?
Android - BLE connection parameter and Storing BLE sensor data in SQLite Database
Android ble device is not disconnecting sometime
add a comment |
I have an android app with min SDK 19, look at in my scenario:
- click on button;
- BLE scan callback scans around BLE devices and if it find specific device (i have special MAC address, sends to me;
3.returned object has ScannedBleDevice type, i get it and run mGattCallback.connect(...); - i connect to device perfectly and onConnectionStateChanged equals to SUCCESS;
- i write a characteristic then read another one;
- i update Room data base table depend on recieved data from ble device;
- imageviews and textviews on active view Update simultaneously because i use livedata type on room data tables;
- exactly after update view, i disconnect from BLE Device without receive any onConnectionStateChange callbacks.
why? i don't know. please help me...
i found somethings in these links but not exactly what i want:
Android: Catching BLE Connection Fails/Disconnects?
Android - BLE connection parameter and Storing BLE sensor data in SQLite Database
Android ble device is not disconnecting sometime
I have an android app with min SDK 19, look at in my scenario:
- click on button;
- BLE scan callback scans around BLE devices and if it find specific device (i have special MAC address, sends to me;
3.returned object has ScannedBleDevice type, i get it and run mGattCallback.connect(...); - i connect to device perfectly and onConnectionStateChanged equals to SUCCESS;
- i write a characteristic then read another one;
- i update Room data base table depend on recieved data from ble device;
- imageviews and textviews on active view Update simultaneously because i use livedata type on room data tables;
- exactly after update view, i disconnect from BLE Device without receive any onConnectionStateChange callbacks.
why? i don't know. please help me...
i found somethings in these links but not exactly what i want:
Android: Catching BLE Connection Fails/Disconnects?
Android - BLE connection parameter and Storing BLE sensor data in SQLite Database
Android ble device is not disconnecting sometime
edited Nov 14 '18 at 14:16
Fantômas
32.6k156389
32.6k156389
asked Nov 14 '18 at 12:58
mortezahosseinimortezahosseini
685
685
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
Finally i found the solution: I use MVVM architecture. When my activity created, i read data from database in type and set an Observer on it. then set data to adapter of viewpager and for each data row, add a fragment to viewpager; so in one of my fragment i try to connect to ble device and connection set good. immediately read data from ble device and save in database so observer of data will be called and viewpager set new fragment to view and all last objects in all fragments gone forever, so Callback to ble class vanished and i lose my connection. i set a flag to true at first read and after change data i do not read.
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53300811%2fble-connection-failed-abruptly-after-update-data-in-room-database-and-update-vie%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
Finally i found the solution: I use MVVM architecture. When my activity created, i read data from database in type and set an Observer on it. then set data to adapter of viewpager and for each data row, add a fragment to viewpager; so in one of my fragment i try to connect to ble device and connection set good. immediately read data from ble device and save in database so observer of data will be called and viewpager set new fragment to view and all last objects in all fragments gone forever, so Callback to ble class vanished and i lose my connection. i set a flag to true at first read and after change data i do not read.
add a comment |
Finally i found the solution: I use MVVM architecture. When my activity created, i read data from database in type and set an Observer on it. then set data to adapter of viewpager and for each data row, add a fragment to viewpager; so in one of my fragment i try to connect to ble device and connection set good. immediately read data from ble device and save in database so observer of data will be called and viewpager set new fragment to view and all last objects in all fragments gone forever, so Callback to ble class vanished and i lose my connection. i set a flag to true at first read and after change data i do not read.
add a comment |
Finally i found the solution: I use MVVM architecture. When my activity created, i read data from database in type and set an Observer on it. then set data to adapter of viewpager and for each data row, add a fragment to viewpager; so in one of my fragment i try to connect to ble device and connection set good. immediately read data from ble device and save in database so observer of data will be called and viewpager set new fragment to view and all last objects in all fragments gone forever, so Callback to ble class vanished and i lose my connection. i set a flag to true at first read and after change data i do not read.
Finally i found the solution: I use MVVM architecture. When my activity created, i read data from database in type and set an Observer on it. then set data to adapter of viewpager and for each data row, add a fragment to viewpager; so in one of my fragment i try to connect to ble device and connection set good. immediately read data from ble device and save in database so observer of data will be called and viewpager set new fragment to view and all last objects in all fragments gone forever, so Callback to ble class vanished and i lose my connection. i set a flag to true at first read and after change data i do not read.
answered Nov 28 '18 at 7:22
mortezahosseinimortezahosseini
685
685
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53300811%2fble-connection-failed-abruptly-after-update-data-in-room-database-and-update-vie%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown