I developed a custom watch face (Android Wear 5), works perfectly during testing. Uploaded to Google Play and download to test, but it does not show up in the Android Wear app, nor the paired watch itself (running Android Wear 5.0.1)!
I uploaded the mobile apk (similar to my other Android Wear apps), and also have the same permissions for both mobile and wear.
Anybody encountered similar problem? Here's the Watch Face if anybody wanted to test it out: https://play.google.com/store/apps/details?id=com.virtualgs.retrowatch
Are you sure you received an update to your watch face already? You will only see the new watch faces after an update.
If you do have an updated watch, try going to the Android Wear app on your phone, Settings -> Resync apps.
EDIT:
I looked into the logcat of the watch and I saw an attempt to install your watch package:
I/WearablePkgInstaller( 582): Sending install intent to PackageInstaller Intent { act=com.google.android.clockwork.packagemanager.INSTALL_PACKAGE dat=content://com.google.android.clockwork.home.provider/host/com.virtualgs.retrowatch/wearable/com.virtualgs.retrowatch/apk typ=vnd.android.cursor.item/wearable_apk pkg=com.google.android.clockwork.packageinstaller (has extras) }
W/WearablePkgInstaller( 1859): Wearable com.virtualgs.retrowatch has a permission "android.permission.PROVIDE_BACKGROUND" that is not granted in the host application.
You forgot to add PROVIDE_BACKGROUND permission to you phone app (wearable permission set has to be subset of the phone permission set). Remember, that you also need wake lock permission, in case you didn't add it.
EDIT2:
You are declaring wrong permission for providing background. This is the correct one:
com.google.android.permission.PROVIDE_BACKGROUND
Related
In one of the devices (Redmi 8A), I have the output of
Voice.getSpeechRecognitionServices() ==> ["com.xiaomi.mibrain.speech"] and voice recognising is not working.
Voice.start() ==> undefined but
Voice.isAvailable() ==> true
Voice.isRecognizing() ==> true
but none of the following events are triggered,
Voice.onSpeechResults
Voice.onSpeechStart
Voice.onSpeechEnd
Voice.onSpeechError
Voice.onSpeechPartialResults
I tried again after installing Google App and now the device returns ["com.google.android.googlequicksearchbox", "com.xiaomi.mibrain.speech"] for Voice.getSpeechRecognitionServices() but voice is still not working. Permission is granted and I can record and play using #react-native-community/audio-toolkit.
In the logcat:
SpeechRecognizer: bind to recognition service failed
ActivityManager: Unable to start service Intent { act=android.speech.RecognitionService cmp=com.miui.voiceassist/com.xiaomi.mibrain.speech.asr.AsrService } U=0: not found
Have anyone faced the similar issue and solved this? Any suggestions?
The device is running:
Android Version 9
MIUI 11.0.3
Redmi 8A
Found out that even if you have Google services, some android phones can be configured to use other voice recognising services and it can break the flow as React Native Voice is using Google Services.
You can check which Voice services a particular Android Phone is using as following:
Settings > App Management > Default App > Assistive App and Voice Input > Assistive App
Hope this is helpful for those who might be facing the same issues.
I have a flutter app, that uses the location library, found here
I import with
import 'package:location/location.dart';
and later call with
location.onLocationChanged().listen((Map<String,double> currentLocation) {
print("LocationListener " + currentLocation.toString());
}
This works fine when run on an avd phone emulator, and also on a real phone. I get periodic updates with new gps locations coming through.
However, I want to get this working on an Android Wear 2 device/watch.
If I try it in either an emulator or actual android watch (Huawei watch 2), the stream never seems to trigger. I'm also trying to update the location via the emulator, which again works with a phone, but doesn't work with a watch.
The adv device I'm trying is Android Wear Round API 26.
The actual device is
Wear OS By Google 1.6, Google Play Services 14.3.67, android o.s 8.0
Location is enabled on the phone. It's possible the avd watch location is expecting it from a phone, but the actual watch device isn't, as it can work standalone, and things like Google Maps work fine with it GPS wise.
Does Android Wear 2 treat GPS/listeners different in anyway that I should be aware of, and any way to get that working ?
I've got this working finally as I hadn't realised permissions requirements had changed, as per here.
So I've added one of these...
<!--<uses-permission android:name="android.hardware.location.gps" />-->
<uses-permission android:name="android.hardware.location" />
location permission seems to work, but you can add gps specifically if that is required.
Have taken all the necessary permissions for reading SMS in android but app is still not able to detect "service messages" on Redmi Note 3. Is there a special permission in Xiaomi devices to read service messages?
If your phone with API 23 or higher (I think the same should work in lower versions also) goto Settings -> Permissions -> Other Permissions. (be sure that you asked required permissions programmatically if you're targeting API 23 or higher version of Android)
There you can find 2 tabs App and Permissions. Select Permissions tab under that select SMS and MMS option. Now choose your app and Accept/Allow to read Service SMS.
If you're using lower version than 23 use Security app (which is built in app Redmi phones) and there you can find Permissions app for the installed apps.
I am also facing same problem in my Mi Note 3. No apps reading my messages, every time i need to enter OTP.
I think it is good feature from RedMi.
Now I solved this problem with following steps.
Goto Setting->Permissions -> Permissions -> their you select app and accept Read SMS messages
I am working on an android app and from last 2 weeks i am facing a issue in MI Phones that they don't receive Push Notification when application is in Background State or Inactive State. This is working great in other devices like samsung, micromax etc.
At last i solve it by Moving My application in Auto Start Mode through Device Permission Section
Security -> Permission Section -> Auto Start -> MY_APP -> Mark Toggle to On.
When i follow above steps i found that Facebook and whatsapp are already in AutoStart List, means it is possible to move an android application in AutoStart by code.
So can anybody please help me with some piece of code or Tutorials which i can follow to solve this issue.
You can use cordova-plugin-autostart by enabling autostart after boot
cordova.plugins.autoStart.enable();
If enabled is not called, then by default it will be disabled
cordova.plugins.autoStart.disable();
In the config.xml the following needs to be added
<gap:plugin platform="android" name="cordova-plugin-autostart" version="2.0.1" source="npm"/>
NOTE: Installation to the SD card will prevent the automatic start of your app after the boot
I have same issue with mi 3 but bro its not possible from lollipop and marshmallow cause of security reason. But if your phone is rooted then you can change it to allow.
I have created an Android app that runs on a Samsung Galaxy Tab Pro (SM-T900). The main feature of this app is RS232/USB communication using the USB host mode and the USB-to-Serial library.
This app has been working perfectly without the need for any code updates for over a year. However, since the latest Samsung/Android update to Android 5.1, I get a security error and I am no longer able to communicate with USB/RS232 devices. Apart from that, my app runs fine without any crashing. I am simply no longer able to perform USB/RS232 communication.
Here's the logcat:
03-24 17:03:09.015 2798-3149/? D/UsbSettingsManager: requestPermission:/dev/bus/usb/002/008 ,packageName com.example.pumpconnector ,pi PendingIntent{338f59ea: PendingIntentRecord{1fd58866 com.example.pumpconnector broadcastIntent}}
03-24 17:03:09.020 2798-3149/? D/ApplicationPolicy: isUsbDevicePermittedForPackage vendorId: 1027, productId: 24577, package: com.example.pumpconnector
03-24 17:03:09.020 13313-13332/com.example.pumpconnector V/MainActivity: java.lang.SecurityException: Admin does not have android.permission.sec.MDM_APP_MGMT
The app has been configured to start whenever a USB device is attached to the device, which still works on the Samsung tablet. The app works perfectly fine on other (non-Samsung) devices. It's fully functioning on a LG Nexus 5 with Android 6.0.1. installed and also on a Moto G with Android 5.1. A little Google search on the exception quickly points to Samsung specific update/bug that prevent USB communication (check this thread).
I tried to put the following line in the Manifest (without result):
<uses-permission android:name="android.permission.sec.MDM_APP_MGMT"/>
Is there any way to get my app to get the android.permission.sec.MDM_APP_MGMT without having to wait for Samsung to fix it? All help is appreciated.
Check Knox version on device (maybe have been upgraded between) and follow migration guide in knox web site.
Also be sure you'r validating KLM license using KnoxEnterpriseLicenseManager and using EnterpriseLicenseManager For Basic License. Ofc you should check for license in receiver with convenient manager.