Wear app not showing on google play console using open testing - android

I have android app available on google play store, I made a new wear application (in new project) that need the companion application(phone app already distributed) to work, i made changes in app code to send data to wear app and check the connection and i test both mobile and watch and everything working fine.
The wear app has same applicationId of mobile app, the app has one flover but the wear app dose not have any flover.
App Manafist
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.CAMERA" />
<application
android:name=".App"
android:allowBackup="true"
android:icon="#mipmap/ic_launcher"
android:label="#string/app_name"
android:networkSecurityConfig="#xml/network_security_config"
android:supportsRtl="true"
android:theme="#style/AppTheme"
tools:ignore="GoogleAppIndexingWarning">
Wear Manafist
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-feature
android:name="android.hardware.type.watch"
android:required="true" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<application
android:name=".WearApp"
android:allowBackup="true"
android:icon="#mipmap/ic_launcher"
android:label="#string/app_name"
android:supportsRtl="true"
android:theme="#android:style/Theme.DeviceDefault">
<uses-library
android:name="com.google.android.wearable"
android:required="true" />
<!--
Set to true if your app is Standalone, that is, it does not require the handheld
app to run.
-->
<meta-data
android:name="com.google.android.wearable.standalone"
android:value="false" />
Mobile Gradel
android {
compileSdkVersion 30
buildToolsVersion "29.0.2"
defaultConfig {
applicationId "com.company.app"
minSdkVersion 21
targetSdkVersion 30
versionCode 1
versionName "1.0.1"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
flavorDimensions "channel"
multiDexEnabled true
vectorDrawables.useSupportLibrary = true
ndk {
abiFilters 'armeabi', 'x86', 'armeabi-v7a', 'x86_64', 'arm64-v8a'
}
productFlavors {
new_app {
applicationId "com.company.app"
versionName "3.0.14"
versionCode 332100314
}
}
Wear Gradle
compileSdk 32
defaultConfig {
applicationId "com.company.app"
minSdk 25
targetSdk 32
versionName "3.0.15"
versionCode 332100315
}
I test the connection and sending data and sync between app and wear and everything working fine and as expected.
Before release to production i want thee QA team to test the app using google play consle, so i make new open test build and i upload 2 aab (mobile and wear) and i got approval and when i try to test through google play the mobile build working fine and i can see my new changes but for watch google play for watch device it says "Won't work on your device"
I have go through android wear distribution doc and make everything and seems my app knows that I'm supporting watch, but until now i can't install the wear app on the watch.
Is the flavor should be in wear app?
why the application is not showing in the watch and says it's not compatible?
Is the compile SDK or target SDK should be same?
what I should do to install the app on both devices from google play as this image.

Related

Play Store App Device Catalog saying Track: Production Status: Unsupported

I am trying to get an app working on the Google Play. It loads on a device through Android Studio wihtout any issues and it appears to be on the store correctly. The 'View on Google Play' link on my Play Console takes me to the listing but I get this message:
Trying to find out why and looking in the device catalog I see this message on all the devices I have looked at so far (about 10 so assume it will be for all):
My manifest:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.CAMERA2" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.camera2" />
<application
android:allowBackup="true"
android:fullBackupContent="true"
android:icon="#drawable/ic_launcher_foreground"
android:label="abc"
android:roundIcon="#mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="#style/AppTheme">
<activity android:name=".MainActivity"
android:configChanges="keyboardHidden|orientation|screenSize"
>
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
Build Gradle
compileSdkVersion 28
defaultConfig {
applicationId "com.abc.def"
minSdkVersion 21
targetSdkVersion 30
versionCode 9
versionName "1.9"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
Any ideas why camera2 will cause the device to be unsupported in production?

Android Wear 2.0 GoogleApiClient fails to connect due to Invalid Account error

I am currently developing an Android Wear 2.0 application making use of the Google Fit APIs. I am finding that my google api client always fails to connect. The error displayed is:
"Invalid Account error: An invalid account was specified when connecting. Please provide a valid account."
It appears to be by adding the scope addScope() method causes this to occur. Without this line, the google api client will connect, but obviously cannot be used appropriately without the scope.
googleApiClient = new GoogleApiClient.Builder(this)
.addApi(Wearable.API)
.addConnectionCallbacks(this)
.addOnConnectionFailedListener(this)
.addApi(Fitness.SENSORS_API)
.addScope(new Scope(Scopes.FITNESS_LOCATION_READ))
.build();
googleApiClient.connect();
I have enabled the Google Fit Api on the google developer console and the OAuth 2.0 client IDs. I have enabled permissions on the device itself. I cannot determine what causes this issue, or how to sort it. I have followed the example sample code from the developers site to a T.
app manifest
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.project.androidfitnessapp" >
<uses-permission android:name="com.google.android.permission.PROVIDE_BACKGROUND" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="com.javapapers.android.maps.path.permission.MAPS_RECEIVE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.BODY_SENSORS" />
<uses-feature
android:glEsVersion="0x00020000"
android:required="true" />
<uses-feature
android:name="android.hardware.type.watch" />
<application
android:allowBackup="true"
android:icon="#mipmap/ic_launcher"
android:label="#string/app_name"
android:supportsRtl="true"
android:theme="#android:style/Theme.Material" >
<meta-data
android:name="com.google.android.wearable.standalone"
android:value="true" />
<activity
...
the build script
apply plugin: 'com.android.application'
android {
compileSdkVersion 25
buildToolsVersion "25.0.2"
defaultConfig {
applicationId "com.project.androidfitnessapp"
minSdkVersion 25
targetSdkVersion 25
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.google.android.support:wearable:2.0.0'
provided 'com.google.android.wearable:wearable:2.0.0'
compile 'com.google.android.gms:play-services-wearable:10.2.0'
compile 'com.google.android.gms:play-services-fitness:10.2.0'
compile 'com.google.android.gms:play-services-maps:10.2.0'
compile 'com.google.android.gms:play-services:10.2.0'
compile 'com.google.android.gms:play-services-auth:10.2.0'
compile 'com.jjoe64:graphview:4.2.1'
}

This app is incompatible with your device

I have just made an android application tested on "HUAWEI T1-701u" AND "HUAWEI T1-A21L", i have generated a signed apk and it's now published on the play store,
the problem is the app just working on anything i have expect HUAWEI T1-701u even i tested on it, it says something like this: app is not compatible with this device, even i tested on it.
here is the manifest
<?xml version="1.0" encoding="utf-8"?>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.camera.autofocus" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<supports-screens android:smallScreens="false"
android:normalScreens="true"
android:largeScreens="true"
android:xlargeScreens="true"
android:requiresSmallestWidthDp="100" />
<application
android:allowBackup="true"
android:icon="#mipmap/ic_launcher"
android:label="#string/app_name"
android:supportsRtl="true"
android:theme="#style/Theme.AppCompat.NoActionBar">
<activity
android:name=".MainActivity"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
and here is the gradle:
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion '23.0.3'
defaultConfig {
applicationId "org.iowpjordan.mpic"
minSdkVersion 12
targetSdkVersion 19
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.4.0'
compile 'com.android.support:design:23.4.0'
}
Please note that the screen size of HUAWEI T1-701u is 7 inch and the other one is 10 approximately
Please advice.
Regards.
the features in manifest are too sensitive if do you put a useless feature and you don't have it on your phone then the app will not be compatible with your phone
if you are not using Autofocus,remove this line <uses-feature android:name="android.hardware.camera.autofocus" />
because the phone which are you testing on, doesn't have autofocus feature! that's why the app will not be compatible with your device
You have mentioned targetSdkVersion 19 in build.gradle file.
It will work for only kitkat devices.
What is the android version of the device that you are testing?

Failed to insert image requires android.permission.WRITE_EXTERNAL_STORAGE, or grantUriPermission()

i'm trying to implement sharing option into my application and to share images via different social networks, but i'm getting this error when i try to save image first from ImageView and then read it:
Failed to insert image java.lang.SecurityException: Permission Denial: writing com.android.providers.media.MediaProvider uri
content://media/external/images/media from pid=9758, uid=10176 requires android.permission.WRITE_EXTERNAL_STORAGE, or grantUriPermission()
This is my manifest file:
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.BLUETOOTH"/>
<uses-permission android:name="android.permission.MEDIA_CONTENT_CONTROL" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<application
android:name=".app.AppController"
android:allowBackup="true"
android:icon="#drawable/ic_launcher"
android:label="#string/app_name"
android:largeHeap="true"
android:supportsRtl="true"
android:theme="#style/AppTheme">
And gradle file:
android {
compileSdkVersion 23
buildToolsVersion "23.0.2"
defaultConfig {
applicationId "com.dusandimitrijevic.pdssolution"
minSdkVersion 15
targetSdkVersion 23
versionCode 3
versionName "1.2"
// Enabling multi dex support.
multiDexEnabled true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
This error are showing for target version 23 then it will give you this error, if your requirement includes API level 23 then you need to make target 23 and need to check permissions dynamically here is the example from developer site check developer site
Here is permissions list.
Even if you give target 22 or lower also your app will work with 23 without this(check permission) error.

SIP API SipManeger returns null

I'm trying to use SIP API in my android application and geting some strange situation. If i'm use VitrualBox device with android 4.2.2 it's work well, but when i'm installing the same app to real devices with the same android version it says that SipManager.newInstance(this) return null and getApiVersion() return false(Testing on Lenovo & GSmart). But when i'm installing another SIP application from play market to device it works well.
I'm trying to find reason, maybe that device firmware some strange but other SIP app works. Can you help to find solution to solve this and get SipManager on device?
Manifest file
<uses-permission android:name="android.permission.USE_SIP" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-feature
android:name="android.hardware.sip.voip"
android:required="true" />
<uses-feature
android:name="android.hardware.wifi"
android:required="true" />
<uses-feature
android:name="android.hardware.microphone"
android:required="true" />
<application
android:allowBackup="true"
android:icon="#mipmap/ic_launcher"
android:label="#string/app_name"
android:theme="#style/AppTheme">
<activity
android:name=".WalkieTalkieActivity"
android:label="#string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".SipSettings"
android:label="set_preferences" />
<receiver
android:name=".IncomingCallReceiver"
android:label="Call Receiver" />
</application>
Gradle
apply plugin: 'com.android.application'
android {
compileSdkVersion 22
buildToolsVersion "22.0.1"
defaultConfig {
applicationId "com.uniphone.dev3.siptest"
minSdkVersion 15
targetSdkVersion 22
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:22.2.0'
}
So, all i find is that (custom)android phone firmware still goes disgusting with SIP and not all devices can run SIP API. And only one case is to use 3d party library on C++.
As final i used JAIN-SIP java library from Oracle.
Examples i found at Mobicents/restcomm-android-sdk

Categories

Resources