V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  ShadowPower  ›  全部回复第 25 页 / 共 83 页
回复总数  1646
1 ... 21  22  23  24  25  26  27  28  29  30 ... 83  
@wy315700 当时大概是 19 年还是 20 年那时候的事情了。现在 2024 年了,过去了好久,也不一定是这个原因……
@wy315700 其实这是 Apple Music 的 bug ,我用原生安卓的时候也会听着听着就没了,有一次抓了 logcat ,发现是 AM 自己崩溃了。
用其他播放器就没有这个问题。
@wangxiaodong 然而绝大多数应用都应该禁止自启动,因为这种能力对于 99%的应用来说,都不是正常运行所必须的。
否则 iPhone 根本就不能用,因为真的没有,有也是 30 秒存活……

你提到了保活,对于真正依赖这个能力的应用,Android 给了一条路:如果你想后台保活,那么你应该创建一个常驻通知。
这个设计其实是:必须醒目地告诉用户“我就是想要在后台运行”。

这比 iOS 上的根据有没有播放音频来限制后台还要高明得多。

你会发现音乐播放器必定有一条通知来给你控制播放,除了方便用户操作以外,其实“保活”才是这条通知的核心目的。
高德地图、百度地图等应用,导航的时候也会创建一条常驻通知。

如果用户知道应用的功能必须后台保活,用户自然会理解。假如一个看新闻的应用也要后台保活,用户马上就会察觉到这个应用可能有问题。
其实 OP 的诉求是合理的,简单来说就是:

希望能像苹果一样,由系统组件统一呈现 APP 通知。
目的是为了能完全禁止自启动而不影响正常使用。


当然我能理解,不是所有人都了解 FCM 的工作原理。

论坛里有过一些帖子抱怨国内 ROM 收不到 FCM 推送,其实原因无非两种:
1. 谷歌服务的后台保不住(我只在老的华为手机上观察到这一点,其实大多数国产 ROM 还真给谷歌后台,只要打开谷歌服务开关,真的耗电);
2. 收到了 FCM 推送,但 APP 唤醒被拦截了,显示不了通知内容(这才是主要原因)。
@mxalbert1996 我开发过 FCM 应用,之前负责公司 APP 里的推送这一块。
虽然文档是这么写,但实际上 FCM 的工作模式并不是简单的一句“直接由系统处理”就能概括的。

像是小米推送、苹果的 APNs ,都是系统自带的组件来负责从接收推送内容到呈现通知推送的全流程。
仅当你点击了通知,或者是国内推送平台所谓的“透传通知”时,系统才会真正唤醒相应的 APP 处理推送内容。

FCM 并不是这种设计。它的职责只有统一收取推送内容,然后转发给 APP 。系统只负责一件事情:统一各种 APP 与推送服务之间的网络连接。

在 FCM 接收到通知之后,其实没有“把通知显示出来”的能力。最终都由 APP 自己处理。

文档中提到的“FCM SDK”并不是一个系统组件(系统组件也不会叫做 SDK……),而是集成到 APP 内部的一个模块,封装了接收和处理通知的逻辑。如果 APP 不能启动,那么其中的 FCM SDK 也不能帮你把通知显示出来。

如果你把应用关闭/杀死了,此时系统会短暂唤醒 APP ,然后走 APP 里的逻辑。消息类型并不会改变这一点,只是 FCM SDK 简化了应用开发,不需要用户自己创建通知罢了。原文是:“此类消息由 FCM SDK 自动处理”。

在你发的连接里,其实下面还有几句话:
“当您的应用在后台运行时,如果您希望 FCM SDK 自动处理通知的显示,请使用通知消息”
“应用在后台运行时,通知消息将被传递至通知面板。应用在前台运行时,消息由回调函数处理”

里面总会提到“运行”这一点,其实挺准确的。只是没有提到应用被杀死时会被 FCM 唤醒……


完全禁止应用后台自启动的情况下(无论是国内 ROM 限制,还是用 Xposed 修改了系统框架限制),FCM 日志里都是“Failed to broadcast to stopped app *********”。
如果手机上有自动填充服务,要给自动填充服务自动启动+后台运行权限。
我用 Keepass2Android/KeepassDX 可以复现这个 bug 。卡住的时候其实一直在等待自动填充弹出来,但它没办法后台自启动。

其他的密码管理器/密码自动填充工具也是一样的。
为什么这个问题只有一部分人能遇到,因为其实很多人不用这种工具。
278 天前
回复了 firhome 创建的主题 计算机 家用主机用 win 还是 mac?
@emberzhang 选 Windows 其实不是因为 Windows 强,只是因为对互联网程序员来说,x86 Linux 强。而 PC 上可以轻松地运行它,哪怕用 WSL2 也不错。

有了 PC+Windows+Linux ,还可以尝试更多的东西。例如 3D 动画制作、游戏开发、机器学习等等。不少玩意在 Mac 上其实还是比较坑的,我手里有 Mac ,但是我现在上班用 Windows……

Mac 大多数优势还是仅限于笔记本形态的设备,在无任何外接的情况下,触摸板生态好,音响和屏幕好。
但在家里用主机+外接各种外设+键鼠操作时,Mac 好多优势都没有了。

如果 OP 没有 Mac ,买一台也挺好的,不过已经有了,就不必把自己局限在单一平台上了。


还有一个很大的好处,PC 的可升级和可扩展性非常棒。不再需要纠结硬盘多大,内存多大,显卡多强之类的问题了。
278 天前
回复了 firhome 创建的主题 计算机 家用主机用 win 还是 mac?
Win ,搭配一块 NVIDIA 显卡
那是 C#程序吧……
.NET Framework 4.0 的话,无解
静态链接
编译选项/MT
279 天前
回复了 mysoko 创建的主题 Apple MacBook Air m2 投屏不了小米 Mini LED 电视?
除了苹果自家的设备以外,其他品牌的 AirPlay 都是逆向得到的……
不能用也正常
280 天前
回复了 Arguments 创建的主题 Apple Apple Music 资料库机制真的很垃圾
@FaneLau 竞品太多了,绑住用户得靠优势
@highsun16 其实目前还没达到令我满意的效果,后面还得看看怎么把数据清洗一下。之后还得再试试训练的时候能不能额外带上 Prompt ,让生成的内容更可控。

折腾完了之后,等有空我写一篇吧。
@daiv 是的
@isouu 我还没想过这个问题
@isouu Chat 模型,训练数据是一些大 V 的回答
@iorilu
Yi-6B 就挺好的,预训练数据里已经有好多小说数据了。
如果还想更小一些,还有 RWKV ,不过相关的生态比较少。

embeding 用这个: https://huggingface.co/moka-ai/m3e-base
1 ... 21  22  23  24  25  26  27  28  29  30 ... 83  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2221 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 27ms · UTC 09:17 · PVG 17:17 · LAX 02:17 · JFK 05:17
Developed with CodeLauncher
♥ Do have faith in what you're doing.