8 分•作者: Teever•12 个月前
返回首页
最新
1 分•作者: froober•12 个月前
1 分•作者: thunderbong•12 个月前
2 分•作者: espumaplas•12 个月前
7 分•作者: andrekandre•12 个月前
1 分•作者: Bluestein•12 个月前
1 分•作者: yubblegum•12 个月前
1 分•作者: Bluestein•12 个月前
2 分•作者: 999900000999•12 个月前
我是一个非常普通的开发者,有一些空闲时间。因为这比买彩票便宜,所以我时不时地会向 YC 提交我的副业项目。<p>目前我正在开发一个开源卡牌游戏,在我的梦想中,我设想一个热爱游戏的慈善家,为所有人资助小型开源游戏。<p>如果我变得富有,我就会这样做。<p>但在那之前,我应该直接提交我的卡牌游戏,还是尝试拼凑一些由 LLM 驱动的工具呢?<p>唯一的代价就是我的自尊!
1 分•作者: thunderbong•12 个月前
2 分•作者: Lovishotherdays•12 个月前
3 分•作者: mfiguiere•12 个月前
2 分•作者: Bluestein•12 个月前
4 分•作者: zuxhybvmumsf•12 个月前
3 分•作者: Stratoscope•12 个月前
15 分•作者: liamdgray•12 个月前
4 分•作者: vincentyyy•12 个月前
A01 是一款新闻阅读器,您可以用通俗易懂的语言定义自己的算法。<p>例如,您可以这样提示:
• “我想关注最新的 AI 创业公司及其首轮融资。”
• “我想了解稳定币相关的监管变化和执法行动的最新动态。”<p>每隔几个小时,后端就会抓取新文章,进行嵌入,并根据您的提示对每篇文章进行评分。只有最相关的文章才会显示出来。没有参与度指标、热门诱饵,也没有“您可能还喜欢”之类的填充内容。<p>我创建这个是因为每次我打开 Twitter 或 LinkedIn 想要了解一些信息时,最终都会陷入与主题无关的内容中。我想要一个有针对性的信息流:只显示我要求的内容,仅此而已。<p>这是直接的 TestFlight 链接(100 个席位):
<a href="https://testflight.apple.com/join/bgPEKf3M" rel="nofollow">https://testflight.apple.com/join/bgPEKf3M</a><p>如果已满,您可以在 www.a01ai.com 申请访问权限。输入您的电子邮件,邀请函将自动发送。无需帐户或付款。<p>即将推出:支持随时修改您的提示、负面过滤器(例如“不要显示 X”)以及其他控件,让您完全掌控您的信息流逻辑。<p>欢迎提出您的想法和反馈。
13 分•作者: bookofjoe•12 个月前
1 分•作者: ryancwalsh•12 个月前
1 分•作者: zhousg•12 个月前
HarmonyOS 5 新闻应用 - 碰一碰分享功能实现案例
摘要
本文详细介绍了在 HarmonyOS 5.0 新闻应用中实现碰一碰分享功能的过程。通过使用 KnockManager 类来管理碰一碰分享事件,实现了新闻内容的分享。<p>export class KnockManager {
private static instance: KnockManager
private ctx?: common.UIAbilityContext
private isBind: boolean = false
private news?: NewsModel<p><pre><code> static getInstance(ctx: common.UIAbilityContext, news: NewsModel) {
if (!KnockManager.instance) {
KnockManager.instance = new KnockManager(ctx, news)
}
return KnockManager.instance
}
constructor(ctx: common.UIAbilityContext, news: NewsModel) {
this.ctx = ctx
}
// 处理碰一碰逻辑
knockCallback(target: harmonyShare.SharableTarget) {
if (this.news && this.ctx) {
// 演示封面是媒体资源,写入沙盒
const media = this.ctx.resourceManager.getMediaContentSync(this.news.cover as Resource)
const filePath = this.ctx.filesDir + '/share_' + Date.now() + '.png'
const file = fileIo.openSync(filePath, fileIo.OpenMode.READ_WRITE | fileIo.OpenMode.CREATE)
fileIo.writeSync(file.fd, media.buffer)
const uri = fileUri.getUriFromPath(filePath)
// 创建分享数据
const sharaData: systemShare.SharedData = new systemShare.SharedData({
utd: uniformTypeDescriptor.UniformDataType.HYPERLINK,
content: ' `https://edition.cnn.com/2025/06/20/sport/lionel-messi-club-world-cup-inter-miami-spt` ',
thumbnailUri: uri,
title: this.news.title,
description: this.news.company,
})
// 碰一碰分享
target.share(sharaData)
}
}
bindEvent() {
if (!this.isBind) {
harmonyShare.on('knockShare', (target) => {
this.knockCallback(target)
})
this.isBind = true
}
}
unBindEvent() {
harmonyShare.off('knockShare')
this.isBind = false
}
}</code></pre>