I want to restrict device below 1GB RAM don't install my APP. how to acheive this?
I trying to allow apps only for 2GB RAM and above devices in playstore or kotlin code. is there any Way?
Related
When I make create a Virtual Android Device on Android Emulator with Google Play API 27, it does not allow me to give a custom amount of RAM size. Instead it takes a default 1536 MB RAM and 800 MB of Internal Storage. I don't understand why....
I solved this issue by changing the value in the config file.
In the list of virtual devices (in android studio) click on the arrow on the right side of your device and click on "Show on Disk".
In the folder should be a config.ini file, open it and change hw.ramSize=1536 to Example: hw.ramSize=4092
I expirienced some problems with the Android Virtual Device (loading times) and I started using Genymotion. I suggest you to do so. It is easy to use and full compatible with Android Studio.
As per the update for Oreo 8.1 there might be a restrictions due the feature of Android Oreo (Go edition)
Features in the Android Oreo (Go edition) configuration include:
Memory optimizations. Improved memory usage across the platform to ensure that apps can run efficiently on devices with 1GB or less RAM.
Flexible targeting options. New hardware feature constants to let you target the distribution of your apps to normal or low-RAM devices through Google Play.
Google Play.While all apps will be available on devices running Android Oreo (Go edition), Google Play will give visibility to apps specifically optimized by developers to provide a great experience for billions of people with the building for billions guidelines.
this might be restricting the emulator to choose the best optimal option to run app on your virtual device.
I am facing one problem and i am not getting solution on internet. My problem is- in some devices like samsung and motorola which have android 5.0+ version i am unable to create work profile(TestDPC app on playstore). What's the reason please if anybody know explain it please.
This is the code checked by android at time of work profile creation-
PackageManager pm=getPackageManager();
System.out.println(" can create profile="+ pm.hasSystemFeature(PackageManager.FEATURE_MANAGED_USERS));
Is There an option to change that thing so that i can create a work profile in every device.
Thank you
There could be multiple reasons why a phone with Android 5.0+ would not support work profiles. The most common reason is too little ram. Google recommends a minimum of 1.5 GB of ram to support work profiles, but less ram may still work just with performance degradation.
I don't believe there is a work around for your situation, other than re-compiling the OS adding at a minimum the hardware feature android.software.managed_users. But obtaining the source may be difficult for a Motorola or Samsung phone.
In addition, the phone must not be configured as a low RAM device, i.e. ro.config.low_ram. And if only one user is supported, Google provides additional patches to support a managed profile for that single user. Google has much more detailed documentation for OEMs to implement an Android for Work device.
By checking code
pm.hasSystemFeature(PackageManager.FEATURE_MANAGED_USERS));
if device has a managed user than only it can create a work profile otherwise won't allow to create work profile.Device should have this managed user feature.
Use the adb command adb shell pm get-max-users
The Maximum Users depends on the Android ROM and the OEM of the device.
For Samsung & Motorola devices it's generally Maximum supported users: 1
For a Xiaomi device (sweet) running MIUI , it's Maximum supported users: 4
I want to develop some apps on Android and I need to buy an Android Phone or Tablet for testing my apps.
Which model should I buy?
Do you think it is better to buy a tablet directly? Just like iPad, I can test both HD and Normal apps on it easily.
Thanks.
Raymond
Android comes in numerous screen resolutions and sizes. So whatever phone you are buying you can test only for minimal number of user-group.
So buy any good phone with high hardware facilities to test functionalities. To test UI, the Android emulators will help you a lot. Create various screen size emulators and test your UI on them.
I think this link will help you to design for multiple screen sizes:
Supporting Multiple Screens
Why don't you try emulator? From my experience almost everything will work faster on Android device. Thus if something works ok on emulator it would probably work better on real device.
If you do want to buy some hardware I recommend a phone or tablet with good support from manufacturer. The device should work for a long time so it's good to be able to upgrade Android in the future. There is no sense in buying a phone with Android <= 2.3 if it has no chances for upgrades to 4.0+
Can I exclude a device from downloading my app from the android market by determining how much RAM the device has?
You can select individually the devices that don't have enough RAM and block them in the market.
You can't do it automatically, but you can do it by hand. You have that option after you submit your app to the market.
In any case you really should consider if you should have that requirement or improve the performance of your app. I think you should choose the second option :)
I am an iPhone developer that is about to dive into the Android market. The price of the development phone (Nexus 1 - $530) is quite high, so I thought to myself, "Why not spend $10 more and get something like the Dell Streak?". I haven't read any particular reviews on that device, but for an iPhone user that just wants a dependable device to develop on - what is the best fit? Ideally I am looking for a device that matches the experience that most Android users have - is that even possible?
If you can hold off just a little longer you could get a Samsung Nexus S which is the latest Android phone and will be shipping with Gingerbread (2.3).
I would suggest taking a look into statistics of device frequencies.
Android website provides http://developer.android.com/resources/dashboard/screens.html and OS versions.
But there are lot of other stats on the web, e.g.:
http://www.enterra-inc.com/techzone/android_statistics/
http://blog.tweetdeck.com/android-ecosystem
etc.
Any normal consumer-marketed android device can be used for application development - a developer phone is only needed if you want to modify the android platform and underlying linux itself (something that may also be possible by finding a way to root a consumer device)
To match the experience of most users, you probably want a recent device co-branded as a "google experience" device, ie one that comes with Android Market and the other google apps, which are not at present available for devices without that "blessing".
I would take a look at getting a motorola droid or droid 2 since they hold most of the android market share. I think this would provide the ideal user experience. I think the Samsung Nexus S will probably be THE android phone to have, but I dont think most people will have it for sometime.