• Skip to main content
  • Skip to secondary menu
  • Skip to primary sidebar
  • Skip to footer
  • Home
  • About
  • Projects
    • GStaticMap WP Plugin
  • Contact
  • Privacy Policy

Lorenz Blog

All About Web & Mobile Application Development

  • Featured Articles
  • Gadgets
    • Android
    • Blackberry
  • Programming
    • Android
    • PHP
    • Java Script
    • MySQL
    • Postgresql
    • Flex
    • Web
  • Software
    • Mac OS
    • Windows
    • Linux
  • Web
You are Here » Home >> Information Technology >> Programming >> Android >> Solution to Make an Android App Visible to All Devices in Google Play When Using Specific Feature

Solution to Make an Android App Visible to All Devices in Google Play When Using Specific Feature

February 11, 2014 by Lorensius Londa Leave a Comment

As we know, Google Play filters android applications that are visible to user by comparing features that required by the application with the features available on the device. Android requires specific tags to be declared on manifest file when using a  specific feature. Commonly use tags are <uses-permission> and <uses-feature>. But improperly use of these tags could make our application  only visible to a small range of devices though it was intended to reach out a large range of devices.

For example, if we use phone call feature in our application , it requires <uses-permission android:name=”android.permission.CALL_PHONE”/> to be explicitly declared in manifest file. By using this <uses-permission> tag, Google Play will only show our application to devices that have phone feature, it will not be visible to most of tablet devices that do not have phone feature. This problem happened on some of my applications. I was so confused why so many users complained that they could not find my applications on Google Play Store. 

After comprehensive searching and reading on android sdk documentation, i found that properly use of <uses-feature> tag and <uses-permission> tag can easily solve the problem. The key is by declaring the <uses-feature> tag with android:required=”false” . So, from our case, to enable phone call feature:

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

As we can see, we have to explicitly declare the phone feature by using <uses-feature android:name=”android.hardware.telephony” android:required=”false”>. android:required=”false” tells the Google Play to disable filtering based on phone feature support, for all devices.

Remember we have to check manually the avaiability of  the feature before using it. Use PackageManager’s hasSystemFeature(String feature) to check the feature availability.

PackageManager packageManager = getPackageManager();
String phoneNumber = "124567";

if (packageManager.hasSystemFeature(PackageManager.FEATURE_TELEPHONY)) {
   //call phone
   Intent intent = new Intent(Intent.ACTION_CALL);

  intent.setData(Uri.parse("tel:" + phoneNumber));

  startActivity(intent);
}

[ad#ad-720×90]

Facebooktwitterredditpinterestlinkedinmailby feather

Related posts:

  1. How to Send Message to Google Cloud Messaging (GCM) Server Using JSON and PHP
  2. How to Programmatically Scan or Discover Android Bluetooth Devices
  3. How to Use Multi-User Feature in Android Jelly Bean
  4. How to Setup Google Apps Email Client on Android

Filed Under: Android Tagged With: Android, google play, uses feature, uses permission

About Lorensius Londa

Passionate web and mobile application developer. Co-founder of TRUSTUDIO, loves programming, Android, aviation, travelling, photography, coffee and gym mania.

Reader Interactions

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Primary Sidebar

About Me

A husband, father of two, passionate software developer, diy lover and home baker who loves to learn new things. Read More…

  • Facebook
  • GitHub
  • Google+
  • Instagram
  • Twitter
  • YouTube

Featured Articles

How to Setup MQTT Server Using Mosquitto and Libwebsocket on Freebsd

Blue Bamboo P25 Printer Android Demo Application With Source Code

Simple JSON RPC Client for Android

How to Send Message to Google Cloud Messaging (GCM) Server Using JSON and PHP

Footer

Recent Comments

  • Aditya Dabas on About
  • Ayten Göksenin Barutçu on How to Make Android Map Scrollable Inside a ScrollView Layout
  • mang jojot on About
  • Hussain on How to Programmatically Scan or Discover Android Bluetooth Devices

Recent Posts

  • How to Fix Blank Screen on WordPress Add/Edit Post Page
  • How to Programmatically Restart the ESP32 Board
  • How to Get Hardware Info of ESP32
  • How to Setup MQTT Server Using Mosquitto and Libwebsocket on Freebsd

Latest Tweets

To protect our users from spam and other malicious activity, this account is temporarily locked. Please log in to https://twitter.com to unlock your account.

Copyright © 2023 · Magazine Pro on Genesis Framework · WordPress · Log in