The AOSP Automotive documentation states that third party apps should use the Car API("VehicleNetworkService. Controls vehicle HAL with built-in security. Access restricted to system components only (non-system components such as third party apps should use car API instead)",https://source.android.com/devices/automotive).
That is quite confusing because the android developer documentations state, that the only supported type of app is a media app which does not even draw its own UI except sign in and settings(https://developer.android.com/training/cars/media/automotive-os).
So is there a possibility to write other apps than media ones that may even use the car api to read the vehicle speed for example?
Car SDK is now released to developers and many Car APIs can be reached by third party apps, however privileged apps i.e. apps that are part of android system image and designed as privileged, can access more functionality that 3rd party apps. The access is gated by Android permissions.
See How to utilize Android Car API inside an app for my answer.
Of course you can develop any app running in Android Automotive Enviroment (i dont want to called it Android Automotive OS because it simply Android )
Google only given some advice/rules how to design your app in the way it good for Automotive product. Login, Car status check , Driver distraction limit...vv.
For 3rd developer sure you have to use Car API what car OEM offer and might require OEM's SDK also..
Goolge as of now only provide some kind of permisison that you can add to your app manifest. Then hopefully it can get correct information if OEM supported in thier IVI.
adb shell pm list permissions | grep car
I'm a newbe in SmartTV app development and trying to figure out if the related devices (SmartTVs) through their SDKs of the two major vendors Samsung and LG support the following when it comes to a custom implemented app:
Is it possible to auto start the app on TV start/restart? and if yes
how? Does someone know any reference in their APIs of how it is done?
if there is a newer version of my app how does the updates takes
place? Is it possible to automatically update the app or at least
send some short of notification for software update needed?
Thanks in advance
I add some notes:
auto start is possible in some countries on Samsung as ticker app. This ticker app is available only in some countries (I think in Korea and U.S., but I am not sure). If you want ticker app you can switch samsung to the "hotel mode" in the samsung service menu.
auto update is available when you set the flag in config.xml
<autoUpdate itemtype="boolean">y</autoUpdate>
There is no way to achieve autostart in SDK distributed by vendors.
But there is at least one app, that starts with TV (Some European
IPTV provider, can't remember name). You need to contact with
vendors support and find out for yourself.
Samsung apps distributed
and updated through its store, you upload updated version on seller
portal and its distributed on tv. Users are prompted to update app
when new version is available.
LG hosted apps you can update yourself, packaged apps - same as with Samsung.
In my app i want to implement widevine drm. I got to know from some website that samsung smart tv supports widewine drm. But i didn't got how to use the drm in my smart tv app. Can anyone help me in how to use the widevine drm in samsung smart tv app.
The guide How_to_use_Widevine_solution_in_Samsung_App_v1.6.pdf is attached to forum message.
This forum message contains example of widevine playback url.
If you have contract with Widevine, they supply documentation and integration samples.
We have developed a new OTT Streaming STB build on an Android platform. How do I get it to operate the Google TV system so that the Apps built for GTV will load and run correctly?
Please note: I am NOT looking for advice on how to get an app onto the GTV platform - what I need is to get the Google TV platform on my STB.
Thanx
Nick
Google TV is not open source. It is built in a different way to core Android, you can't just add it to your build. Nearly anything built for Google TV will work on other Android devices such as yours. The Google Play device filtering is your real problem.
I want to develop a SmartTV application for the GoogleTV platform and i've been browsing trough the GoogleTV Guidelines (https://developers.google.com/tv/android/).
However, i don't want GoogleTV to be my only platform. I also want the same app to work on devices like Samsung SmartTV and/or LG SmartTV.
But do the guidelines from Google conflict with Samsung guidelines and does the code of my application need a lot of rework to work on other devices?
I'm editing my answer. I just checked the Samsung website and, I'm happy to say, they threw out all the junk.
They use to have a number of different, non-interchangeable, coding languages. And none of them really worked on the TV's of the other manufacturers either. This is most likely the reason why few applications were ever developed for those platforms.
Now they are supporting basic javascript. So, you have the opportunity to build yourself a TV web page and load it up as an application on Samsung and potentially run it from the Google-TV browser. However, I would verify whether your application requires specific HTML5 features (such as offline support) that may not be implemented in the Android-like browser version running on Google-TV. Having said that, you can always build an app that loads locally on Samsung and runs from a remote server on Google-TV?
... for some historical perspective on how we go to where we're at you can continue reading....
The implication of each manufacturer having their own unique OS creating developer fragmentation was probably predictable to them but they were likely working in a panic. After they became aware of the Apple TV when the first patents were make public in 2008 they understood the longer term impact if Apple provided hundred of thousand of applications worth of content and they had nothing to compete. So they got together and decided on a standard they would implement that would provide a non-fragmented solution allowing any app to run on the TV's of any supporting manufacturer. AKA: they got it right.
In 2009 a good number of them announced support for the Yahoo Connected TV standard. However, by 2010 the development framework, app store, etc that was promised had not materialized. This is likely when they all went in their own direction (although you can still buy Yahoo Connected TV sets from Samsung, Sony, LG, Vizio, and Panasonic today).
With the implementation of the Google-TV Market and the ability of developers to transition existing apps to Google-TV apps with only 20% or so of the effort of creating new (thus lowering the cost and supporting the business case for a TV version) that they have a solution that meets their original requirements.
Now, there's certainly going to be a little 'bitten once twice shy' coupled with revenue sharing discussions and perhaps the impact of Google being a hardware manufacturer (Motorola Mobility) but, at the end of the day, the inevitable is inevitable. They either take Google-TV or create their own, very close, must run existing applications, version of Android.
PS: I didn't look at the other manufacturers site.
For my understanding core components like the Player and Remote Control Management are platform specific.
You would need to use a configuration file and implements these components independently for each platform.
Alternatively you can use some cross platform SDK.
Searching on Google for "smart tv app development" I found out:
Joshfire Smart TV SDK
http://www.joshfire.com/products/
Works on Google TV and Samsung
But not on LG
Mautilus Smart TV SDK
http://www.mautilus.com/knowhow/smart-tv-application-development/
As written in their website it covers
LG Netcast 2012
Samsung 2012 / 2013 models.
I hope it can helps.
orangeejs is a new open source project aims to ease the pain of cross platform smart tv app development. The target platforms are latest model of samsung/lg/android/ios.
There is a framework developed by BBC and called TAL. It aims to help you with cross-platform development. All their Smart TV apps were developed using this library so take a look.
First of all if you consider to develop for many TV platforms see the:
https://developers.google.com/tv/web/lib/jquery/
It's jQuery library for Google TV, so you can develop application in HTML/JavaScript just like in Samsung and LG.
Of course there are the differences in key handling, video player, event handling so you will need to develop the framework which cover all this differences.
There are few open source frameworks out there but not mature enough to use it "out of the box".
for example: http://framework.joshfire.com/
You might want to take a look at cloudee-couch which is open-sourced by Boxee. This example/framework is built on top of Spine.js. Base classes take care of key handling, focus, and oauth authentication.
It's not a big deal to make an application for the smart tv platform that supports across the devices. Now the industry is filled with a lot of smart tv app development companies with their unique functionalities and features to offer the customized app as per the business models. FYI I'd suggest you choose the best smart tv app builder from the list. Hope it will be helpful for the video content creators & business owners to stream across the tv.
VPlayed
Zype
Uscreen
Explore the complete list here Ref: https://dev.to/dwarak17/5-smart-tv-app-development-companies-to-develop-tv-apps-in-2021-1584
While both Samsung and LG have proprietary Smart TV systems, they also both support Google TV. If you create an app for Google TV, you'll only have to write it once and it will run on Samsung's Google TV's, LG's Google TV's, Vizio's Google TV's, and Sony's Google TV's.