iPhone App Store 为什么要做成ios webview appstore形式的

主题 : 请问做一个只有webView的项目能再APP STORE上发布么?
级别: 新手上路
UID: 203073
可可豆: 298 CB
威望: 212 点
在线时间: 1302(时)
发自: Web Page
来源于&&分类
请问做一个只有webView的项目能再APP STORE上发布么?&&&
项目里除了一个webView,其他的都是用HTML 和 JS代码写的,这样的APP 苹果允许发布么?
级别: 新手上路
可可豆: 47 CB
威望: 49 点
在线时间: 218(时)
发自: Web Page
可以试试,结果应该会不太理想吧
UID: 85617
发帖: 4118
可可豆: 32418 CB
威望: 35737 点
在线时间: 1125(时)
发自: Web Page
webapp可以的,但就是一个网页。。。。。如果你人品实在够强大,勇敢地提交吧少年
TerryLin2011年冬季斯坦福大学公开课:iOS应用开发教程/bbs/read.php?tid=88801
级别: 新手上路
可可豆: 53 CB
威望: 53 点
在线时间: 5(时)
发自: Web Page
苹果的审核是人治,不是法治,所以你这么做,虽然规则上没犯法,但估计逃不过审核员这一关。
级别: 侠客
UID: 31142
可可豆: 429 CB
威望: 429 点
在线时间: 401(时)
发自: Web Page
一定通不过
级别: 圣骑士
可可豆: 2042 CB
威望: 1992 点
在线时间: 140(时)
发自: Web Page
得看你是以什么样的方式去处理HTML和JS了如果是使用PhoneGap之类的框架, 那么Yes如果是只用一个WebView然后连接到服务器显示的话, 那么No如果是WebView, 然后配合自己写得Obj-C & JS交互方法的话, 那么, Yes or No
关注本帖(如果有新回复会站内信通知您)
苹果公司现任CEO是谁?2字 正确答案:库克
发帖、回帖都会得到可观的积分奖励。
按"Ctrl+Enter"直接提交
关注CocoaChina
关注微信 每日推荐
扫一扫 浏览移动版iOS上传AppStore时因QQ、微信登陆没安装的情况被拒的解决方法
iOS上传AppStore时因QQ、微信登陆没安装的情况被拒的解决方法
解决iOS项目上传AppStore时因QQ
微信登陆没安装被拒的问题
最近应用加入了微信和QQ同步登陆,结果被拒绝了n次!!下面就让我带大家回顾这坑路~
第一次被拒绝
第一次被拒绝是因为苹果测试手机如果没有安装QQ、微信的话,QQ就会弹出要下载或更新QQ的提示界面,微信的话点击没反应。结果被拒了,拒绝原因:如果用户没有安装QQ、微信软件,用户在使用软件的过程中需要首先安装QQ、微信,这样获取用户的基础信息时增加了门槛。回复要求在没安装QQ、微信软件时提供WebView方式登陆。
第二次被拒
然后就上网查找解决原因,大部分都说判断手机是否安装QQ、微信,如果没有安装就隐藏掉QQ、微信登陆图标。
//判断是否有qq
if (![TencentOAuth iphoneQQInstalled])
QQBtn.hiden = YES;
//判断是否有微信
if ( ![WXApi isWXAppInstalled] ){
weixinBtn.hiden = YES;
结果审核后又是被拒,苹果不允许隐藏图标,而且给出了安装了QQ、微信以及没有安装QQ、微信的界面图,说不能隐藏登陆按钮,要么提供WebView方式登陆,要么就放弃QQ、微信登陆方式。
然后又是开发群里提问,知乎、博客里各种找方法,最后在在cocoachina 论坛里找到了关于QQ登陆的解决方案:如果iOS QQ登陆需要使用网页登陆的话,则需要想腾讯官方进行申请:QQ:。然后我就加了QQ,在线咨询客服,客服说最新的SDK是默认开通WebView权限的,不会提示下载QQ。然后我就下载,重新集成了,卸载QQ后测试,确实是默认有网页登陆的,估计是为了应对苹果审核吧。
但微信的仍然没有看到解决方案,有的说不做判断,没有安装的话,就默认点击没反应。于是我就打包上传到AppStore上。两天后的回复又是被拒,不过这是QQ没有问题了,被拒原因:微信登陆按钮在没有安装微信的情况下点击没反应,这不符合苹果的规则。要求要么实现WebView登陆方式,要么取消微信登陆方式。
于是又开始踏上了追寻解决方案的道路上。截至目前找到两种解决方案:
第一种:让后台服务器做个接口,请求的时候返回值YES和NO;然后根据YES或者NO来判断微信登陆按钮是显示还是隐藏。在审核区间,让返回值为NO,也就是让微信登陆按钮一直隐藏。等审核通过后,再让服务器将返回值设为YES,将微信登陆按钮显示。这中方法相对比较麻烦,需要和后台打交道。
第二种:使用微信提供的通过短信授权方式进行登陆,不需要单独申请。具体解决方法为:
微信SDK中,头文件WXApi.h包含一个授权方法:
/! @brief 发送Auth请求到微信,支持用户没安装微信,等待微信返回onResp
函数调用后,会切换到微信的界面。第三方应用程序等待微信返回onResp。微信在异步处理完成后一定会调用onResp。支持SendAuthReq类型。
@param req 具体的发送请求,在调用函数后,请自己释放。
@param viewController 当前界面对象。
@param delegate
WXApiDelegate对象,用来接收微信触发的消息。
@return 成功返回YES,失败返回NO。
+(BOOL) sendAuthReq:(SendAuthReq)req viewController:(UIViewController*)viewController delegate:(id)
使用该方法,就可以达到题主所描述的效果,即在设备没有安装微信的情况下,会继续通过短信验证的方式完成授权。
代码如下:
if ([WXApi isWXAppInstalled]) {
static NSString *kAuthScope = @"snsapi_userinfo";
static NSString *kAuthOpenID = @"wxxxxxxxxxxxxxxxxx";
static NSString *kAuthState = @"AppName";
/*微信Login*/
SendAuthReq* req = [[[SendAuthReq alloc] init] autorelease];
req.scope = kAuthS // @"post_timeline,sns"
req.state = kAuthS
req.openID = kAuthOpenID;
[WXApi sendReq:req];
[progressHUD showWithDisplayMode:MBProgressDisplayModeIndicator andText:@"登录中" andDetailText:@"" andAnimated:YES];
[progressHUD hide:YES afterDelay:2];
static NSString kAuthScope = @&snsapi_userinfo&;
static NSString kAuthOpenID = @&wxxxxxxxxxxxxxxxxx&;
static NSString kAuthState = @&AppName&;
/微信Login/
SendAuthReq req = [[[SendAuthReq alloc] init] autorelease];
req.scope = kAuthS // @&post_timeline,sns&
req.state = kAuthS
req.openID = kAuthOpenID;
[WXApi sendAuthReq:req viewController:self delegate:self];
[progressHUD showWithDisplayMode:MBProgressDisplayModeIndicator andText:@&登录中& andDetailText:@&& andAnimated:YES];
[progressHUD hide:YES afterDelay:2];
然后将微信卸载测试了,回调页面如下:
点击短信中的链接,就能跳转到WebView版微信登陆界面,点击确认按钮,就能实现微信授权登陆啦。
以上就是我解决iOS项目上传AppStore时因QQ、微信登陆没安装的情况被拒的过程,希望对大家有帮助。
另:卸载、下载、卸载、下载...QQ、微信真的很费流量,希望大家在卸载情况下测试完再重新下载,不然又有可能要卸载啦。
&2015 Chukong Technologies,Inc.
京公网安备89手机应用开发的原生app,WEBAPP,混合app的认识
原生应用、Web应用、混合应用优缺点分析
vs&移动Web
App&:定义
什么叫做原生App?
原生App是专门针对某一类移动设备而生的,它们都是被直接安装到设备里,而用户一般也是通过网络商店或者卖场来获取例如&&&&&&与&&&.
随便说几个原生App的例子,比如iOS 的&&&以及Android
什么叫做移动Web App?
一般说来,移动Web
App都是都是需要用到网络的,它们利用设备上的浏览器(比如iPhone的Safari)来运行,而且它们不需要在设备上下载后安装。
什么是混合app?
Hybrid App是指介于web-app、native-app这两者之间的app,它虽然看上去是一个Native
App,但只有一个UI WebView,里面访问的是一个Web
App,比如街旁网最开始的应用就是包了个客户端的壳,其实里面是HTML5的网页,后来才推出真正的原生应用。再彻底一点的,如掌上百度和淘宝客户端
Android版,走的也是Hybrid
App的路线,不过掌上百度里面封装的不是WebView,而是自己的浏览内核,所以体验上更像客户端,更高效。
  汽车有混合动力Hybrid,移动应用同样也有混合模式。Hybrid
App(混合模式移动应用)兼具“Native
App良好用户交互体验的优势”和“Web App跨平台开发的优势”。很多人不知道市场上一些主流移动应用都是基于Hybrid
App的方式开发,比如国外有Facebook、国内有百度搜索等。
&& 综合一下就是:“Hybrid
App同时使用网页语言与程序语言开发,通过应用商店区分移动操作系统分发,用户需要安装使用的移动应用”。总体特性更接近Native
App但是和Web App区别较大。只是因为同时使用了网页,所以开发成本和难度比Native App要小很多。因此说,Hybrid App兼具了Native
App的所有优势,也兼具了Web App使用HTML5跨平台开发低成本的优势
---------------------------------------------------------------------------------------------------------------------
最近原生应用、Web应用、混合应用的名字让我们听得比较熟悉了,现在我们就通过评析各种应用的优缺点来更进一步看看这三者的区别。&
一、原生应用&
你使用过微软PowerPoint
或者Word吧?这些可直接在你电脑上运行或者在智能手机上运行,简单来说,原生应用是特别为某种操作系统开发的,比如iOS、Android、黑莓等等,它们是在各自的移动设备上运行的。&
可访问手机所有功能(GPS、摄像头);
速度更快、性能高、整体用户体验不错;
可线下使用(因为是在跟Web相对地平台上使用的);
支持大量图形和动画; 容易发现(在App Store里面)和重新发现(应用图标会一直在主页上);
应用下载能创造盈利(当然App Store抽取20-30% 的营收)。
开发成本高;
支持设备非常有限(一般是哪个系统就在哪个平台专属设备上用);
上线时间不确定(App Store审核过程不一);
内容限制(App Store限制);
获得新版本时需重新下载应用更新。
举例:Yellow Pages Group
就开发了是几个版本(iOS、黑莓、Android),他们在每一个原生应用市场都有上架。&
二、Web&应用&
Web应用本质上是为移动浏览器设计的基于Web的应用,它们是用普通Web开发语言开发的,可以在各种智能手机浏览器上运行。&
支持设备广泛;
较低的开发成本;
可即时上线;
无内容限制
用户可以直接使用最新版本(自动更新,不需用户手动更新)。
表现略差(对联网的要求比较大);
用户体验没那么炫;
图片和动画支持性不高;
没法在App Store中下载、无法通过应用下载获得盈利机会;
要求联网;
对手机特点有限制(摄像头、GPS等)。
对于这些缺点,如果能把HTML
5的优点用到Web上的话就会得到很大改善,尽管技术在提高,目前它还不能做原生应用可以做的每件事。&
有些公司,比如金融时报继原生应用后也开发了Web应用,用户通过浏览器来访问他们的应用,因为他们的应用要采取应用内购买,而App
Store是不允许应用内购买的,不然它们就无法拿到那20%-30% 的抽成了。&
三、混合应用&
混合应用大家都知道是原生应用和Web应用的结合体,采用了原生应用的一部分、Web应用的一部分,所以必须在部分在设备上运行、部分在Web上运行。&
不过混合应用中比例很自由,比如Web 占90%,原生占10%;或者各占50%。&
兼容多平台;
顺利访问手机的多种功能;
App Store中可下载(Wen应用套用原生应用的外壳);
可线下使用。
不确定上线时间;
用户体验不如本地应用;
性能稍慢(需要连接网络);
技术还不是很成熟。
比如Facebook现在的应用属于混合应用它可以在许多App
Store畅通无阻,但是掺杂了大量Web特性,所以它运行速度比较慢,而现在为了提高性能FB又决定采用原生应用。&
现在如果你在想哪种应用是最好的,那答案就是,看情况而定:&
比如,你的预算是多少?预算充足的话可以开发几个本地应用加一个Web应用。
你的应用需要什么时候面市?Web应用可以很快地开发然后直接推出来。
你的应用需要包含什么特点和功能?如果跟手机的某些功能深度整合了,比如摄像头,需要呈现大量图形和动画就选原生应用好点。
有些公司为同样的产品制作了原生App与移动Web App,
注意这两者的不同地方会产生不同的用户体验结果。
vs&移动Web App
:&你如何选择?
所以在你准备做移动App时,你应该先问问自己以下几个问题:
你的应用是否需要使用某些设备的特殊功能,比如摄像头,摄像头闪光灯或者重力加速器
你的开发预算
你的应用是否一定需要网络
你的应用的目标硬件设备是所有的移动设备还是仅仅只是一部分而已
你自己已经熟悉的开发语言
这个应用对于性能要求是否苛刻
如何靠这个应用赢利
我想这几个问题应该能让你做出明智的选择。
你 的选择是原生App还是移动Web
App,主要受商业目标,目标用户,以及技术需要这些因素影响的。其实更多时候你也不要为选择那种App模式烦恼,正如上文提到,类似Facebook这
样的公司就为用户提供了两种选择。然而对于大部分人来说,预算,资源限制将会逼迫我们只能选择其中一种(或者只能以其中一种为重点)。
今天,消费者在移动app应用(包括原生和混合)上花费的时间(94分钟/天)超过移动web(72分钟/天),于是“移动优先”成为移动开发战略的热门
口号,但实际上移动web和移动app又有各自不可替代的优势,不同的移动开发模式都有成功的案例,企业需要根据自身的产品和业务属性、移动战略及目标用
户需求,选择适合自己的开发道路。
下面是AppCloud制作的一张信息图,为我们详细对比了纯web(HTML5)、混合App(Hybrid)和原生App(Native)三种移动开发路线的差异。
以下是图表中的列举的一些重点差异:
●&开发难度。移动web和混合App开发难度对于web开发者来说相对较低,而且可以充分利用现有的web开发工具和工作流程
●&发布渠道和更新方式。混合App可以在应用商店App
Store发布,但可以自主更新,而原生App的更新必须通过应用商店App Store。
●&移动设备本地API访问。混合App可以通过JavaScript
API访问到移动设备的摄像头、GPS;而原生App可以通过原生编程语言访问设备所有功能。
●&跨平台和可移植性。基于浏览器的移动web最好的可移植性和跨平台表现;混合App也能节省跨平台的时间和成本,只需编写一次核心代码就可部署到多个平台,而原生App的跨平台性能最差。
●&搜索引擎友好。只有移动web对搜索引擎友好,可与在线营销无缝整合。
●&货币化。混合App除广告外,还支持付费下载及程序内购买;原生App的程序内购买金额2012年首次超过下载收费。
●&消息推送。只有混合App和原生App支持消息推送,这能增加用户忠诚度。Apache
Cordova是PhoneGap贡献给Apache后的开源项目,是从PhoneGap中抽出的核心代码,是驱动PhoneGap的核心引擎。
PhoneGap是一个开源的开发框架,使用HTML、CSS和JavaScript来构建跨平台的的移动应用程序。目前开发商可以只编写一次应用程序,
然后在6个主要的移动平台和应用程序商店(app
store)里进行发布,这些移动平台和应用程序商店包括:iOS、Android、BlackBerry、webOS、Bada以及Symbian等。
现今有哪些互联网公司正在使用PhoneGap/Apache
Cordova吗?我们无法用一个准确的名单列表呈现给大家,本文罗列出一些巨头公司,正在使用PhoneGap或是Apache
Cordova作为他们的移动应用跨平台开发工具:
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

我要回帖

更多关于 webview 打开app 的文章

 

随机推荐