如何在 Nativescript 中创建 MediaSession?
How can I create a MediaSession in Nativescript?
我正在尝试使用 Nativescript 创建一个 Android 应用程序。到目前为止,我做得很好,除了一件事(而且 - 考虑到这是一个用于收听播客的应用程序 - 可能是最重要的一个)。
为了在我的应用程序中重现 mp3 文件,我使用了一个非常有名的插件,名为 nativescript-audio。它工作得很好,除了当 phone 处于锁定屏幕时不显示任何控件。这是我想给用户的东西。
阅读一些 android 开发人员文档,我发现我可能需要一个 MediaSession,然后添加一些带有动作的图标并编写一些回调函数来操纵播放器.
问题是:在 Nativescript 中,我该怎么做?
this.session = new android.media.session.MediaSession(
android.content.Context,
'My Media Session'
)
这是我在我的播放器 TypeScript 中使用的片段 class。但不工作,因为我收到此错误:
Error: Cannot marshal JavaScript argument function () { [native code] } at index 0 to Java type.
有谁遇到过这个问题愿意帮助我吗?非常感谢!
您应该传递一个有效的上下文,您传递的是上下文 class 定义本身。
import { android as androidApp } from "tns-core-modules/application";
this.session = new android.media.session.MediaSession(
androidApp.context,
'My Media Session'
)
我正在尝试使用 Nativescript 创建一个 Android 应用程序。到目前为止,我做得很好,除了一件事(而且 - 考虑到这是一个用于收听播客的应用程序 - 可能是最重要的一个)。
为了在我的应用程序中重现 mp3 文件,我使用了一个非常有名的插件,名为 nativescript-audio。它工作得很好,除了当 phone 处于锁定屏幕时不显示任何控件。这是我想给用户的东西。
阅读一些 android 开发人员文档,我发现我可能需要一个 MediaSession,然后添加一些带有动作的图标并编写一些回调函数来操纵播放器.
问题是:在 Nativescript 中,我该怎么做?
this.session = new android.media.session.MediaSession(
android.content.Context,
'My Media Session'
)
这是我在我的播放器 TypeScript 中使用的片段 class。但不工作,因为我收到此错误:
Error: Cannot marshal JavaScript argument function () { [native code] } at index 0 to Java type.
有谁遇到过这个问题愿意帮助我吗?非常感谢!
您应该传递一个有效的上下文,您传递的是上下文 class 定义本身。
import { android as androidApp } from "tns-core-modules/application";
this.session = new android.media.session.MediaSession(
androidApp.context,
'My Media Session'
)