适用于 AIR Android 应用程序的 Chromecast 和 ANE - 访问 android.os

Posted

技术标签:

【中文标题】适用于 AIR Android 应用程序的 Chromecast 和 ANE - 访问 android.os【英文标题】:Chromecast and ANE for AIR Android apps - Accessing android.os 【发布时间】:2017-08-17 06:51:48 【问题描述】:

我正在尝试为 android / AIR 应用程序提供 Chromecast 支持。 堆栈溢出中的前一个线程 (Chromecast & Air for Android Apps (AS3)) 建议此处的 ANE (https://github.com/renaudbardet/ANE-chromecast) 可以支持这一点。

但是;不是。

    AirCast.as 的第 19 行包含评论“起初我们只支持 ios,当 google 发布 cast SDK 时将实现 Android 支持”,第 23 行明确阻止了 Android 图书馆已有多年历史,无人维护 当我尝试使用它作为基础来解决较新的 API 时,我在尝试访问 CastDevice Java 类 (https://forums.adobe.com/thread/2292496) 时很快遇到了障碍

我的问题是这样的;

    为了访问 CastDevice,我需要调用 CastDevice.getFromBundle

    CastDevice mSelectedDevice = CastDevice.getFromBundle(route.getExtras());

    虽然我已包含此调用所需的所有 SDK 资产/类,但 CastDevice.getFromBundle 依赖于 android.os.Bundle

    没有可用于将其添加到 AIR 运行时的 JAR,因此 ANE 失败并显示

    java.lang.NoClassDefFoundError:解析失败:Lcom/google/android/gms/cast/CastDevice;

因此,就目前而言,任何在 Android 上将 Chromecast 与 AIR 和 ANE 一起使用的尝试都是行不通的。

有什么方法可以在 AIR/Android 上使用 Chromecast 来绕过这个限制?是通过找到一种方法来提供对 android.os 的访问(我承认这不太可能),还是通过避免需要它的替代设置结构?

谢谢, G

【问题讨论】:

【参考方案1】:

虽然这是一个老问题,但有一个新的 ANE 可能对 iOS 有所帮助。

你可以试试here

【讨论】:

以上是关于适用于 AIR Android 应用程序的 Chromecast 和 ANE - 访问 android.os的主要内容,如果未能解决你的问题,请参考以下文章

Adobe ANE 适用于 iOS 和 Android 设备,但不适用于 AIR 模拟器

适用于 Android 的 Upnp 本机扩展 - AIR

如何使用适用于 Android 的 Adob​​e AIR 设置 Admob

ActionScript 3 适用于Android的Adobe Air文件配置

适用于 Android 的 AIR 3 Native Extensions - 我/如何包含第 3 方库?

css iPhone 6 Plus和iPad Air 2媒体查询(Retina HD显示屏)。也适用于类似的Android设备。