IOS开发浏览器怎样实现URL重写 我在做一个IOS的浏览器访问服务器的web应用,但是需要在页面上链接的URL后面添加一个参数(例如:&bid=1111),也就是说在用户点击一个链接后,我需要先拦截请求,将参数拼上去以后再发出去,有没有能帮忙指点下的?谢谢谢谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这个需要HTML和客户端交互,UIWebView有代理可以捕获HTML里的点击时间,可以获得URL。 你使用的是UIWebView控件来实现的吧。要实现你说的功能,需要涉及到一个知识点“自定义URL协议”。下面我就一步一步的给你讲解如何通过“自定义URL协议”来实现你想要的效果。首先,你需要说明你想如何在程序中响应这个URL。最简单的自定义协议的方法是“唤醒”,而且可以通过URL把信息传递给程序,这样,程序被唤醒后能做更多的事情。注册自定义URL协议首先需要向iPhone注册一个自定义URL协议。这是在你的项目文件夹的info.plist文件进行的(就是你改变应用程序图标的同一个文件)。默认,Xcode在图形窗口中打开info.pllist,当然也可以直接用文本模式打开——对有的人来说这反而更简单。Step1. 右键,选择“Add Row”Step2. Key值选择“URL types”Step3. 打开“Item 1″,然后为该key增加一个URL identifier。可以是任何值,但建议用“反域名”(例如 “com.myapp”)。Step4. 在“Item1”下再加一行。Step5. 选择“URL Schemes” 作为Key。Step6. 输入你的URL协议名 (例如“myapp://” 应写做“myapp”)。如果有必要,你可以在这里加入多个协议。完成后看起来应该是这个样子处理URL现在,URL已经注册好了。任何人都可以用打开URL的方式通过你的协议去启动一个应用程序。例如:iOSDevTips:// iOSDevTips://some/path/here iOSDevTips://?foo=1&bar=2 iOSDevTips://some/path/here?foo=1&bar=2iOS SDK将向UIApplicationDelegate发送一条消息,启动和上述URL绑定的应用程序。如果你想进行自定义处理,在你的delegate中实现该消息,例如:1234-(BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url{ //////当你通过自定义协议访问时,会在AppDelegate中的openURL这个事件中被截获,也就是在这里处理你的拼接参数,拼接后再通过UIWebView load这个新的url 请求。} Apple 官方文档中的 URL Loading System 可以拦截任何网络请求,包括UIWebView的。 将png图片转换为jpg图片 一个诡异的问题 关于来电提醒音的设置 赠送自己打印的苹果文档 reachability阻塞主线程问题 江湖救急求大神:Xcode导入AFN框架编译报错 mac下如何实现串口通讯 Assertion failed: (CGFloatIsValid(x) && CGFloatIsValid(y)), function void CG 请问一下如何实现在ios的工程里面调用很多单独的c++写的cpp文件里面的函数? 全国省市行政区划代码json文件 OBJECT-C的编码风格跟语法格式看的好蛋疼 iOS 天气应用怎么存储数据
首先,你需要说明你想如何在程序中响应这个URL。最简单的自定义协议的方法是“唤醒”,而且可以通过URL把信息传递给程序,这样,程序被唤醒后能做更多的事情。注册自定义URL协议
首先需要向iPhone注册一个自定义URL协议。这是在你的项目文件夹的info.plist文件进行的(就是你改变应用程序图标的同一个文件)。
默认,Xcode在图形窗口中打开info.pllist,当然也可以直接用文本模式打开——对有的人来说这反而更简单。Step1. 右键,选择“Add Row”
Step2. Key值选择“URL types”Step3. 打开“Item 1″,然后为该key增加一个URL identifier。可以是任何值,但建议用“反域名”(例如 “com.myapp”)。Step4. 在“Item1”下再加一行。
Step5. 选择“URL Schemes” 作为Key。Step6. 输入你的URL协议名 (例如“myapp://” 应写做“myapp”)。如果有必要,你可以在这里加入多个协议。完成后看起来应该是这个样子
处理URL现在,URL已经注册好了。任何人都可以用打开URL的方式通过你的协议去启动一个应用程序。
例如:
iOSDevTips://
iOSDevTips://some/path/here
iOSDevTips://?foo=1&bar=2
iOSDevTips://some/path/here?foo=1&bar=2iOS SDK将向UIApplicationDelegate发送一条消息,启动和上述URL绑定的应用程序。
如果你想进行自定义处理,在你的delegate中实现该消息,例如:
1
2
3
4
-(BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url
{
//////当你通过自定义协议访问时,会在AppDelegate中的openURL这个事件中被截获,也就是在这里处理你的拼接参数,拼接后再通过UIWebView load这个新的url 请求。
}