BOOT_COMPLETED Broadcast Receiver Not Working in XOS-Android - broadcastreceiver

I am working on an app that sends the updates to users weekly once, even if the app is not opened. For this i am using Alarm Manager to send push notification to user, but when device gets rebooted the alarm manager loose all data. For this i added BOOT_COMPLETED broadcast receiver in my code for setting the Alarms again on reboot. It works fine but coming to the devices having Android XOS chameleon like Tecno c9,Tecno w3, Infinix Note3 BOOT_COMPLETED Broadcast Receiver doesn't work.
Is there any other thing that these Android XOS chameleon devices broadcast after reboot like here HTC having customized boot complete broadcast

Actually the problem was due to the HIOS,XOS flavors of Android maintaining the HiManager, XManager respectively in order to manage auto startup apps and other things. In which we need to manually enable our app to allow on start up.

Related

how can I make Flutter app permanently connected to a BLE device (even after systems reboots)

I am trying to find a way to connect a Flutter app to a BLE beacon physical button whose purpose is to, when pressed, send an email through the app. So, I want the app to be permanently connected to the button and listen to its inputs, whether it's in foreground, background or terminated state. Even after a system reboot, I want it to always connect automatically and listen. What would be the best approach to do so, as I've seen that Android and iOS behave differently towards BLE devices as well as background processes.
I tried using packages like 'flutter_blue' or 'workmanager'. However, isolates created by workmanager can only run every at least 15 minutes on iOS. I am new to working with BLE devices as well as background processes in Flutter.

cordova-plugin-ble-central autoconnect function always prompting user to pair the device

I'm currently working on an ionic capacitor app that needs to connect automatically with a ble device.
I'm using the ble ionic native plugin:
https://ionicframework.com/docs/native/ble
https://github.com/don/cordova-plugin-ble-central
The goal is sending and receiving bluetooth info and commands to the ble device, which is a car alarm central that controls a few actions like lock and unlock the doors accordingly to the RSSI values on from the device.
So, I'm using the autoconnect function to auto-connect with the device as soon the device is close to range and all works perfectly in Android and iOS. The only issue is that everytime the device reachs the ble range and the ble plugin try connecting, the system prompts the user to accept pairing with the device again.
I need it to work without that pairing prompting everytime. I tried to pairing the device previous to initialize the app but it didn't worked as well. So is it a way to make this autoconnection work without prompting the pairing acceptance everytime it is disconnected?
The issue occurs on Android versions 9 and 10 and iOS.
I've changed my ble hardware interface to ask for a PIN code. I guessed the connection could be considered secure by the OS and prevent prompting the user to pair again. Didn't work as well.
Every connection started by the plugin seems like bounding and connecting as if it was the first time connecting to the device. Even connecting to a known device is prompt the user to input the PIN, which if not provided the OS forgets the device.
Any toughts? Anyone? Thank you!

How to run a service/daemon in Android TV Oreo at all times?

I want to build an application for the Android TV platform. Part of this app is a service/daemon, which must start when the device boots, and must always run when the Android TV is powered on, even in stand-by.
Why do I want this service/daemon to run at all times? Part of my project is an application for portable devices (such as a smartphones and/or tablets), which will send commands via TCP to the Android TV app. Based on the kind of TCP message, the app will perform an action (power device on/off, push my app to the foreground etc.).
I have tried different code examples, but Android TV Oreo just kills this service after a while. I think these code examples were made before the Android Oreo restrictions.
An application like Kodi for the Android TV, has a web service that is always running in the background. Even on Oreo. but I can't figure it out how they have done that. Does anyone have some tips for me?
Edit: Yatse Remote Starter does what I want for Kodi, what I want to do with my app. It starts on boot, runs even in stand-by. https://play.google.com/store/apps/details?id=tv.yatse.android.remotestarter&hl=en. Still I would like to know how, so I can do it myself as well. Thanks in advance!
Many android apps and services are running simultaneously. To lower the chance of problems which cause poor user experience, Android 8.0 apps has two ways to limit what an app can do:
Background Service Limitations: While an app is idle, there are limits
to its use of background services. This does not apply to foreground
services, which are more noticeable to the user.
Broadcast Limitations: With limited exceptions, apps cannot use their
manifest to register for implicit broadcasts. They can still register
for these broadcasts at runtime, and they can use the manifest to
register for explicit broadcasts targeted specifically at their app.
Therefore, you need to create a ForegroundService in order to continue processing of your app. You can check this SO post regarding this issue.

iOS 7 Bluetooth - app that handles events in background even after phone restart

I want to write a tracking application, which reacts/record when users get in a car and phone automatically pair with Bluetooth hands free. I need also Id of the hands free device.
On Android it is easy, using Broadcast Receiver your app listen to broadcasts that device had been paired with phone. It is working even after phone had been restarted and App did not run after restart.
Is it possible on iOS(7+) ?
You can do it by reading the "Performing Long-Term Actions in the Background" part of this docs
Essentially, using state restoration, the system takes note of what your app was doing when it was killed.
If the app is searching for a bluetooth device and is killed by the system, the system will take care of continuing this research and wake up the app again when the bt device has ben found.
Note that this will work only if the app is killed by the system, not by the user (using the multitask bar). This behavior has changed since iOS 7.
Alternatively, If your BT hardware can be programmed to send advertisements using the ibeacon protocol, your app can be "awakened" by the corelocation/ibeacon api. After that prompt then maybe the corebluetooth pairing code could be initiated.

MonkeyTalk for recording and replaying the user actions; could it work offline?

I want to use MonkeyTalk for recording and replaying the user actions on the mobile device for measuring energy consumption but I don't want the mobile device to be connected the the computer or its WiFi to be on (because it consumes energy) when it is replaying the actions. So does anybody know if the phone has to be connected with a cable or WiFi to the computer when you want to replay the recorded interactions?
I would also appreciate to know if you have any suggestion for using other tools.
Update entire app from SVN to your mac system.You are creating an IOS agent to your app activate for testing.Once running your app then automatically record option is activated in monkey talk automation tool.