Jump to content

Bluetooth optional ?


bilbo49

Recommended Posts

HI !

 

Sorry if I am wrong, not really a bug but I've just noticed that the playstore doesn't want to show Poweramp on my device without bluetooth.

 

I think you should put "OPTIONAL" in your manifest because bluetooh is really optional in Poweramp no ?

 

Of course I can use a work around in etc/permissions or use the web download. :D

 

Anyway, Poweramp works perfectly in my incompatible device !

 

Thanks,

 

 

Link to comment
Share on other sites

  • 2 weeks later...

Is There Anybody Out There ?

 

No answer, so I wil do it myself. Yes I know, that's schizophrenia !

Google says : (http://developer.android.com/guide/topics/manifest/uses-feature-element.html)

"Google Play attempts to discover an application's implied feature requirements by examining other elements declared in the manifest file, specifically, <uses-permission> elements.

If an application requests hardware-related permissions, Google Play assumes that the application uses the underlying hardware features and therefore requires those features, even though there might be no corresponding to <uses-feature> declarations. For such permissions, Google Play adds the underlying hardware features to the metadata that it stores for the application and sets up filters for them.

For example, if an application requests the CAMERA permission but does not declare a <uses-feature> element for android.hardware.camera, Google Play considers that the application requires a camera and should not be shown to users whose devices do not offer a camera.

If you don't want Google Play to filter based on a specific implied feature, you can disable that behavior. To do so, declare the feature explicitly in a <uses-feature> element and include an android:required="false" attribute. For example, to disable filtering derived from the CAMERA permission, you would declare the feature as shown below.

"
 

aapt output gives (Poweramp v=552):

 

[...]

sdkVersion:'9'
targetSdkVersion:'17'
uses-feature-not-required:'android.hardware.touchscreen'
uses-permission:'android.permission.WRITE_SETTINGS'
uses-permission:'android.permission.WRITE_EXTERNAL_STORAGE'
uses-permission:'android.permission.WAKE_LOCK'
uses-permission:'android.permission.READ_PHONE_STATE'
uses-permission:'android.permission.INTERNET'
uses-permission:'android.permission.ACCESS_NETWORK_STATE'
uses-permission:'android.permission.DISABLE_KEYGUARD'
uses-permission:'android.permission.MODIFY_AUDIO_SETTINGS'
uses-permission:'android.permission.BROADCAST_STICKY'
uses-permission:'android.permission.BLUETOOTH'
uses-permission:'android.permission.READ_EXTERNAL_STORAGE'
uses-implied-permission:'android.permission.READ_EXTERNAL_STORAGE','requested WR
ITE_EXTERNAL_STORAGE'
uses-feature:'android.hardware.bluetooth'
uses-implied-feature:'android.hardware.bluetooth','requested android.permission.
BLUETOOTH or android.permission.BLUETOOTH_ADMIN permission and targetSdkVersion
> 4'

[...]

 

 

In the Poweramp's manifest I found :

    <uses-permission android:name="android.permission.BLUETOOTH"/>

IMHO , You should add (at least) :

    <uses-feature android:name="android.permission.BLUETOOTH" android:required="false" />

(or change the min sdk aka "Special handling for Bluetooth feature" )

 

Is There Anybody Out There ?

 

Thanks !

Link to comment
Share on other sites

Oh, I know that and more...I'm also a dev.

I simply try to help you to make Poweramp more playstore compatible for devices without bluetooth.

It's just a stupid little detail ... I give up. I'm probably lost in translation.

Have a Nice day.

Link to comment
Share on other sites

The "permission" is not related to "feature". Poweramp in fact uses BT feature (it detects BT and uses some code to handle it). So we can't only make it optional.

Still, we have plans to get some device without BT and try to optimize Poweramp for it. Expect it in 2-3 builds from now.

Thanks!

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...