TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

PPK backs down: iPhone developers are not stupid

48 点作者 kailashbadu超过 15 年前

7 条评论

jazzychad超过 15 年前
First, I would like to see an example of a rich iPhone webapp he has created (if any) to show off exactly how "native-like" it actually feels to use...<p>As for me, I have written an iPhone webapp which is located at <a href="http://tweetgrid.com/iphone/" rel="nofollow">http://tweetgrid.com/iphone/</a> (it is a twitter search app). I used the <a href="http://iwebkit.net/" rel="nofollow">http://iwebkit.net/</a> framework (which is brilliant), but overall it was an exercise in frustration.<p>A few points:<p>1. You can create a webapp that will launch as an independent "app" if you save the page to your homescreen (i.e. it loads in a one-tab Safari "full-screen" mode, so no Safari navigation bars are displayed). As such, I built in some smarts that will actually detect whether the site is loaded from "normal" Safari or "app" Safari. If it loads in "normal" mode it shows some instructions about how to install the app on your home screen. If it loads from "app" mode those instructions are gone. I also use this mechanism to determine how many times the app has been "installed" onto phones. This is done server-side because I need to see the user-agent to determine this. This is where I ran into a huge issue with the Safari caching mechanism. I am not sure if it is part of the HTML caching spec, or something specific to Safari's implementation, but which ever page you use to specify the cache manifest file <i>also gets cached</i> even if that page is <i>not specified</i> in the manifest. This is idiotic. The only logical place to put the manifest reference is in the "home" page where the app loads. This means that any updates to the page won't be seen for a long long time (if ever). This also subverts my normal-mode/app-mode logic because the home page doesn't ping the server when it loads. Ultimately I had to do away with most of the caching in order to regain the other functionality. This means that everything loads very slowly compared to a native app.<p>2. The average user doesn't understand "webapp." When somebody hears "app" and "iPhone" they immediately go search for it on the AppStore app. There is no realm of understanding about webapps. Finding (and installing) webapps is hard. "Open Safari, type in this URL, click the plus sign to create a bookmark or add it to your homepage..." is orders of magnitude harder for Joe Public than "search for XYZ app, and click Install." You don't even need to say "open the AppStore" because that's already implied. I would get complaints from users saying, "I can't find TweetGrid in the app store!!!" Then I had to politely tell them that, "No, it's not a native app, you need to load it in Safari and save it to your home screen..." which just caused more confusion.<p>3. PPK speaks of interoperability of webapps, but he also talks about using iPhone specific javascript APIs to access hardware on the iPhone... once you head down this path, you can't really call it interoperable anymore, imho.<p>I didn't even deal with the payment stuff with my webapp because I made it free, but that would be a huge pain.<p>Conclusion: I am learning Objective-C with reckless abandon.
评论 #960965 未加载
评论 #959612 未加载
augustus超过 15 年前
I developed a webapp (project management) before deciding to go native.<p>Some of the additional reasons why I believe users prefer native apps are:<p>1. The app store app and iTunes make it easy to discover native apps. Webapps are simply posted on a link from apple. This makes it harder for users to discover them. Here is the link to webapps: <a href="http://www.apple.com/webapps/" rel="nofollow">http://www.apple.com/webapps/</a><p>2. With native apps, users can take advantage of built in UI elements reducing the learning curve and creating richer applications.<p>3. Web apps can suffer from performance issues especially when you are on an edge network.<p>4. Payment processing was already mentioned. Its an issue but probably not a huge one.<p>I think the native look and feel and Apple's own promotion are the two big factors in favor of native apps.
ZeroGravitas超过 15 年前
<i>"I was wrong about Web apps being able to replace native apps right now"</i><p>Strange, as I'm fairly certain he didn't say that.<p>He said the lower end could be replaced with web apps right now and if Apple opened up more API's to web apps then many more apps could too. Which is true.<p>Also, Apple's "App Store" for Web Apps:<p><a href="http://www.apple.com/webapps/" rel="nofollow">http://www.apple.com/webapps/</a>
pbh超过 15 年前
YHBT. YHL. HAND.<p><a href="http://www.youtube.com/watch?v=SAWDYaWAVQQ" rel="nofollow">http://www.youtube.com/watch?v=SAWDYaWAVQQ</a><p>"Whatever position I took originally, I would change the position to exactly the opposite and tell the Macintosh people that I was completely wrong and they were completely right all along, and the numbers would go through the ceiling!" -John Dvorak
intregus超过 15 年前
Interesting. I wrote a similar blog post that I had planned on posting this morning. Guess I don't have to now! <a href="http://ryanleland.com/2009/11/iphone-developers-arent-stupid-consumers-know-what-they-are-willing-to-pay-for/" rel="nofollow">http://ryanleland.com/2009/11/iphone-developers-arent-stupid...</a>
评论 #959516 未加载
Readmore超过 15 年前
I disagree, I still think the first article was spot on. If you don't want to play by Apple's crappy App Store rules then write a web app for the iPhone. Unless you're doing a 3D game you can accomplish the same result on the Web and you're free from their 'control'.<p>iPhone devs who write native apps and then complain to Apple about the app store policies are stupid, because they are tilting at windmills when there is a much easier solution to the problem.
评论 #959667 未加载
m0th87超过 15 年前
I think he deserves a good degree of praise for having an amenable opinion.