xcode 应用因 UIWebview 被 App Store 拒绝
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/7421002/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
App was rejected from App Store because of UIWebview
提问by zvzej
This is the message I got from them:
这是我从他们那里得到的信息:
We found that the experience your app provides is not sufficiently different from a web browsing experience, as it would be by incorporating native iOS functionality.
While your app content may differ from your web site or other existing sites, the experience it provides does not differ significantly from the general experience of using Safari, as required by the App Store Review Guidelines.
You may wish to provide convenient access to a web property for a select or niche group of users - and may enhance that experience with features such as Push Notifications. However, such apps do not include enough native iOS functionality to be appropriate for the App Store. As an alternative, you may wish to provide instructions to your users on how to create a Safari web clip to add to their iOS device Home Screen. Or, if you would like to share the app with a select group of users, we recommend the Ad Hoc distribution method. See the iOS Provisioning Portal for details on Ad Hoc Distribution.
We encourage you to review your app concept and evaluate whether you can incorporate additional features to enhance the user experience.
我们发现您的应用程序提供的体验与 Web 浏览体验没有太大区别,因为它结合了原生 iOS 功能。
虽然您的应用程序内容可能与您的网站或其他现有网站不同,但它提供的体验与使用 Safari 的一般体验没有显着差异,这符合 App Store 审核指南的要求。
您可能希望为选定的或特定的用户组提供对网络资产的便捷访问 - 并且可以通过推送通知等功能增强这种体验。但是,此类应用程序不包含足够多的原生 iOS 功能以适用于 App Store。作为替代方案,您可能希望向您的用户提供有关如何创建 Safari 网络剪辑以添加到其 iOS 设备主屏幕的说明。或者,如果您想与选定的用户组共享应用程序,我们建议使用 Ad Hoc 分发方法。有关 Ad Hoc 分发的详细信息,请参阅 iOS 供应门户。
我们鼓励您您的应用程序概念并评估您是否可以加入其他功能来增强用户体验。
Has anyone gotten something similar? What types of native iOS functionality would work and how do you implement them? I'm new to the app store so I don't know if just by adding what they say about providing instructions on how users can create safari web clipping will get my app approved. Also, if the instructions can just be written in a pop up message?
Any advice will be greatly appreciated. Thank you.
有没有人得到类似的东西?哪些类型的原生 iOS 功能可以工作,您如何实现它们?我是应用程序商店的新手,所以我不知道仅仅通过添加他们所说的关于提供用户如何创建 safari 网络剪辑的说明的内容是否会使我的应用程序获得批准。另外,是否可以将说明写在弹出消息中?
任何建议将不胜感激。谢谢你。
UpdateI see what you guys are saying, let me better describe what I'm doing and maybe that way you can help me.
更新我明白你们在说什么,让我更好地描述我在做什么,也许这样你可以帮助我。
My app is a radio app where I can listen to my favorite radio station and read the news at the same time with out leaving the app (news from a web view).
我的应用程序是一个广播应用程序,我可以在其中收听我最喜欢的广播电台并同时阅读新闻而无需离开应用程序(来自网络视图的新闻)。
回答by EmilioPelaez
From that message (and since you didn't give a description of the app at all), it seems like you just made an app that encapsulated an UIWebView to load an specific page, since you can do that via Safari, they reject apps like that.
从那条消息(并且由于您根本没有提供该应用程序的描述),您似乎只是制作了一个封装了 UIWebView 以加载特定页面的应用程序,因为您可以通过 Safari 执行此操作,因此他们拒绝应用程序,例如那。
You can:
你可以:
Make the app fetch the data from the web server, BUT, display it with native controls (with UITableViews, UIButtons, UIImages, etc). This would require quite a bit amount of work.
Drop the app and tell the users, on your site, that they can add that website as a web clip on their phones.
使应用程序从 Web 服务器获取数据,但是,使用本机控件(使用 UITableViews、UIButtons、UIImages 等)显示它。这将需要相当多的工作。
放下应用程序并告诉用户,在您的网站上,他们可以将该网站作为网络剪辑添加到他们的手机上。
回答by Hyman Humphries
They're saying that you can't just make a UIWebView that is linked to a website and call it an app. You have to incorporate more features. According to the description, your users can accomplish the same tasks by just going to your website. Are you able to incorporate push notifications, tabs, any features that makes your iOS app unique?
他们说你不能只制作一个链接到网站的 UIWebView 并将其称为应用程序。您必须合并更多功能。根据描述,您的用户只需访问您的网站即可完成相同的任务。您是否能够合并推送通知、标签以及任何使您的 iOS 应用程序独一无二的功能?
回答by Bart?omiej Semańczyk
As of 2018 App Store Review Guidelines:
截至 2018 年App Store 审核指南:
4.2 Minimum Functionality
4.2 最低功能
Your app should include features, content, and UI that elevate it beyond a repackaged website. If your app is not particularly useful, unique, or “app-like,” it doesn't belong on the App Store. If your App doesn't provide some sort of lasting entertainment value, or is just plain creepy, it may not be accepted. Apps that are simply a song or movie should be submitted to the iTunes Store. Apps that are simply a book or game guide should be submitted to the iBooks Store.
您的应用程序应包括功能、内容和 UI ,使其超越重新包装的网站。如果您的应用程序不是特别有用、独特或“类似应用程序”,则它不属于 App Store。如果您的应用程序不提供某种持久的娱乐价值,或者只是令人毛骨悚然,则可能不会被接受。仅是歌曲或电影的应用程序应提交到 iTunes Store。只是书籍或游戏指南的应用程序应提交到 iBooks Store。
Assuming:
假设:
Apps that are simply a websites should be submitted to the Safari. ;-)
只是网站的应用程序应该提交给 Safari。;-)
回答by mservidio
They want to ensure that all app's include functionality beyond the base components in the SDK that they provide to you. It seems from reading their response that there is a UIWebView in your app, yet there is not really any new functionality provided to the end-user beyond the standard UIWebView.
他们希望确保所有应用程序的功能都超出了他们提供给您的 SDK 中的基本组件。从他们的回复来看,您的应用程序中似乎有一个 UIWebView,但除了标准的 UIWebView 之外,实际上并没有为最终用户提供任何新功能。
Would need more details about your app to better understand the circumstance though. Could you expand a little on what it does?
不过,需要有关您的应用程序的更多详细信息才能更好地了解情况。你能稍微扩展一下它的作用吗?
回答by ziedakoubi
just change it with WKWebView and it will be accepted cause its a new guidelines imposed by apple recently
只需用 WKWebView 更改它,它就会被接受,因为它最近由苹果强加了新的指导方针
import WebKit
var webView: WKWebView!
override func loadView() {
let webConfiguration = WKWebViewConfiguration()
webView = WKWebView(frame: .zero, configuration: webConfiguration)
webView.uiDelegate = self
view = webView
}
override func viewDidLoad() {
super.viewDidLoad()
let myURL = URL(string:"https://www.apple.com")
let myRequest = URLRequest(url: myURL!)
webView.load(myRequest)
}