android+cast+sdk,如何使用Android发现Chromecast设备?
>获取设备
获取您的
device whitelisted(您将需要设备序列号#和您的HTML5接收器的URL)
>你将被发送两个APPID(开发/生产)
>在您的开发环境中,请确保更新到Android支持库v18
>你将使用
MediaRouter
>初始化
import com.google.cast.CastContext;
Context applicationContext = …; CastContext castContext = new
CastContext(applicationContext);
>你需要一个MediaRouteButton
< android.support.v7.app.MediaRouteButton
android:id="@+id/media_route_button"
android:mediaRouteTypes="user"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="visible" />
import com.google.cast.CastContext;
import com.google.cast.CastDevice;
import com.google.cast.MediaRouteAdapter;
import com.google.cast.MediaRouteHelper;
import com.google.cast.MediaRouteStateChangeListener;
import android.support.v4.app.FragmentActivity;
import android.support.v7.app.MediaRouteButton;
import android.support.v7.media.MediaRouteSelector;
import android.support.v7.media.MediaRouter;
import android.support.v7.media.MediaRouter.RouteInfo;
public class MyCastActivity extends FragmentActivity implements MediaRouteAdapter {
private MediaRouteButton mMediaRouteButton;
private MediaRouter mMediaRouter;
private MediaRouteSelector mMediaRouteSelector;
private MediaRouter.Callback mMediaRouterCallback;
private CastDevice mSelectedDevice;
private MediaRouteStateChangeListener mRouteStateListener;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.my_cast_activity);
mMediaRouteButton = (MediaRouteButton) findViewById(R.id.media_route_button);
>构造一个CastContext.
mCastContext = new CastContext(getApplicationContext());
– 通过调用注册MinimalCastMediaRouteProvider
MediaRouteHelper.registerMinimalMediaRouteProvider(),传递
实现MediaRouteAdapter接口的对象.
MediaRouteHelper.registerMinimalMediaRouteProvider(mCastContext, this);
mMediaRouter = MediaRouter.getInstance(getApplicationContext());
通过调用构建MediaRouteSelector
MediaRouteHelper.buildMediaRouteSelector().有两种形式
这个方法:第一个没有参数,第二个需要一个
接收机应用程序名称和/或消息协议列表.这个
后一种形式用于执行与之相当的设备过滤
由SDK的ApplicationSupportFilterListener完成.
mMediaRouteSelector = MediaRouteHelper.buildMediaRouteSelector( MediaRouteHelper.CATEGORY_CAST);
>将MediaRouteSelector分配给MediaRouteButton.
mMediaRouteButton.setRouteSelector(mMediaRouteSelector);
>实现MediaRouter.Callback并将其添加到MediaRouter中,
将CALLBACK_FLAG_REQUEST_DISCOVERY传递给MediaRouter
发起发现当用户选择或取消选择路由时
GUI选择器,这个回调接口上的相应方法会
被调用.
06007
>在MediaRouter.Callback的onRouteSelected()回调中,进行调用
到MediaRouteHelper.requestCastDeviceForRoute()获取一个
所选媒体路由的CastDevice对象,以及
MediaRouteStateChangeListener,每当需要收到通知
路线体积或连接状态变化.
06008
}
android+cast+sdk,如何使用Android发现Chromecast设备?相关推荐
- android update sdk --no-ui,CircleCI Android constraintLayout不起作用
我现在正在将CircleCI用于我的项目.我也在我的项目中实现新的constraintLayout.现在我被CircleCI大楼困住了.它在gradle -dependencies运行时向我显示: F ...
- android集成sdk 马甲包,Android 马甲包制作流程
一.马甲包的制作流程 1.配置马甲包的applicationId以及应用名称 在app的build.gradle文件中添加马甲包的配置 android { signingConfigs { confi ...
- android集成sdk 马甲包,Android配置马甲包
神马马甲包?可以穿的么?人可以穿么? 无鞋... 大家听得最多的还是马甲账号,道理差不多,注册在多账号,注册的人还是你自己. 这里的马甲由宿主APP,通过配置gradle,生成与原APP除了包名.包I ...
- android版本sdk api对应,Android API Level与sdk版本对照表
API等级1: Android 1.0 API等级2: Android 1.1 Petit Four 花式小蛋糕 API等级3: Android 1.5 Cupcake 纸杯蛋糕 API等级4: An ...
- android美颜sdk,Android美颜SDK能否占据现有的市场
原标题:Android美颜SDK能否占据现有的市场 随着华为手机品牌的崛起,Android系统开始受到大众的疯狂信任,同样的Android美颜SDK也随之被更多平台看重.那么按照当下的发展情况看,An ...
- android10安装包,设置 Android 10 SDK
Android 10 是一个主要版本,包含可用于扩展应用的各种特性和功能.Android 10 还提供了行为变更(针对以 Android 10 为目标平台的应用和所有应用)以及隐私权变更,有助于延长电 ...
- Android 第三方SDK整理
Android 第三方SDK整理 此文章为转载,仅用于学习使用,具体内容访问此链接 import java.util.HashMap;public class Sdk {/***by:默小坑2020. ...
- android+studio入门指南+pdf,android+studio使用指南v0.1.pdf
androidstudio使用指南v0.1 <Android Studio入门指南>作者:毕小朋 博客:/wirelessqa Android Studio入门指南v0.1 作者:毕小朋 ...
- java ee 6 sdk中文版,Java EE 6 SDK+Eclipse JEE+Android ADT-Fun言
很多时候,为了生存,需要不断的了解,学习新东西,于是头脑塞满了便便- -|||- -----------------------.. 按照自己的理解: JDK = Java Develope Kit ...
- OpenCV android sdk配置OpenCV android NDK开发实例
OpenCV android sdk配置OpenCV android NDK开发实例 [尊重原创,转载请注明出处]http://blog.csdn.net/guyuealian/article/det ...
最新文章
- (互联网)Yahoo邮箱的改版
- ACL 2019 | 基于知识增强的语言表示模型,多项NLP任务表现超越BERT
- Linux之Server环境配置
- P3466-[POI2008]KLO-Building blocks【Treap】
- IBM SOA[ESB,BPM,Portal等]基础架构图解
- 初识Java中注解的分类
- 浅谈nodejs中的Crypto模块
- 往AWS上传文件[超快]
- CentOS5.6系统中安装并使用USB无线网卡(配置成功) 转
- python缩进格式错误修改_Python,意外的缩进错误解析,Pythonunexpectedindent,解决,方法...
- 微信小程序毕业设计 基于微信小程序外卖点餐系统开题报告
- ldoce5 android,朗文Longman 5词典界面修改优化补丁终极版(直接显示词典功能)
- Wilcoxon符合秩和检验
- 开源软件的版权与许可证
- web 前端入坑第一篇:web前端到底是什么?有前途吗
- linux curl证书错误,curl – SSL证书错误
- linux phpcms,PHPCMS任意文件下载之exp编写
- 做QQ群霸屏的,我们盯上你了
- opencv 手选roi区域_【opencv学习笔记六】图像的ROI区域选择与复制
- PAMI19 - 强大的级联RCNN架构《Cascade R-CNN: High Quality Object Detection and Instance Segmentation》