After a lot of searching I cannot find the answer to this. My fire tv app was rejected by Amazon because the app doesn't appear under settings > manage installed devices in Fire OS. What is odd is this is not an issue for Android TV and I can see it in the app manager in setting there. Any idea what I could be doing wrong for the fire tv devices? Amazon has been zero help.
Thanks!
The issue is amazon only supports part of the Android Leanback Support Library. How we are supposed to know everything it does or does not support is unknown to me and is a really poor implementation on Amazon's part.
https://developer.amazon.com/public/solutions/devices/fire-tv/docs/amazon-fire-tv-differences-from-android-tv-development
"Fire TV supports some but not all of Android’s Leanback Support Library. Fire TV uses TV-specific UI components from Leanback, and Leanback widgets will work, but if you tag an activity for the Leanback Launcher, the activity will not work. Specifically, Fire TV does not acknowledge the activity category CATEGORY_LEANBACK_LAUNCHER."
I would recommend being cautious of your reliance on android leanback support with fire tv which really hurts code reusablity for software developers. Your app will still work but you may be missing the entry in settings like my current issue. Hopefully Amazon adds better support for the leanback support library going forward.
Related
I have developed an media app for android phone. I have to make that app compatible for android automotive (not auto). Can anyone please explain the steps required for this. I have checked the Android AOSP site, and my app does not require the car or the other apis mentioned on that site. (I don't know if those are required to make the app compatible)
I don't think that there are any rules or constraints for implementation for Android Automotive provided yet.
There is a list of criteria for designing apps for Android Auto:
https://developer.android.com/docs/quality-guidelines/auto-app-quality
I would assume that for Android Automotive some of the criteria will be also applied as they concern UI and functionality from the driver's perspective.
NOTE: I think some guidelines might be defined soon since Google is finally going to support Android Automotive in Android Studio (similarly as they did for Auto).
For design guidelines, please refer to g.co/automotive-design
For technical/testing guidelines, please refer to https://developer.android.com/training/cars/media/
For playstore review / quality guidelines, they are not published yet
If i want to write an app that supports all casting mediums mentioned in the title of this question, do i need to implement all the sdk's separately or do any of the sdk's have a way to wrap the functionality of the other ones?
Each SDK is specifically for that protocol / product. Vizio, Chromecast, and Android TV all support Google Cast so you can use one SDK for that.
One Cast works, you can use this guide to learn how to also support Samsung Smart View.
I was requested to develop an Amazon Fire TV app, but I find difficult to understand the steps required to get on track.
As specified by the Amazon documentation, the previously available Fire TV SDK add-on is now deprecated, and they suggest to just use the Android v17 Leanback Library.
To date, I do not have (yet) a Fire TV, and the official documentation is very poor and rather confused; I'm not able – then – to understand whether "pure" Android TV apps are fully compatible with Fire OS 5, so that developing for the Fire TV is actually the same as developing for a generic Amazon TV (from the SDK, to the virtual testing process).
In the case it isn't, what are the different steps I have to take into account?
You should start with using Android v17 Leanback Library. There is a sample app available from Google that uses leanback library. Few things you might need to check for firetv like speech recognition (SearchFragment in the leanback library) is currently unsupported
Fire OS 5 includes both support for Android TV functionality and the
leanback support library. Speech recognition (SearchFragment in the
leanback library) is currently unsupported.
and global search which is not customizable for individual apps for firetv
Global search is provided system-wide and is not customizable for
individual apps. Developers may implement their own in-app search, but
it is not included in the global search function.
Also try to follow pre-submission assessment guidelines and developer FAQs when developing for a firetv.
The fragment is included in android.support.v17.leanback.app.GuidedStepFragment which is apart of Leanback library.
I think Leanback is for Android TV, will GuidedStepFragment work if i try to implement it in a mobile device?
Here is an example of the fragment in action: https://youtu.be/RhXuihvQ4Lg
Leanback is a library specifically designed for TV, as stated on developer.android.com:
v17 Leanback Library
The android.support.v17.leanback package provides APIs to support building user interfaces on TV devices. It
provides a number of important widgets for TV apps.
But Nothing prevent you to use the widgets available in the library in your mobile app for Android 4.2 and higher. You will probably have to make some adaptations since the Android TV have a different kind of interaction (TV remote and game controller) compared to the mobile device.
You can make a quick test of the GuidedStepFragment running the Android TV Leanback example on your mobile device and selecting:
More Samples > Guided Step First
I know iOS 7.0 introduced "Managed App Configuration", that makes it easy to support configuration of an enterprise application by a variety of MDM solutions.
Is there a similar thing in Android?
I noticed that in the Google For Work help section it is mentioned, but for the life of me, I could not find how to implement support for it.
https://support.google.com/googleplay/work/answer/6257696?hl=en&ref_topic=6137710
Should I implement "App Restrictions" as mentioned here?
If so, how can I support devices with Android versions prior to Lollipop?
http://www.appconfigforenterprise.org/dev-center.html
There is a website called AppConfig. It explains how it works both in Android and iOS and describes the Development steps. I'm also new to this field, but yes, as far as I know you need to implement App Restrictions.
And here is the Developer Training from Google, about Android for Work.