写点什么

URLKit 扩展 Flex 中 Deep Linking 功能

  • 2008-10-22
  • 本文字数:964 字

    阅读完需:约 3 分钟

RIA 应用中,Deep Linking 能够在不重新加载应用的情况下直接链接到特定的应用状态。传统浏览器应用中,用户常常期望无论应用是用哪种技术实现都能够正常运行。

Flex 3 中虽已添加了 Deep Linking 的支持,但仍无法满足很多高端需求。这时候,Flex 开发者就可以使用 URLKit。

最近,InsideRIA 上一篇文章详细描述了 URLKit

Flex2 提供了历史记录管理的功能,但这对于需要尽量避免传统浏览经验的应用来说,仍然不是完整的解决方案。开发人员对特定的 URL 没有足够的掌控能力,也没法控 制 URL 映射到特定状态的应用的方式(URL 由 Flex 应用自动生成)。这也是为什么 URL 结构不可能沿用到下一版本应用中的原因。 URLKit 试图扩展此类技术,它赋予开发者细粒度双向控制 URL 和应用状态的权力,允许开发员在 MXML 中自主申明 URL 与应用状态之间的映射关系。

URLKit 提供四项规则来控制 URL 及其对应的应用状态:

  • UrlValueRule——这项规则帮助开发人员将 URL 的局部与应用的某个属性映射起来。以这种方式使用 UrlValueRule 的话, URL 和应用属性的值将互相捆绑起来,也就是说,只要其中一个值发生变化,另一个值也会相应产生变化。如果你不想用捆绑方式的话,你也可以通过 UrlValueRule 发送一个变化事件,同样能够触发应用状态的变化。
  • UrlNavigatorRule——之前提到 UrlValueRule 之外的其它规则对我们的应用也会有所帮助。 UrlNavigatorRule 规则就是针对 Accordian、NavBar、TabNavigator 和 ViewStack 的开发而特别设计的。运 用这项规则就不再需要把 URL 值和 selectedIndex 属性映射起来,只需要在规则中指明它需要指向哪个导航就可以了,规则本身会处理剩下的工作。 比如 Sample UrlNavigatorRule Example (可以点击鼠标右键查看源代码)
  • UrlDelegateRule——该规则允许开发人员把映射局部 URL 的工作分派另一个规则(或规则组)去处理。这种方法运用相当普遍,主应用 程序把部分映射分派给子控件去完成。这样,URL 能够反映内嵌控件的状态。但还得结合下面一项规则——UrlRuleSet 才能恰当使用 UrlDelegateRule 规则。
  • UrlRuleSet——此项规则能够把多项规则集中到一起,一个 URL 因此能够解析出多个值。你可以在这个规则中申明子规则与 URL 的映射方式。

关于 URLKit 更多信息,请查阅: http://code.google.com/p/urlkit/。

查看英文原文: Deep Linking in Flex with URLKit

2008-10-22 20:44738
用户头像

发布了 71 篇内容, 共 20.3 次阅读, 收获喜欢 3 次。

关注

评论

发布
暂无评论
发现更多内容

做好仓储控制系统(WCS)的关键

申扬科技

仓储控制系统 WCS

跬步贴|5分钟搞定缓存击穿问题

架构师跬步营

下一代存储NVMe over Fabrics

HU

和邓小平、基辛格“谈笑风生”的世界第一女记者:奥琳亚娜·法拉奇

赵新龙

记者 编辑 采访 法拉奇

如何无缝的将Flutter引入现有应用?

Geek_70xtik

flutter ios android 开源 移动应用

1分钟就能学会的时间管理大法

小匚

时间分配 时间管理

从“成为作者”到“立即创作”:开启你的“写作极客”生活

岛乾坤

写作

idea+spring4+springmvc+mybatis+maven实现简单增删改查CRUD

虚拟世界的懒猫

spring mybatis ssm springmvc java8

Hadoop集群搭建-04安装配置HDFS

虚拟世界的懒猫

hadoop

“我代码写完了,QA可以测了。”

蔡建斌

Scrum 敏捷 质量管理 测试

Hadoop集群搭建-02安装配置Zookeeper

虚拟世界的懒猫

hadoop zookeeper centos7

Hadoop集群搭建-03编译安装hadoop

虚拟世界的懒猫

hadoop centos7

Day 47|Week 07-5 曾国藩家书|问学篇-学问何处何时都可做

熊小北同学

程序员陪娃漫画系列——喂药

孙苏勇

程序员 生活 陪伴 漫画

Zookeeper选举机制

tunsuy

zookeeper 开源 源码分析 分布式协同

配置微软Azure大数据HDInsight云集群

虚拟世界的懒猫

microsoft 大数据 微软 azure hdinsght

Arthas安装及基本用法

编程随想曲

Java

机器学习中常用的处理手段

子夜2104

学习

centos6搭建NEXUSphp pt私人种子站

虚拟世界的懒猫

centos nexusphp pt bt

【终于解决】ubuntu19安装nvidia驱动后屏幕亮度默认最亮不可调节

虚拟世界的懒猫

ubuntu 英伟达

利用Translate ToolKit 2.5.0 API构建Flask web app

虚拟世界的懒猫

Python nginx flask uwgsi translate

选赵敏还是选小昭,这可真是个问题 | Decision Tree

张利东

Python 学习 算法 决策树

你真的理解 Java 的基础数据类型吗

Rayjun

Java

我愿沉迷于学习,无法自拔(一)

孙瑜

深度思考 个人成长

消息队列Kafka - Kafka中的选举

Java收录阁

kafka

当 Redis 发生高延迟时,到底发生了什么

程序员历小冰

redis Linux 延迟

Hadoop集群搭建-01前期准备

虚拟世界的懒猫

hadoop hdfs mapreduce zookeeper centos

Hadoop集群搭建-05安装配置YARN

虚拟世界的懒猫

hadoop

安装VMware16兼容Hyper-v+WSL2+Docker+解决0x80370102报错

虚拟世界的懒猫

Docker vmware vm hyper-v WSL2

管理信息系统课程基础知识

小匚

如何写作一本书(2):前言与正文

英子编辑

技术 写作

URLKit扩展Flex中Deep Linking功能_Java_Jon Rose_InfoQ精选文章