(翻译)Mozilla OS APP开发:Manifest常见问题

简介: 原文地址:https://marketplace.firefox.com/developers/docs/manifest_faq  Why does my app need an app manifest?为啥我的应用要有个manifest?应用的manifest是一个含有必要的应用信息的文件,包括名字,作者,图标,简介等。
原文地址: https://marketplace.firefox.com/developers/docs/manifest_faq     Why does my app need an app manifest?为啥我的应用要有个manifest? 应用的manifest是一个含有必要的应用信息的文件,包括名字,作者,图标,简介等。这个文件对于用户和应用商店都要用到。更重要的是,它包括了一个应用要用到的Web API列表,比如地理定位。这就让用户在安装之前知道是否真的要安装。   Is the Open Web app manifest the same thing as the manifest used for Google Chrome extensions and installable web apps? Or the W3C Widgets manifest? Or the HTML5 cache manifest ?介个manifest和Google Chrome 扩展的一样吗?还有W3C部件的呢,HTML5缓存的呢? 都不一样。Open Web app manifest可能最和Google的像。但是也有差别。我们希望Open Web apps manifest能够成为一个标准。   What is an origin?起点是啥啊? 一个应用的起点是协议,域名,和URL端口的整合。下面的都是:  下面这俩可是一样滴: 下面也是一样的起点:   Why do I have to host the app manifest at the same origin as my app?为啥我必须在我应用的相同起点用这个manifest作为我的应用? 假设只有你持有应用的manifest,也就是说你的用户可以自由安装你的应用,他们知道该应用是你的而不是别人的。用户应该有这种自由,无论他们从哪里安装,Firefox Marketplace还是其他商店还是你自己的网站。 但是假如manifest没有在相同起点作为应用本身,就不能阻止第三方根据你起点的内容直接做自己的应用,更惨的是第三方可以使用你的品牌欺骗用户安装,这样就能偷用户密码等。   Does this mean I can't embed images or JavaScript from other origins?是不这样的话我就不能嵌入其他起点的图片和js了? 可以的啊!起点限制仅仅针对HTML内容。图片啊神马的其他资源还是可以的。除非是应用的图标,这个必须是起点的。   Can I have more than one app at my origin?我的起点能有多个应用吗? 这不行,每个起点只能有一个。如果多个应用在一个起点,他们会形成一个网络沙盒:相互测试存储,执行Ajax请求,甚至盗用其他应用的特权API。这太危险了。 我们建议使用不同的子域名。比如 spreadsheet.mycoolapps.comtexteditor.mycoolapps.com。更多信息可以看看  Adding a subdomain for an app. 很多资源和权限都限制给单一起点了。将应用和起点一一对应,我们能更方便地使用安全性限制。   Why not just upload the app manifest directly to the Firefox Marketplace?干啥不直接把manifest上传到Firefox Marketplace? 自己持有应用而仅仅把URL提供给Marketplace有如下好处:
  • 我们会定期扫描manifest的地址并检查更新,这避免了重复上传。
  • 我们会把起点的manifest和URL一起传递给用户设备,这样设备能检测出期望外的改变。
Why does my Web server have to use the proper HTTP Content-Type header when serving my app manifest?为啥我的Web服务器要使用特定的HTTP Content-Type头? 这样就限制了一个网站的用户无意的或者不正确的声明应用入口。 Should I use HTTPS to serve my app manifest?我能使用HTTPS不? 必须的嘛。我们希望Firefox Marketplace能要求每个应用都使用Web 并使用HTTPS来防止中间人攻击。如果你用了HTTPS,那你的每个页面也都要用的。 What if someone else submits my app to the Firefox Marketplace?要是别人上传了我的的应用咋办? 万一这种惨剧发生,就二话别说马上联系Marketplace support team.
目录
相关文章
|
2天前
|
存储 移动开发 Android开发
使用kotlin Jetpack Compose框架开发安卓app, webview中h5如何访问手机存储上传文件
在Kotlin和Jetpack Compose中,集成WebView以支持HTML5页面访问手机存储及上传音频文件涉及关键步骤:1) 添加`READ_EXTERNAL_STORAGE`和`WRITE_EXTERNAL_STORAGE`权限,考虑Android 11的分区存储;2) 配置WebView允许JavaScript和文件访问,启用`javaScriptEnabled`、`allowFileAccess`等设置;3) HTML5页面使用`<input type="file">`让用户选择文件,利用File API;
|
6天前
|
运维 Android开发 开发者
你知道APP是怎么开发的吗?
【7月更文挑战第9天】你知道APP是怎么开发的吗?
|
20小时前
|
Android开发 Kotlin
kotlin开发安卓app,如何让布局自适应系统传统导航和全面屏导航
使用`navigationBarsPadding()`修饰符实现界面自适应,自动处理底部导航栏的内边距,再加上`.padding(bottom = 10.dp)`设定内容与屏幕底部的距离,以完成全面的布局适配。示例代码采用Kotlin。
30 15
|
23小时前
|
存储 API Android开发
kotlin开发安卓app,使用webivew 触发 onShowFileChooser, 但只能触发一次,第二次无法触发,是怎么回事。 如何解决
在Android WebView开发中,`onShowFileChooser`方法用于开启文件选择。当用户只能选择一次文件可能是因为未正确处理选择回调。解决此问题需确保:1) 实现`WebChromeClient`并覆写`onShowFileChooser`;2) 用户选择文件后调用`ValueCallback.onReceiveValue`传递URI;3) 传递结果后将`ValueCallback`设为`null`以允许再次选择。下面是一个Kotlin示例,展示如何处理文件选择和结果回调。别忘了在Android 6.0+动态请求存储权限,以及在Android 10+处理分区存储。
|
10天前
|
JSON 小程序 数据格式
uni-app 使用vscode开发uni-app
uni-app 使用vscode开发uni-app
40 0
|
11天前
|
JSON 前端开发 API
移动端---------app开发03----apicloud必须掌握的代码
移动端---------app开发03----apicloud必须掌握的代码
|
11天前
|
前端开发 开发者
移动端-------app开发02,了解apicloud功能和使用,真机测试
移动端-------app开发02,了解apicloud功能和使用,真机测试
|
13天前
4. 解决uni-app开发过程中view、image等标签出现诸如“出现错误:类型“{ class: string; }”的参数不能赋给类型“.......”
4. 解决uni-app开发过程中view、image等标签出现诸如“出现错误:类型“{ class: string; }”的参数不能赋给类型“.......”
13 0
|
13天前
|
JSON 数据格式
3. 使用 VsCode 开发 uni-app 项目需要使用到的插件
3. 使用 VsCode 开发 uni-app 项目需要使用到的插件
14 0
|
14天前
|
NoSQL Linux 开发工具
【linux】在linux操作系统下快速熟悉开发环境并上手开发工具——体验不一样的开发之旅
【linux】在linux操作系统下快速熟悉开发环境并上手开发工具——体验不一样的开发之旅