快上网专注成都网站设计 成都网站制作 成都网站建设
成都网站建设公司服务热线:028-86922220

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

androidTV相关开发指导1

谷歌电视相关开发api

网站建设公司,为您提供网站建设,网站制作,网页设计及定制网站建设服务,专注于企业网站设计,高端网页制作,对成都航空箱等多个行业拥有丰富的网站建设经验的网站建设公司。专业网站设计,网站优化推广哪家好,专业seo优化优化,H5建站,响应式网站。

#### google tv 1 设置tv App

1.升级开发工具到最新版本

2.manifest设置

 2.1 android:theme="@style/Theme.Leanback"

 2.2

    android:name="com.example.android.TvActivity"

    android:label="@string/app_name"

    android:theme="@style/Theme.Leanback">

   

     

     

   

 

 

3 触屏支持 不支持触屏操作

              android:required="false" />

  

  

4. 提供一个横幅用于所有的activity,或者针对每一个activity设置属性

    ...

    android:banner="@drawable/banner" >

    ...

5.添加Android TV 支持库 目录 /extras/android/support/

5.1 v17 leanback library  提供tv用户界面部件,特别用于媒体应用

5.2 v7 recycleview library 高效管理长列表内容内存,leanback需要

5.3 v7  cardview library 显示信息卡片 特别是媒体图片和描述

但是,以上支持库不是必须使用的,但是推荐在媒体分类的浏览的应用中使用。

如果你使用了leanback 包,就不用使用 v4包,v7reycle包河v17 leanbackback

包。

v17包包含一些资源文件,必须把那些资源文件导入到你的app。

和v7包的加入方式一样:https://developer.android.com/tools/support-library/setup.html#libs-with-res

6 硬件相关检测 api13

UiModeManager uiModeManager = (UiModeManager) getSystemService(UI_MODE_SERVICE);

if (uiModeManager.getCurrentModeType()==Configuration.UI_MODE_TYPE_TELEVISION) {

 // tv 模式

}else if (uiModeManager.getCurrentModeType()==Configuration.UI_MODE_TYPE_CAR) {

//汽车

}

7.在tv上,不支持的硬件特性

触屏操作 , 拨打电话,视频,近场通信,gps定位,麦克风支持

Hardware Android feature descriptor

--------------------------------------------------------------------------------

Touchscreen android.hardware.touchscreen

Telephony android.hardware.telephony

Camera android.hardware.camera

Near Field Communications (NFC) android.hardware.nfc

GPS android.hardware.location.gps

Microphone android.hardware.microphone

设置:

        android:required="false"/>

        android:required="false"/>

        android:required="false"/>

        android:required="false"/>

        android:required="false"/>

        android:required="false"/>

如果,设置为true,你的程序可能就不会出现在电视设备选项,和出现在tv设备的主屏幕上。

8. 权限permissions 和硬件特性

Permission 权限 Implied hardware feature需要硬件特性

--------------------------------------------------------------

RECORD_AUDIO android.hardware.microphone

CAMERA android.hardware.camera and  android.hardware.camera.autofocus

ACCESS_COARSE_LOCATION android.hardware.location and android.hardware.location.network

ACCESS_FINE_LOCATION android.hardware.location and android.hardware.location.gps

8.1 检查系统是否支持这些硬件特性

// 检查是否支持电话特性

if (getPackageManager().hasSystemFeature("android.hardware.telephony")) {

    Log.d("HardwareFeatureTest", "Device can make phone calls");

}

// 检查是否支持屏幕滑动

if (getPackageManager().hasSystemFeature("android.hardware.touchscreen")) {

    Log.d("HardwareFeatureTest", "Device has a touch screen.");

}

8.2 Touch screen android不支持的触摸屏,因为电视观看环境不统一。

8.3 Camera ,虽然没有摄像头功能,但是还是支持图片的查看和编辑。

// Check if the camera hardware feature is available.

if (getPackageManager().hasSystemFeature("android.hardware.camera")) {

    Log.d("Camera test", "Camera available!");

} else {

    Log.d("Camera test", "No camera available. View and edit features only.");

}

8.4 GPS功能

android不支持GPS功能,但是你还是可以要求用户搜索一个地址配置到电视设备上。,

// Request a static location from the location manager

LocationManager locationManager = (LocationManager) this.getSystemService(

        Context.LOCATION_SERVICE);

Location location = locationManager.getLastKnownLocation("static");

// Attempt to get postal or zip code from the static location object

Geocoder geocoder = new Geocoder(this);

Address address = null;

try {

  address = geocoder.getFromLocation(location.getLatitude(),

          location.getLongitude(), 1).get(0);

  Log.d("Zip code", address.getPostalCode());

} catch (IOException e) {

  Log.e(TAG, "Geocoder error", e);

}

9 手持设备电视控制器 Handling Controllers

  

 


本文标题:androidTV相关开发指导1
URL分享:http://6mz.cn/article/pshcsc.html

其他资讯