Forum Xamarin Xamarin.Android

Nexus 7 (and non phoneTablet) problem

JohnMurrayJohnMurray GBMember ✭✭

My Mandroid app was developed for smartphones and it tries to use WiFi first then checks telephony manager - I solved a crash problem on non telephone tablets by checking for null in the telephony manager - What I am puzzled about is this - If you say on upload to PlayStore that your app requires access to the telephone services will it then exclude the app from all Android tablets which dont have a sim card?
It doesn't seem to be the case but I have a problem - users download the app to a fresh Nexus 7 without sim card and the app refuses to function - then they uninstall it and reinstall it - this time the Google installer requests permissions - which it didnt the first time - if the user accepts it all works fine. I am not sure if the two issues are connected - and it has only started happening on 4.2.2 machines I've sent a query to Google but you know what they're like - So if anyone has any insights I'd love to hear them


  • rmaciasrmacias USBeta, University ✭✭✭✭✭

    To answer the first part of your question, certain permissions that you state in your AndroidManifest.xml file will imply certain feature requirements. For example, if you specify:

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

    by default, Google play will imply that the android.hardware.telephony feature is required, and will not be available for download to devices that cannot connect to cellular services. However, if you would still like this app to be available to those devices, you can explicitly state that telephony is not required by adding:

    <uses-feature android:name="android.hardware.telephony" android:required="false" />

    This will tell Google Play that even though your app will access telephony, it is not a requirement and can run on devices that don't have this capability.

    As for your second question, I've never see this behavior before. Is there any more info you can share??

    Also, here's the documentation that explains how permissions imply features.

  • JohnMurrayJohnMurray GBMember ✭✭
    edited May 2013

    many tx Ruben
    can you therefore confirm that if I replace

    "uses-permission android:name="android.permission.READ_PHONE_STATE" "


    "uses-feature android:name="android.hardware.telephony" android:required="false" "

    that might have some bearing on the problem ?

    What is puzzling me is that the former is generated automatically in the manifest by clicking on the check boxes of what one believes one's application requires in project options - this menu driven approach in Xamarin studio does not seem to be able to generate the line that you suggest
    i.e. user-permission....

    What I mean is that clicking on the project options in Xamarin studio only allows you to check boxes related to 'permissions' and does not generate a manifest which has <uses-features....

    So I think I am asking ... do I always have to set this manually in the manifest?

    nevertheless many tx for your help
    John Murray

  • rmaciasrmacias USBeta, University ✭✭✭✭✭

    No you wouldn't replace it, you would add it to your AndroidManifest.xml.

    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
    <uses-feature android:name="android.hardware.telephony" android:required="false" />

    You won't be able to add it through the properties window, so you'll have to open it up manually and add it. Also there could be other user-permissions that are implying certain feature requirements. Read the link I posted. Cross reference that with the permissions of your app and add "use-feature" statements as necessary.

  • rmaciasrmacias USBeta, University ✭✭✭✭✭

    Also one more thing. I noticed when releasing apps to Google Play, things are a little wonky once the app becomes visible several hours after they are published. Weird things happen, but usually go away after a few more hours. I guess it has something to do with the not being "fully published" for whatever reason. Especially with the Nexus 7.

  • JohnMurrayJohnMurray GBMember ✭✭

    many many tx - if you eve r find yourself in the Channel islands I owe you a beer !!

Sign In or Register to comment.