I'm writing an android application and i need to detect what version of Samsung Experience the device is running to do a special check. Galaxy S8 with android 7.0 allows the navigation bar to be on the left. And from my understanding only android 7.1 allows that. My application apply margins based on android version and I need to check if the version is 7 and we are running Samsung Experience 8.1.
Here you can find an example of About phone.
Another posibility is detect the position of the navigation bar on the screen (right or left). I could not find a way to do it.
thanks in advance.
I tried reading with Build.MODEL, Build.TAGS, Build.MANUFACTURER.
Take a look at Checking external app version name in android
I don't have a Samsung Galaxy S8 available at the moment, but I think you can check the version of packages com.sec.android.app.launcher or com.samsung.android.mobileservice.
Related
Can we based on Android Studio Emulators for different display screens create the App? Can we trust Android Studio Emulators ?
I mean for example whatever that's displayed on the Nexus 7 Emulator, would be exactly the same as it is really displayed on the real Tablet itself.
Yes, we can.
I've compared lots of emulators vs real devices - they are almost identical
Android Emulators give you a basic idea of different layout. Padding and pixel adjustment may be different in real device due to difference between system screen resolution and real device screen resolution.
The Android Emulator is built hand-in-hand with the Android platform for the Android SDK. Moreover, the latest Android Emulator system images (API 24+) 100% pass the Android Compatibility Definition, so that you can have even more assurance that app behavior will be exactly the same between the Android Emulator and a physical Android device.
I have wrote an application using android 2.2 in eclipse.
My app is working fine on the samsung galaxy mini android 2.2. However, it is not working on samsung galaxy s3 android 4.1.
My app is only taking up half of the screen on the samsung galaxy s3.
Why is my app not working on higher resolution devices?
How can i make the app compatible with other devices running
different versions of android?
Sounds like it's most likely you just have a LinearLayout at the top of your layout XML and it just takes up less space on the S3.
I would advise taking a look at the two links below; if you want a specific starting point, you could adjust your layout to match_parent and use the l/m/h/xhdpi folders to place different size graphics in. Also worth checking whether you are using dp or dip (density independent pixels)
http://developer.android.com/training/multiscreen/index.html
http://android-developers.blogspot.co.uk/2012/11/designing-for-tablets-were-here-to-help.html
The best way to ensure that your app will work on other devices is to get access to other devices and test your application on those devices before you release.
Another way is to make sure that you are targeting the correct SDK you need to target and use the AndroidSupportLibrary when needing to have backwards compatibility.
For us to help with your specific problem we would need more details as to what exactly is going on, but make sure the packages and libraries you are using are compatible with the android versions you are trying to target.
And make good use of the AndroidSupportLibrary.
Did you check the resolution compatibility? This seems more like an Android Manifest issue then an Android version issue.
I developed an Android app and released it on Google Play yesterday. The only problem is that I can't install the applicatien from the market on my own phone (HTC DESIRE/BRAVO). It is listed to be compatible with htc desire but when I try to download it it says it isn't.
I rooted my phone and have BCM ICS 4.0.3 CM9 installed. Could this cause the issue? How can I make it compatible? Thanks
Edit: Is it possible to adjust something in the code?
Yes a custom rom can make apps appear to be incompatible even when they are. A common issue is when it uses a non standard screen density setting in an attempt to gain more screen real estate.
If you do have a modified density, you could try setting it back to the default for your device. http://wccftech.com/article/increase-screen-dpi/
Our app integrates with the Quick Contacts Badge. Click on the badge and our icon appears in the list of icons.
Or at least it does unless you run it on say, the latest android release for the HTC Desire HD (android 2.3.3, sense 2.1). On these phones the icon just won't show up. Facebook and Skype seem to still have the integration working though, so it isn't the case that HTC have simply broken it. Equally, our stuff works great on other android 2.3.4 phones.
Anybody out there have a clue what trick I might need to get this working?
Thanks in advance
Phil
I just put an app on the market and it is showing on all phones I have except for my Acer Liquid Mini. This one:
http://www.gsmarena.com/acer_liquid_mini_e310-3711.php
I have phones with the same res screens, Android 2.2, and close enough to the same hardware specs yet this is the only phone that it doesn't show for. It is running on factory defaults. When I try to install by the browser Google just says that the app isn't compatible and no more information.
I have the minSDK set to 4, maxSDK set to 10, I'm not specifying any screen resolutions in the Manifest (as recommended by the Android Doc post Android 1.6) and install location is set to "auto".
Does anyone have any ideas?
Apparently Google has problems with knowing the hardware constraints on some devices, such as this one, my Desire with the 2.3 upgrade and my Irish Galaxy 10.1" tab. They are working to sort it out
You could try deploying you app on appslib, they got a list of devices supported. You can choose a set of features required by your app and see the devices that will be able to run it.
I can't promise that both Android Market and appslib will give you the same results, i.e. will associate a device to the same requirements but that's a track to follow.