gpt4 book ai didi

google-chrome-app - 使用 cca Google Chrome 应用程序时从后台服务触发 Chrome 警报

转载 作者:行者123 更新时间:2023-12-04 19:33:26 25 4
gpt4 key购买 nike

试验移动 Chrome 应用程序 API:( https://github.com/MobileChromeApps/mobile-chrome-apps )

我想要实现的是注册我的 chrome 警报,而不必粗暴地启动应用程序的主要事件,因为这会导致糟糕的用户体验。

挑战:我指定了一个 chome.alarm,当我打开应用程序时它会成功注册(例如“cca run android”)。这些警报在 background.js 文件中指定,该文件在 manifest.json 文件中声明为后台脚本。

我希望这些在启动时自动注册,因此我实现了后台服务并认为我可以简单地调用该应用程序来注册 background.js 文件中指定的警报。但是,到目前为止,我能找到的实现此目的的唯一方法是通过后台服务中的 Intent 调用启动应用程序的主要事件,如下面更详细的解释。

启动时,我的后台服务只是调用:

//Launch main activity..
Intent LaunchIntent = getPackageManager().getLaunchIntentForPackage("com.company.appname");
startActivity(LaunchIntent);

上面的代码将应用程序启动到其主要事件中,并且上述 chrome.alarms 已根据需要注册。快乐的时光!当然,这样做的一个巨大缺点是没有用户希望在启动时打开完整的主事件窗口。

请告知是否有更简单的方法让后台线程在启动时注册 background.js 中指定的 chrome.alarm。我不想打开应用程序的 mainActivity,但这是目前我能看到的让它们注册的唯一方法。最好不要从 Android SDK 中注册这些警报,因为我打算尽可能接近使用 Web API,并希望使用 background.js 作为 Hook 来执行此操作,从而使事情与 chrome web 应用程序保持一致-作为安卓平台。

我做了什么:

一个 cca(chrome 移动网络应用程序)应用程序,它本地注册后台服务(我扩展 BackgroundService)作为插件并将其注册为在启动时运行。这是唯一用于在启动时加载应用程序的“原生 Android 代码”。

启动 android 后,此后台服务会简单地发出 startActivity(LaunchIntent) 以打开应用程序。这样,在我的 background.js 文件中指定的 chrome.alarm 就成功注册了。如果我不这样做,在我手动打开应用程序主要事件之前,我在 background.js 中指定的 chrome 警报不会被注册。因此,我使用 backgroundService 打开应用程序的主要事件。这一点都不理想,我只是想以某种方式注册我的 chrome.alarms 而不必粗暴地启动应用程序主事件窗口。

是否可以在我的 BackgroundService 中放置一个调用,只读取我的 background.js 文件中包含的 chrome.alarms 并注册为触发?感谢您的宝贵时间。

最佳答案

首先,感谢您使用移动版 Chrome 应用! (注意:我在做项目)

很抱歉,我们当前的 Bootstrap “粗糙”且“笨拙”,我们同意这一点。您可以追踪this issue以了解我们在用真正的后台服务和多窗口支持替换当前的 Background-scripts-embedded-in-main-Activity-webview 策略方面取得的进展。基本上您已经准确地总结了我们的计划和现有的限制。

这项工作其实是近期安排的,年底前肯定能完成。

chrome.alarms 一样,此功能对于 chrome.gcmchrome.tcpServer(以及其他原因)也非常重要。

关于google-chrome-app - 使用 cca Google Chrome 应用程序时从后台服务触发 Chrome 警报,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26227475/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com