Android Question Widget works on device, but not visible to device on play store ??!

Jmu5667

Well-Known Member
Licensed User
Longtime User
Hi All

Anyone got any ideas why a widget can be installed to of my devices and functions perfectly but when I try to install it from the play store is it not viaible to the device. I also have the same problem with an app. Works like a dream on the device but can install it from the play store.

BTW, both the above can be installed on a variety of other device we have tested.

Regards

John.
 

Jmu5667

Well-Known Member
Licensed User
Longtime User
You meant that you cannot install it from Google Play?

Hi Erel

Thanks for responding.

Yes, cannot install from google play, it is not visible to the device. We have 4 apps in the app store. Only 2 are visible to the device.

Here is the manifest for the visible app's
B4X:
'This code will be applied to the manifest file during compilation.
'You do not need to modify it in most cases.
'See this link for for more information: http://www.b4x.com/forum/showthread.php?p=78136
AddManifestText(
<uses-sdk android:minSdkVersion="4" android:targetSdkVersion="14"/>
<supports-screens android:largeScreens="true"
  android:normalScreens="true"
  android:smallScreens="true"
  android:anyDensity="true"/>)
SetApplicationAttribute(android:icon, "@drawable/icon")
SetApplicationAttribute(android:label, "$LABEL$")
AddPermission(android.permission.READ_SMS)
AddPermission(android.permission.WRITE_SMS)
AddPermission("android.permission.RECEIVE_SMS")
AddReceiverText(sms_manager,
<intent-filter>
   <action android:name="android.provider.Telephoney.SMS_RECEIVED" />
</intent-filter> )

'End of default text.

B4X:
'This code will be applied to the manifest file during compilation.
'You do not need to modify it in most cases.
'See this link for for more information: http://www.b4x.com/forum/showthread.php?p=78136
AddManifestText(
<uses-sdk android:minSdkVersion="4" />
<supports-screens android:largeScreens="true"
  android:normalScreens="true"
  android:smallScreens="true"
  android:anyDensity="true"/>)
SetApplicationAttribute(android:icon, "@drawable/icon")
SetApplicationAttribute(android:label, "$LABEL$")
AddPermission("android.permission.CALL_PHONE")
'End of default text.


Here is the manifest's for the app that cannot be seen by the device.

B4X:
'This code will be applied to the manifest file during compilation.
'You do not need to modify it in most cases.
'See this link for for more information: http://www.b4x.com/forum/showthread.php?p=78136
AddManifestText(
<uses-sdk android:minSdkVersion="4" android:targetSdkVersion="14"/>
<supports-screens android:largeScreens="true"
  android:normalScreens="true"
  android:smallScreens="true"
  android:anyDensity="true"/>)
SetApplicationAttribute(android:icon, "@drawable/icon")
SetApplicationAttribute(android:label, "$LABEL$")
AddPermission("android.permission.READ_SMS")
AddPermission("android.permission.WRITE_SMS")
AddPermission("android.permission.RECEIVE_SMS")
AddPermission("android.permission.CALL_PHONE")
AddPermission("android.permission.ACCESS_WIFI_STATE")
AddPermission("android.permission.CHANGE_WIFI_STATE")
AddPermission("android.permission.INTERNET")
AddPermission("android.permission.ACCESS_FINE_LOCATION")
AddPermission("android.permission.WRITE_SETTINGS")
AddPermission("android.permission.GET_TASKS")
AddPermission("android.permission.KILL_BACKGROUND_PROCESSES")
AddReceiverText(sms_manager,
<intent-filter>
   <action android:name="android.provider.Telephoney.SMS_RECEIVED" />
</intent-filter> )


'End of default text.

And here is the widget manifest, also cannot be seen by the device.

B4X:
'This code will be applied to the manifest file during compilation.
'You do not need to modify it in most cases.
'See this link for for more information: http://www.b4x.com/forum/showthread.php?p=78136
AddManifestText(
<uses-sdk android:minSdkVersion="4" />
<supports-screens android:largeScreens="true"
  android:normalScreens="true"
  android:smallScreens="true"
  android:anyDensity="true"/>)
SetApplicationAttribute(android:icon, "@drawable/icon")
SetApplicationAttribute(android:label, "$LABEL$")
'End of default text.

It a very strange one indeed.

Hopefully it can be solved :)

Regards

John.
 
Upvote 0

NJDude

Expert
Licensed User
Longtime User
By having this permission:
B4X:
AddPermission("android.permission.CALL_PHONE")
Devices without Telephony (WiFi only devices) will not "see" the app.

You also have a typo on the first code you posted:
B4X:
android.provider.Telephoney.SMS_RECEIVED
It shoud be:
B4X:
android.provider.Telephony.SMS_RECEIVED
 
Upvote 0

Jmu5667

Well-Known Member
Licensed User
Longtime User
Erel/NJ thanks for the help, will address this in Jan, off to see Santa now with the kids

Happy Christmas to you both.
 
Upvote 0

Jmu5667

Well-Known Member
Licensed User
Longtime User
Hi guys

I have update the widget manifest as follows;

B4X:
'This code will be applied to the manifest file during compilation.
'You do not need to modify it in most cases.
'See this link for for more information: http://www.b4x.com/forum/showthread.php?p=78136
AddManifestText(
<uses-sdk android:minSdkVersion="4" />
<supports-screens android:largeScreens="true"
  android:normalScreens="true"
  android:smallScreens="true"
  android:anyDensity="true"/>)
AddManifestText(<uses-feature android:name="android.hardware.telephony" android:required="false"/>)
SetApplicationAttribute(android:icon, "@drawable/icon")
SetApplicationAttribute(android:label, "$LABEL$")
'End of default text.

Changed the version number and published this morning, sadly still the same problem. The device is a smart phone that supports 2 sims and has a dedicated SOS button on the top. Everything works fine in the app. The widget and the app talk to each other using intents.

I am at a loss as other apps we have can be seen. This is a bit of a show stopper for us, really need to solve it.

Regards

John.
 
Upvote 0

Jmu5667

Well-Known Member
Licensed User
Longtime User
Erel, if I stick with the widget as it is the least complicated that would be easier. does the play store analise the contents of the APK file for string for look for stuff that may not be in the manifest .... ????
 
Upvote 0

Jmu5667

Well-Known Member
Licensed User
Longtime User
Hi Erel

Tried these. android:name's are taken from play store. are these case sensitive, the only lib that is being used is the broadcast receiver, which is on the other app that is also not visible. I have rem'd out the b'cast receiver code from the widget and uploaded it, just waiting for it to be visibile.

AddManifestText(<uses-feature android:name="android.hardware.TELEPHONY" android:required="false"/>)
AddManifestText(<uses-feature android:name="android.hardware.location.NETWORK" android:required="false"/>)
AddManifestText(<uses-feature android:name="android.hardware.LOCATION" android:required="false"/>)
AddManifestText(<uses-feature android:name="android.hardware.TOUCHSCREEN" android:required="false"/>)

Regards

John.
 
Upvote 0

Jmu5667

Well-Known Member
Licensed User
Longtime User
Hi Erel

Think I may have solved this issue. I had a unused reference to the OSlibrary. I did all the add manifest stuff anyway, removed the oslib complied, published and the features required was reduced in the play store and the number of device's increased to the full amount. Just waiting now to see if I can see them on the device.

Thanks for the help, this has certainly been a good learning experience.

Regards

John.
 
Upvote 0
Top