`
`(12) United States Patent
`Mandyam et al.
`
`(10) Patent No.:
`(45) Date of Patent:
`
`US 8.595,186 B1
`Nov. 26, 2013
`
`(54) SYSTEMAND METHOD FOR BUILDING AND
`DELIVERING MOBILE WIDGETS
`
`(75) Inventors: Srinivas Mandyam, San Jose, CA (US);
`Krishna Vedati, Sunnyvale, CA (US);
`Kelvin Voon-Kit Chong, San Jose, CA
`(US)
`(73) Assignee: Plusmo LLC, Glendale, CA (US)
`(*) Notice:
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 1190 days.
`(21) Appl. No.: 12/135,089
`
`(22) Filed:
`
`Jun. 6, 2008
`
`Related U.S. Application Data
`(60) Provisional application No. 60/942,406, filed on Jun.
`6, 2007.
`
`(2006.01)
`(2006.01)
`(2006.01)
`
`(51) Int. Cl.
`G06F 7700
`G06F I7/00
`G06F 9/445
`(52) U.S. Cl.
`USPC ............ 707/632; 707/733; 707/912; 717/178
`(58) Field of Classification Search
`USPC ......... 707/617, 623,628,632, 633, 731 734,
`707/912, 178
`See application file for complete search history.
`
`(56)
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`7,454.459 B1 * 1 1/2008 Kapoor et al. ................ TO9,203
`7,890,136 B1* 2/2011 Fujisaki ..................... 455,556.1
`
`5/2012 Kaminski, Jr. ................ 707,698
`8, 185,507 B1 *
`8,261,258 B1* 9/2012 Jianu et al. .....
`717,174
`2001/0047363 A1* 11/2001 Peng ...........
`TO7 104.1
`2003/0208595 A1 * 1 1/2003 Gouge et al. ...
`709,225
`2005/0058108 A1* 3/2005 Ekberg et al. ...
`370,338
`2005. O154759 A1* 7, 2005 Hofmeister et al.
`TO7 104.1
`2005/0172231 A1* 8/2005 Myers ...............
`715,716
`2006/0143622 A1* 6/2006 Prabandham et al. ........ 719,328
`2006/0149630 A1* 7/2006 Elliott et al. .................... TO5/14
`2006, O165105 A1* 7, 2006 Shenfield et al. ..
`... 370/401
`2007/0033584 A1* 2, 2007 Yu ................................. 717,168
`(Continued)
`
`
`
`FOREIGN PATENT DOCUMENTS
`
`WO WO 2005053,335 A1 * 6, 2005 ............... H04Q 7/32
`OTHER PUBLICATIONS
`
`“Sony Ericsson Z525 White Paper'. Aug. 2006. Sony Ericsson. 64
`pages.
`
`(Continued)
`Primary Examiner — James E. Richardson
`(74) Attorney, Agent, or Firm — Kilpatrick Townsend &
`Stockton LLP
`
`ABSTRACT
`(57)
`Systems and methods are provided for creating, publishing,
`sharing, and delivering mobile Software applications called
`“mobile widgets' onto mobile devices. A system may include
`functionality to render a declaratory component of a widget,
`Such as HTML, and also functionality to execute an impera
`tive component of a widget, which may or may not be com
`piled and/or in a scripting or functional language. Mecha
`nisms for providing common access to disparate device
`capabilities APIs are also provided, as are mechanisms for
`installing widgets onto mobile devices and managing those
`widgets.
`
`62 Claims, 72 Drawing Sheets
`
`121
`
`122
`
`123
`
`124
`
`Content
`Publisher
`
`
`
`Any
`Website
`
`141
`
`140
`
`SAP Exhibit 1031
`SAP v. Express Mobile, Inc.
`IPR2021-01146
`Page 00001
`
`
`
`US 8,595,186 B1
`Page 2
`
`(56)
`
`References Cited
`
`2009/0077664 A1
`
`3/2009 Hsu et al. ........................ T26/24
`
`U.S. PATENT DOCUMENTS
`
`OTHER PUBLICATIONS
`
`2007/0101291 A1* 5/2007 Forstall et al. ................ 715/805
`2007/0101433 A1* 5, 2007 Louch et al.
`T26,25
`.
`.
`.
`.
`.
`.
`.
`.
`.
`.
`392,8. is: A. 8.392 R. R. J .
`. 45.s
`367,05564. A
`6'567 ERNI". 663,
`amin SK1, Jr. ................
`2007,0260637 A1* 11, 2007 Shenfield etal
`TO7 104.1
`2007/0275705 A* i?3007 Laletal. 455,414.
`2008/0167078 A1* 7/2008 Eibye ..........
`455,566
`2008. O168382 A1* 7, 2008 Louch et al.
`715,781
`2008/O168391 A1* 7/2008 Robbin et al. ................ T15,810
`
`
`
`Tomimori et al. "An Efficient and Flexible Access Control Frame
`work for Java Programs in Mobile Terminals' 2002. Proceedings of
`the 22nd International Conference on Distributed Computing Sys
`Sms Workshops. Pages.
`ck
`Raento et al. “ContextPhone: A prototyping Platform for Context
`Aware Mobile Applications' 2005. Pervasive Computing, IEEE, vol.
`4. No. 2, pp. 51-59.*
`
`* cited by examiner
`
`IPR2021-01146 Page 00002
`
`
`
`U.S. Patent
`U.S. Patent
`
`M:L
`
`225
`
`o:2255
`
`E880
`
`
`
`2V.
`
`31
`
`m
`
`US 8,595,186 B1
`1B681.}
`
`8SU
`
`5o
`05),SN%\.&
`
`(o)/ 6/)
`
`N835m
`
`n05903M51o2o2
`
`«Mo:Hoemwouwwae‘
`
`HoEton
`
`IZI
`HS
`
`ZZI
`NS
`
`m2
`
`#2
`
`IPR2021-01146 Page 00003
`
`IPR2021-01146 Page 00003
`
`
`
`
`
`U.S. Patent
`
`Nov. 26, 2013
`
`Sheet 2 of 72
`
`US 8,595,186 B1
`
`09 I
`
`
`
`[8]
`
`ILI
`
`[9][
`
`| - || ~ ||
`
`| + |
`
`OLI
`
`IPR2021-01146 Page 00004
`
`
`
`U.S. Patent
`
`Nov. 26, 2013
`
`Sheet 3 of 72
`
`US 8,595,186 B1
`
`External Service
`and Widgets
`
`240
`
`
`
`Personal Server System
`
`230
`
`r
`
`Photo
`Blogging
`Content
`Publishing
`Pisi
`Tools
`upilsning
`Applications L-
`
`---
`
`H .
`Applications
`Personal
`...
`I
`Web
`Applications
`(Email,
`Audio/Video
`Calendar,
`Multi-Media
`pp
`Notes
`
`|-
`other
`
`IPR2021-01146 Page 00005
`
`
`
`U.S. Patent
`
`Nov. 26, 2013
`
`Sheet 4 of 72
`
`US 8,595,186 B1
`
`
`
`SS
`
`&
`
`&.
`
`
`
`
`
`3}}
`
`- widget launchpad N.
`
`
`
`
`
`
`
`FIG 3
`
`IPR2021-01146 Page 00006
`
`
`
`U.S. Patent
`
`Nov. 26, 2013
`
`Sheet 5 Of 72
`
`US 8,595,186 B1
`
`
`
`Self Serve Web and Mobile Interface
`
`Susses
`
`Application &
`Resources
`
`Billing Server
`
`Purchases
`
`Costs
`
`Location Engine
`
`S Location Database
`See
`
`Ad Syndication Engine
`
`AdRepository
`
`Widget Creation Tools
`
`414
`
`410
`
`409
`
`IPR2021-01146 Page 00007
`
`
`
`U.S. Patent
`
`Nov. 26, 2013
`
`Sheet 6 of 72
`
`US 8,595,186 B1
`
`405
`
`Search Adapters
`
`MSN
`
`S Yahoo
`
`Search Index
`
`Alexa
`
`
`User Vault
`
`Content Cache
`
`Login Adapters
`
`API
`
`29 Memory Cache
`
`Passwords
`
`Session Manager
`
`Store
`
`403
`
`406
`
`413
`
`Network File
`System
`
`Database
`
`Livecasting Engine
`
`S
`OCCS
`
`Adapters/
`Listeners
`
`Media Sync.
`Text/video/audio
`
`
`
`
`
`FIG 4(a)2
`
`IPR2021-01146 Page 00008
`
`
`
`U.S. Patent
`
`Nov. 26, 2013
`
`Sheet 7 Of 72
`
`US 8,595,186 B1
`
`412
`
`407
`
`408
`
`Mobile Applications
`N Download Request Handler
`
`Sync Engine
`C ompression
`
`Device Detection
`
`Protocol Handler
`
`API
`
`Signature
`Resolution
`
`Difference Engine
`
`Content
`Transformer
`
`S S Processors
`
`Device
`Database
`
`Application
`Repository
`
`Content Adapters
`
`Text Data
`Sources
`
`Pull Adapter
`
`Video Data
`Sources
`
`Others (images,
`audio, etc)
`
`N
`
`Polling Server
`
`Push Adapter
`
`u- rare
`u- Nomalie
`Fle
`
`Transcoder (e.g. video,
`HTML, audio, etc)
`
`471
`
`470
`
`411
`
`
`
`Loggi
`Oggling
`
`> 402
`
`l/
`
`417
`
`Web Interface
`
`415
`
`(FIG 4(a)3
`
`IPR2021-01146 Page 00009
`
`
`
`U.S. Patent
`U.S. Patent
`
`310
`
`n
`
`US 8,595,186 B1
`1B%
`95:8S
`
`
`
`
`
`“we:85829.?
`
`997
`mmv
`
`va
`
`bmv
`
`
`
`
`
`653230WomBEOSSmEEEm@£23::58on“£395832
`
`Monwwnmmw<V.ofimnmcamEwenbunmM.as?
`
`mm520m..%§ob.E8”—umfism\Bcamwfiéwv—omm
`
`
`
`1N»Hmbm5,m
`
`
`
`(9), 6/7,
`
`U:1Eo:of
`
`Ev
`
`IPR2021-01146 Page 00010
`
`ofiufié
`
`E23
`
`botmomom
`
`wfiofiflmmaE8508&2?»2:5.on
`
`IPR2021-01146 Page 00010
`
`
`
`U.S. Patent
`US. Patent
`
`Nov. 26, 2013
`
`Sheet 9 of 72
`
`US 8,595,186 B1
`US 8,595,186 B1
`
`
`
`,
`
`Q
`
`E54
`
`N
`
`-\
`
`Ql
`
`'\
`
`K53
`
`\E
`
`IPR2021-01146 Page 00011
`
`IPR2021-01146 Page 00011
`
`
`
`U.S. Patent
`US. Patent
`
`Nov. 26, 2013
`Nov. 26, 2013
`
`Sheet 10 of 72
`Sheet 10 of 72
`
`US 8,595,186 B1
`US 8,595,186 B1
`
`
`
`—<
`| 89
`m
`m
`
`(\l
`("’7
`
`'1‘)
`
`m
`m
`
`Ln
`
`“-
`52
`
`“Q
`
`N Q
`
`53
`E:
`
`C)
`
`mm
`
`IPR2021-01146 Page 00012
`
`
`§,
`
`2::
`m'\K)
`%
`S63
`’31
`
`****
`
`E "
`
`"
`
`IPR2021-01146 Page 00012
`
`
`
`U.S. Patent
`US. Patent
`
`Nov. 26, 2013
`Nov. 26, 2013
`
`Sheet 11 of 72
`Sheet 11 of 72
`
`US 8,595,186 B1
`US 8,595,186 B1
`
`
`
`\\'\\\\\
`
`§k
`
`5
`
`' \\\\\\\\
`
`\\~.\\\\ \\\\\\
`
`\\\\\\
`
`‘3‘“
`
`magmaf
`
`o
`60]
`
`IPR2021-01146 Page 00013
`
`$i
`
`s“.
`\Gv?
`
`\G
`
`79‘
`
`IPR2021-01146 Page 00013
`
`
`
`U.S. Patent
`U.S. Patent
`
`NOV. 26, 2013
`
`Sheet 12 of 72
`
`US 8,595,186 B1
`US 8,595,186 B1
`
`
`
`gnawmmvwfimagma
`
`wwfieam«axuwm
`
`
`
`fiwfia33mm»
`
`
`
`$3252,521.4
`
`
`
`“x
`
`IPR2021-01146 Page 00014
`
`IPR2021-01146 Page 00014
`
`
`
`U.S. Patent
`U.S. Patent
`
`Nov. 26, 2013
`NOV. 26, 2013
`
`Sheet 13 Of 72
`Sheet 13 of 72
`
`US 8,595,186 B1
`US 8,595,186 B1
`
`
`
`con
`
`
`\\\\\\\\
`
`
`
`m&&%x.
`
`IPR2021-01146 Page 00015
`
`IPR2021-01146 Page 00015
`
`
`
`
`
`U.S. Patent
`U.S. Patent
`
`NOV. 26, 2013
`
`Sheet 14 of 72
`
`US 8,595,186 B1
`US 8,595,186 B1
`
`
`
`******??***
`3a€2§3€§§§3§§§¥3“
`
`,uawfifiwfifigwguh
`
`%\\\\\
`
`
`
`fixwag«Wm.gm»
`
`IPR2021-01146 Page 00016
`
`IPR2021-01146 Page 00016
`
`
`
`U.S. Patent
`US. Patent
`
`Nov. 26, 2013
`Nov. 26, 2013
`
`Sheet 15 Of 72
`Sheet 15 of 72
`
`US 8,595,186 B1
`US 8,595,186 B1
`
`t-
`P
`C
`o
`90
`
`ex
`00
`C
`o
`CC}
`KX
`
`er
`m
`C.)
`“"
`
`g
`DC,
`
`
`
`
`
`23m?
`
` “£2222m2:252*;
`
`
`
`
`
`:
`805
`
`806
`
`(\I
`N
`Q1—I
`O H
`00C)
`is
`00
`
`IPR2021-01146 Page 00017
`
`IPR2021-01146 Page 00017
`
`
`
`U.S. Patent
`US. Patent
`
`Nov. 26, 2013
`Nov. 26, 2013
`
`Sheet 16 of 72
`Sheet 16 of 72
`
`US 8,595,186 B1
`US 8,595,186 B1
`
`
`
`(9(5)
`
`Hg.
`
`CD
`it“;
`so
`
`IPR2021-01146 Page 00018
`
`IPR2021-01146 Page 00018
`
`
`
`U.S. Patent
`U.S. Patent
`
`Nov. 26, 2013
`31026a
`
`Sheet 17 Of 72
`hS
`27M
`
`US 8,595,186 B1
`1B681.}
`8,m
`
`5-0ww_m_E
`
`{ | 6| 16
`
`
`
`_.oo
`
`30.
`
`
`
`
`
`
`
`7V\NV““w1\\AK”mt\\\W
`2.wkuflwtsvm.3%§EW3»?«3.2.“gm.,gwakwmwfiwfiflw@mnfifimmmg
`
`
`
`Sm9g
`
`IPR2021-01146 Page 00019
`
`IPR2021-01146 Page 00019
`
`
`
`U.S. Patent
`U.S. Patent
`
`2V.0N
`
`27f0001teehS
`
`US 8,595,186 B1
`1B681.}59598SU
`
`
`
`$3223cowmmmmccszEoEogm1tam:m5:0EwflmgEmmvmvmomcaonmm69:;
`
`
`
`6,382am9:.
`
`
`********
`
`x*******
`523:1;H
`
`IPR2021-01146 Page 00020
`
`IPR2021-01146 Page 00020
`
`
`
`
`
`U.S. Patent
`
`Nov. 26, 2013
`
`Sheet 19 Of 72
`
`US 8,595,186 B1
`
`
`
`Generate CAPTCHA
`
`Show Form
`With CAPTCHA
`
`UserEnters Data
`
`Validate CAPTCHA
`
`Validate User
`Entered Fields
`
`FIG 10
`
`1006
`
`IPR2021-01146 Page 00021
`
`
`
`U.S. Patent
`
`Nov. 26, 2013
`
`Sheet 20 Of 72
`
`US 8,595,186 B1
`
`
`
`
`
`
`
`Mobile client accesses
`download page
`(MSISDN is sent)
`
`Display Form
`
`1108
`
`1100
`
`User register on mobile site
`(similar flow to web
`registration)
`
`User Enters Data
`
`Application is launched
`
`1109
`
`1101
`
`1105
`
`wERSSis
`used as unique ID)
`
`User data saved and
`unique ID generated
`
`Client generates
`response code
`
`1110
`
`
`
`
`
`1102
`
`1106
`
`Create Download
`Package w/ Unique ID
`
`Client transmits
`de to
`respect
`
`1103
`
`1107
`
`User downloads package
`onto device
`
`1104
`
`(FIG 11
`
`IPR2021-01146 Page 00022
`
`
`
`U.S. Patent
`
`US 8,595,186 B1
`
`
`
`SIZI
`
`ZI 6J)
`
`90ZI
`
`90ZI
`
`IPR2021-01146 Page 00023
`
`
`
`U.S. Patent
`
`NOV. 26, 2013
`
`Sheet 22 of 72
`
`US 8,595,186 B1
`
`OMS
`
`038%
`
`A
`
`0902
`
`BER—fieZ
`
`av?
`
`ommfi
`
`at“
`
`on?
`
`amm—
`
`38EEEEoU
`
`8%3mm
`
`
`
`commBo"Saga.mmm
`
`cm:
`
`ONE
`
`2.mbm
`
`ommfi
`
`:25den
`
`
`
`68SEQ—8Egm
`
`55
`
`-s<
`HS:
`
`55K5.
`
`Howmofim
`
`O
`
`KHEQ
`
`H32
`
`IPR2021-01146 Page 00024
`
`IPR2021-01146 Page 00024
`
`
`
`
`U.S. Patent
`
`Nov. 26, 2013
`
`Sheet 23 Of 72
`
`US 8,595,186 B1
`
`Client connects to the
`Server
`
`1400
`
`Server computes the
`server's current load
`
`1401
`
`
`
`
`
`Exceeds threshold?
`
`Yes
`
`Issue command future
`incoming requests to slow
`polling interval
`
`1402
`
`1403
`
`No
`
`
`
`Client sets new polling
`interval
`
`1404
`
`F/G, 14
`
`IPR2021-01146 Page 00025
`
`
`
`U.S. Patent
`
`Nov. 26, 2013
`
`Sheet 24 of 72
`
`US 8,595,186 B1
`
`Fetch content through
`polling or push adapters
`
`Transcoding
`(with caching)
`
`1501
`
`1505
`
`Detect content type
`
`Insertions
`
`1502
`
`1506
`
`Store (cache) data
`
`Delivery
`(with caching)
`
`1503
`
`1507
`
`Filter data
`(with caching)
`
`
`
`
`
`
`
`FIG 15
`
`IPR2021-01146 Page 00026
`
`
`
`U.S. Patent
`U.S. Patent
`
`0
`
`N«6'
`
`
`V.EmmoafiooEuouam82>253082>825836523082>>
`
`382m82882.M
`
`
`
`32cm:
`
`
`
`
`
`
`
`S
`
`f052
`
`US 8,595,186 B1
`1B600
`
`00S
`
`
`
`
`
`m)20222282>a:8222682>
`
`nomfism82>
`
`U£28.-Efimgowmnfik82>.a:BS8822
`
`M,22882>82
`.r%05),bNNS
`8825—-on$2582>85m
`
`IPR2021-01146 Page 00027
`
`IPR2021-01146 Page 00027
`
`
`
`
`
`U.S. Patent
`
`Nov. 26, 2013
`
`Sheet 26 of 72
`
`US 8,595,186 B1
`
`
`
`
`
`
`
`
`
`Loop
`until
`finished
`
`Mobile client requests a
`Web page
`
`Rewrite embedded URLs to
`point back to transcoding
`SeWe
`
`1705
`
`1730
`
`Store cookies sent by the
`web site
`
`Cache result
`
`1710
`
`1735
`
`Server fetches web page
`with cookies for the user on
`that web site
`
`Send to the client
`
`1715
`
`1740
`
`Get rules to apply
`
`1720
`
`Apply rules one-by-one
`
`1725
`
`FIG. 17
`
`IPR2021-01146 Page 00028
`
`
`
`U.S. Patent
`
`Nov. 26, 2013
`
`Sheet 27 Of 72
`
`US 8,595,186 B1
`
`Mobile device connects to
`server via web browser
`
`Mobile device connects to
`server via mobile
`application
`
`Collect device fingerprint
`
`Analysis module queries
`device database
`
`
`
`Exact match?
`
`Find next ranked result
`
`Fallback
`
`FIG. 18
`
`IPR2021-01146 Page 00029
`
`
`
`U.S. Patent
`U.S. Patent
`
`Nov. 26, 2013
`1026a2
`
`Sheet 28 Of 72
`7f0
`eehS
`2
`
`8ES
`
`mbiom
`
`cage—mum
`
`t538285
`
`US 8,595,186 B1
`1B600
`
`5
`
`0090:80W83
`
`
`
`
`
`$0an:Hum—:3ommfi.2cm?
`
`19u%ANmE
`
`6I 6J)
`
`
`
`
`
`V.unnam—Mwfiuouéfihnoummuummaw85cm
`
`2:on
`
`3ommfi23
`
`much—omE880
`
`
`
`
`
`
`
`
`
`82.5wE850
`
`aomeEoEoEnm
`
`0&qu
`
`ONE
`
`33
`
`IPR2021-01146 Page 00030
`
`IPR2021-01146 Page 00030
`
`
`
`
`
`
`
`U.S. Patent
`US. Patent
`
`Nov. 26, 2013
`Nov. 26, 2013
`
`Sheet 29 Of 72
`Sheet 29 of 72
`
`US 8,595,186 B1
`US 8,595,186 B1
`
`
`
`2020
`
`
`fig.20/5)
`(0)0,7 6/7,
`
`
`
`Hg?20/5)
`(Ø0, 6./J
`
`
`20/4)
`
`Hg.
`(0)0,7 6/7,
`
`
`2010
`
`IPR2021-01146 Page 00031
`
`IPR2021-01146 Page 00031
`
`
`
`U.S. Patent
`US. Patent
`
`Nov. 26, 2013
`Nov. 26, 2013
`
`Sheet 30 Of 72
`Sheet 30 of 72
`
`US 8,595,186 B1
`US 8,595,186 B1
`
`090,
`2060
`
`
`
`
`fig.2059
`(/)OZ. 6)
`
`
`
`(3)OZ. 6/7,
`
`Lag
`
`Lu
`
`C)
`O
`
`20@
`
`QQN
`
`Es
`
`Hg.
`(p)OZ. 6)
`
`IPR2021-01146 Page 00032
`
`IPR2021-01146 Page 00032
`
`
`
`U.S. Patent
`US. Patent
`
`Nov. 26, 2013
`Nov. 26, 2013
`
`Sheet 31 Of 72
`Sheet 31 of 72
`
`US 8,595,186 B1
`US 8,595,186 B1
`
`
`
`
`
`Hg.20/6)
`
`20¢)
`
`Hg.
`
`IPR2021-01146 Page 00033
`
`Q[
`
`"a
`C3
`m:
`
`IPR2021-01146 Page 00033
`
`
`
`U.S. Patent
`US. Patent
`
`Nov. 26, 2013
`Nov. 26, 2013
`
`Sheet 32 Of 72
`Sheet 32 of 72
`
`US 8,595,186 B1
`US 8,595,186 B1
`
`
`
`
`
`21(4)
`
`
`
`Hg;21¢)
`
`
`Hg.21(6)
`(9), 6/7,
`
`
`Hg;
`(0), 6/7,
`
`
`IPR2021-01146 Page 00034
`
`IPR2021-01146 Page 00034
`
`
`
`U.S. Patent
`US. Patent
`
`Nov. 26, 2013
`Nov. 26, 2013
`
`Sheet 33 Of 72
`Sheet 33 of 72
`
`US 8,595,186 B1
`US 8,595,186 B1
`
`
`
`Hg.my
`
`21/0
`
`Hg.
`
`IPR2021-01146 Page 00035
`
`IPR2021-01146 Page 00035
`
`
`
`U.S. Patent
`US. Patent
`
`Nov. 26, 2013
`Nov. 26, 2013
`
`Sheet 34 of 72
`Sheet 34 of 72
`
`US 8,595,186 B1
`US 8,595,186 B1
`
`
`
`
`
`Hg.22¢)
`
`22/5)
`
`Hg.
`
`
`
`IPR2021-01146 Page 00036
`
`IPR2021-01146 Page 00036
`
`
`
`U.S. Patent
`US. Patent
`
`Nov. 26, 2013
`Nov. 26, 2013
`
`Sheet 35 of 72
`Sheet 35 of 72
`
`US 8,595,186 B1
`US 8,595,186 B1
`
`
`
`22@
`
`31“\\
`\V“
`
`mm
`SS
`
`
`
`Hg.2259
`
`
`
`Hg.22¢)
`
`Hg.
`
`IPR2021-01146 Page 00037
`
`IPR2021-01146 Page 00037
`
`
`
`U.S. Patent
`
`NOV. 26, 2013
`
`Sheet 36 of 72
`
`US 8,595,186 B1
`
`23(5)
`971g.
`
`23/5)
`fig.
`
`hemagFactarg~Epififldeé.»SteveHal!atHdrantsmm
`
`
`
`23/4)
`Mg.
`
`2310
`
`2320
`
`0CD
`m'fl'
`mm
`9*»! (‘3
`
`IPR2021-01146 Page 00038
`
`IPR2021-01146 Page 00038
`
`
`
`U.S. Patent
`US. Patent
`
`Nov. 26, 2013
`Nov. 26, 2013
`
`Sheet 37 Of 72
`Sheet 37 of 72
`
`US 8,595,186 B1
`US 8,595,186 B1
`
`
`
`9”ng23¢)
`2350
`
`
`
`i.
`
`5.
`
`C
`Q
`\
`\«O
`6")
`er,
`KN
`(“\1
`
`C:
`N
`f"
`N
`
`IPR2021-01146 Page 00039
`
`IPR2021-01146 Page 00039
`
`
`
`U.S. Patent
`US. Patent
`
`Nov. 26, 2013
`Nov. 26, 2013
`
`Sheet 38 of 72
`Sheet 38 of 72
`
`US 8,595,186 B1
`US 8,595,186 B1
`
`
`
`
`
`Hg.23(6)
`
`
`
`Hg.23g)
`
`2369
`
`Hg.
`
`IPR2021-01146 Page 00040
`
`IPR2021-01146 Page 00040
`
`
`
`U.S. Patent
`US. Patent
`
`Nov. 26, 2013
`Nov. 26, 2013
`
`Sheet 39 of 72
`Sheet 39 of 72
`
`US 8,595,186 B1
`US 8,595,186 B1
`
`
`
`
`
`Hg.24/5)
`
`24/4)
`
`‘20
`
`fig.
`
`2410
`
`IPR2021-01146 Page 00041
`
`IPR2021-01146 Page 00041
`
`
`
`U.S. Patent
`US. Patent
`
`Nov. 26, 2013
`Nov. 26, 2013
`
`Sheet 40 of 72
`Sheet 40 of 72
`
`US 8,595,186 B1
`US 8,595,186 B1
`
`i
`2430
`
`2450
`
`
`
`
`
`
`
`
`
`3.
`243
`
`i.
`3450
`
`M
`r
`t];-
`s
`(“I
`e-
`
`C)
`C
`11“}
`s
`T?
`s
`N
`NE
`
`IPR2021-01146 Page 00042
`
`IPR2021-01146 Page 00042
`
`
`
`U.S. Patent
`US. Patent
`
`Nov. 26, 2013
`Nov. 26, 2013
`
`Sheet 41 of 72
`Sheet 41 of 72
`
`US 8,595,186 B1
`US 8,595,186 B1
`
`25(5)
`Hg.
`s:
`
`fig.25(5)
`
`
`
`5.
`2520
`
`2510
`
`
`
`2510
`
`mm
`
`5.
`2520
`
`
`
`
`
`9“ng25/4)
`
`g:
`tr.
`n
`(“I
`c.
`
`0 i
`
`IPR2021-01146 Page 00043
`
`IPR2021-01146 Page 00043
`
`
`
`U.S. Patent
`U.S. Patent
`
`Nov. 26, 2013
`NOV. 26, 2013
`
`Sheet 42 of 72
`Sheet 42 of 72
`
`US 8,595,186 B1
`US 8,595,186 B1
`
`IPR2021-01146 Page 00044
`
`\onKi
`
`‘x.:a>o§§§
`
`Ki?»
`
`wgw
`
`2mm
`
`5.
`ommm
`
`N m
`
`m
`
`
`
`IPR2021-01146 Page 00044
`
`
`
`
`
`
`U.S. Patent
`US. Patent
`
`Nov. 26, 2013
`Nov. 26, 2013
`
`Sheet 43 of 72
`Sheet 43 of 72
`
`US 8,595,186 B1
`US 8,595,186 B1
`
`
`
`9‘7ng25g)
`
`2559
`
`Hg.
`
`IPR2021-01146 Page 00045
`
`C
`CD
`rf
`
`mm f
`
`-
`ix!
`
`IPR2021-01146 Page 00045
`
`
`
`U.S. Patent
`U.S. Patent
`
`Nov. 26, 2013
`3102
`
`Sheet 44 of 72
`27f04
`mhS
`
`US 8,595,186 B1
`1B600
`1.}595,
`
`00SU
`
`4«$0
`
`¿??????????????????????:?? s:
`
`
`
`
`
`MwagEgan.Hm,m:wNinaan,comuzhméummmmHmNMLu
`
`mEmu m
`m
`
`${}{}}}}
`
`
`
`£35magimsaEmmmxHm
`
`
`
`N...“gugacogsgm:
`
`
`
`..gm$35.;me
`
`()[97]
`3m
`
`: 0
`
`Emmmfimg“mm:mmm;an
`
`«yawn
`
`DEN
`
`IPR2021-01146 Page 00046
`
`IPR2021-01146 Page 00046
`
`
`
`U.S. Patent
`US. Patent
`
`Nov. 26, 2013
`Nov. 26, 2013
`
`Sheet 45 of 72
`Sheet 45 of 72
`
`US 8,595,186 B1
`US 8,595,186 B1
`
`
`
`\WWW\
`
`
`
`Ll"!
`E"
`3.12.
`n:
`m
`@3111“? Q
`gm {2‘
`as «73% _
`FEEL”;
`\g
`«34.5: E.
`Saki-H ‘
`N
`mam
`mmgm
`“SEER:
`Li:
`2,34:
`:QE‘MH.
`HQ mfit‘
`4M mm’fi
`1:1,: NTD~
`.‘A-i\w 5.13”.»
`BNfi$
`33mg.
`Hmfl'fifl.‘
`
`-
`Q33
`\4
`
`
`
`Hg.26(3)
`
`26(4
`
`Hg.
`
`IPR2021-01146 Page 00047
`
`IPR2021-01146 Page 00047
`
`
`
`U.S. Patent
`
`Nov. 26, 2013
`
`Sheet 46 of 72
`
`US 8,595,186 B1
`
`
`
`
`
`
`
`3
`
`use|300,110||semnqffhues
`
`IPR2021-01146 Page 00048
`
`
`
`U.S. Patent
`U.S. Patent
`
`Nov. 26, 2013
`NOV. 26, 2013
`
`Sheet 47 of 72
`Sheet 47 of 72
`
`US 8,595,186 B1
`US 8,595,186 B1
`
`! ·%
`3
`
`Em3%Emma
`
`
`
`3), 6/7,
`
`
`
`
`
`
`
`
`
`QwfilfifidfixNnmfimmmemWm,33$th70._m?8358Q...MWm“
`
`
`
`
`
`
`
`
`
`Sm3mgnEmEdm3
`fiwwmmmma
`
`m<.
`\gym“,w(w
`
`IPR2021-01146 Page 00049
`
`IPR2021-01146 Page 00049
`
`
`
`
`
`U.S. Patent
`U.S. Patent
`
`Nov. 26, 2013
`NOV. 26, 2013
`
`Sheet 48 of 72
`Sheet 48 of 72
`
`US 8,595,186 B1
`US 8,595,186 B1
`
`0EEmumgEmmfiiu
`
`mEEganEES
`
`l.
`Z
`
`omb N
`
`:
`
`
`
`IPR2021-01146 Page 00050
`
`IPR2021-01146 Page 00050
`
`
`
`
`
`
`U.S. Patent
`U.S. Patent
`
`Nov. 26, 2013
`NOV.26,2013
`
`Sheet 49 of 72
`Sheet49of72
`
`US 8,595,186 B1
`US 8,595,186 B1
`
`\
`
`xxxxxxxxxxx
`
`xx‘x‘xxxx\\\
`
`
`
` wamu3$me\wwmmmBmEEnm
`
`mflm
`
` \\\\\\\\\\\\\\\\\\\\
`
`Hx
`
`2....Nair:xmamEamgmC;
`2~m:mg§.\.._.I2:mg:mmzmmm2%w.mm:m33m5
`
`
`
`REM.5§2:New:
`
`mmgfifi...magma...mmya:
`
`.3...CE3:x.3
`
`(okz:6)
`
`IPR2021-01146 Page 00051
`
`
`
`
`
`
`
`
`
`
`
`IPR2021-01146 Page 00051
`
`
`
`
`
`
`
`
`U.S. Patent
`U.S. Patent
`
`3
`
`27f005mhS
`
`US 8,595,186 B1
`1B600
`1.}595,
`
`U
`
`
`
`ofiwwOmhmoymm
`
`
`
`
`
`
`
`V.‘.fluin“:Lu“r.“Muzwhuruhu...Hn.mu.uuuh”3:.mmmwmama$2.9....o__mm
`
`
`
`ma«an\zmgm3EfifimgmmmM,333%xmmnmm0.xmmmw
`
`00.Sowhm
`
`IPR2021-01146 Page 00052
`
`IPR2021-01146 Page 00052
`
`
`
`
`US. Patent
`
`Nov. 26, 2013
`
`Sheet 51 of 72
`
`US 8,595,186 B1
`
`
`
`
`
`Hg.25%)
`
`
`
`9‘7ng23/5)
`
`
`
`Hg.25g)
`
`IPR2021-01146 Page 00053
`
`
`
`
`
`«4--f‘i‘"(”Hr-KM”J;I1-.HF!‘
`
`
`
`4_a
`+4
`:3
`:3
`’23
`{:3
`4.!
`+3
`Q Q
`L...
`1....
`
`mahmbz
`
`ham
`E: E;
`
`
`
`Bangladesh..2ndinningsé
`
`w
`v?5
`'2’
`V,"7’2,(M
`
`IPR2021-01146 Page 00053
`
`
`
`U.S. Patent
`
`Nov. 26, 2013
`
`Sheet 52 of 72
`
`US 8,595,186 B1
`
`
`
`Construction
`at 88 SE3 and
`
`SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
`
`XXXXXXX-XXXXX-XXXXXXXXXX-XXXXXXXXXXXXXXXXXXXXXXXXX
`
`SSSSSSSSSSS
`
`SS
`
`SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
`
`IPR2021-01146 Page 00054
`
`
`
`U.S. Patent
`US. Patent
`
`Nov. 26, 2013
`Nov. 26, 2013
`
`Sheet 53 of 72
`Sheet 53 of 72
`
`US 8,595,186 B1
`US 8,595,186 B1
`
`SO
`3018
`
`
`
`\ mm
`
`““3“ ~.
`
`‘\ \§
`
`.
`
`
`
`Š Š Š ass
`Š
`S
`
`S. S. s Y &
`
`IPR2021-01146 Page 00055
`
`IPR2021-01146 Page 00055
`
`
`
`U.S. Patent
`
`Nov. 26, 2013
`
`Sheet 54 Of 72
`
`US 8,595,186 B1
`
`
`
`Scan local cache for
`headlines by
`Article Publish Date
`
`Filter headlines by
`Unread articles
`
`Filter headlines by
`Weights
`
`Filter out from special
`tagged feeds
`
`Add basic information
`including traffic, weather
`
`Include advertisements
`from local ad cache
`
`Render Dynamic Info
`Display
`
`3110
`
`FIG 31
`
`IPR2021-01146 Page 00056
`
`
`
`U.S. Patent
`
`Nov. 26, 2013
`
`Sheet 55 of 72
`
`US 8,595,186 B1
`
`3205
`
`3225
`
`User 1 requests widget
`to be shared
`
`
`
`User 2 requestsynchronization
`
`serspecifies other party's
`unique identifier (phone
`number, name, email, etc)
`as well as a message for
`the other user
`
`Mobile client connects to
`the server for
`synchronization
`
`Request transmitted to the
`SeWer
`
`Server looks up in the
`pending add queue and
`removes from the add list
`
`Serverlooks up user and
`saves the add request in
`the other user's widgef
`widget data add queue
`
`Pending request
`transmitted to the user
`
`User accepts addrequest
`
`Server adds to user 2's
`aCCOunt
`
`FIG 32
`
`3250
`
`IPR2021-01146 Page 00057
`
`
`
`U.S. Patent
`
`US 8,595,186 B1
`
`
`
`SZ99
`
`
`
`seAueO ÁÐIds[CI | ~ ||
`
`IPR2021-01146 Page 00058
`
`
`
`U.S. Patent
`
`Nov. 26, 2013
`
`Sheet 57 Of 72
`
`US 8,595,186 B1
`
`&
`
`
`
`
`
`
`
`& &S
`
`
`
`Sssssssssssss
`
`w
`r
`
`s
`
`IPR2021-01146 Page 00059
`
`
`
`U.S. Patent
`US. Patent
`
`Nov. 26, 2013
`Nov. 26, 2013
`
`Sheet 58 Of 72
`Sheet 58 of 72
`
`US 8,595,186 B1
`US 8,595,186 B1
`
`:2, M azcssmrzmé
`
`
` ‘ Mm Ezéjtmn
`
`
`
`«,Qwés‘m
`
`
`
`
`356)
`
`
`
`IPR2021-01146 Page 00060
`
`IPR2021-01146 Page 00060
`
`
`
`U.S. Patent
`U.S. Patent
`
`V.0N
`
`3102
`
`S
`
`f095
`
`US 8,595,186 B1
`1B681.}595,8SU
`
`MMoSm
`
`0798
`ogm
`
`nchemomom
`
`
`
`
`
`m“88:809355.55
`
`
`
`53mm
`
`mm<
`
`85:5
`
`oSm
`
`omcm
`
`0998
`comm
`
`owfioam
`
`0999
`omom
`
`0899
`owom
`
`bm.mE
`
`IPR2021-01146 Page 00061
`
`IPR2021-01146 Page 00061
`
`
`
`
`U.S. Patent
`U.S. Patent
`
`Nov. 26, 2013
`NOV. 26, 2013
`
`Sheet 60 of 72
`Sheet 60 of 72
`
`US 8,595,186 B1
`US 8,595,186 B1
`
`
`
`
`
`\""\\\\\\\\\\\\\\\\\\\\\\\\~\x~\~\x‘““\\\\\\\\\\\\\\\xx\\\\\~\x~\~\\“
`
`
`
`em:2.?\QNM“mbmmo:
`
`IPR2021-01146 Page 00062
`
` mwbm
`
`\x\x\\---\\~\xxxxxxxxxxxxxxxxxxxxxxx\\x\\--\~\\~xxxx\xxxxxxxxxxxxxxxxxx\\\\\\\\x\\-\»»»»\\\\\xx
`
`figmfigmamwmm
`
`IPR2021-01146 Page 00062
`
`
`
`U.S. Patent
`U.S. Patent
`
`Nov. 26, 2013
`NOV. 26, 2013
`
`Sheet 61 of 72
`Sheet 61 of 72
`
`US 8,595,186 B1
`US 8,595,186 B1
`
`
`
`
`
`\AvkovavunfitxK3”v.va
`
`
`
`,...“mwfiw
`
`omnm
`
`IPR2021-01146 Page 00063
`
`IPR2021-01146 Page 00063
`
`
`
`U.S. Patent
`U.S. Patent
`
`Nov. 26, 2013
`NOV. 26, 2013
`
`Sheet 62 of 72
`Sheet 62 of 72
`
`US 8,595,186 B1
`US 8,595,186 B1
`
`
`
`S9/8
`mowm
`
`SS?8
`
`09/19
`
`mmhm oowm
`
`IPR2021-01146 Page 00064
`
`IPR2021-01146 Page 00064
`
`
`
`U.S. Patent
`
`Nov. 26, 2013
`
`Sheet 63 of 72
`
`US 8,595,186 B1
`
`
`
`-
`
`e-r
`
`z
`
`Sssssssssssssssss
`
`& 3. 3.
`
`SS
`
`R
`
`IPR2021-01146 Page 00065
`
`
`
`U.S. Patent
`
`Nov. 26, 2013
`
`Sheet 64 of 72
`
`US 8,595,186 B1
`
`
`
`O
`r
`CO
`er
`
`l
`er
`CYO
`er
`
`:
`
`S. Qes
`
`(r
`RS
`N S
`
`lf
`r
`CO
`rr,
`
`C
`lf)
`CO
`er
`
`S.
`S
`
`S & S & S & X S
`
`S & s
`X S
`S &
`S
`S
`& X S.
`
`IPR2021-01146 Page 00066
`
`
`
`U.S. Patent
`U.S. Patent
`
`Nov. 26, 2013
`NOV. 26, 2013
`
`Sheet 65 Of 72
`Sheet 65 of 72
`
`US 8,595,186 B1
`US 8,595,186 B1
`
`?989
`mowm
`
`omwm
`
`
`
`\\
`
`IPR2021-01146 Page 00067
`
`IPR2021-01146 Page 00067
`
`
`
`U.S. Patent
`
`Nov. 26, 2013
`
`Sheet 66 of 72
`
`US 8,595,186 B1
`
`3.
`
`
`
`Robile user publishes a
`new widget around an
`SCC SaaS
`
`RSS
`Ernity's 2005
`SC SS
`
`Š
`She posts new content to it
`periodically from her phone at
`each soccer game
`
`|
`
`/
`
`wr s x
`
`
`
`
`
`
`
`ises who saiasciae
`to this widget get
`periodic information
`updates from this
`personal chante
`
`
`
`IPR2021-01146 Page 00068
`
`
`
`U.S. Patent
`
`Nov. 26, 2013
`
`Sheet 67 of 72
`
`US 8,595,186 B1
`
`
`
`User selects type of
`mobile widget
`
`Receive Widget
`description
`
`Generate image
`choices for widget
`
`Present choices for
`Widget content
`
`Receive content
`details
`
`Generate and publish
`Mobile Widget
`
`4006
`
`F/G, 40
`
`IPR2021-01146 Page 00069
`
`
`
`U.S. Patent
`
`Nov. 26, 2013
`
`Sheet 68 of 72
`
`US 8,595,186 B1
`
`
`
`Developer creates widget
`using wizard or with APIs
`
`Client requests a widget
`
`Widget archive is uploaded
`
`4135
`
`Consult cache, If not in
`cache, perform application
`assembly and save to
`cache
`
`Cache of assembled
`widgets
`
`Analyzer unpacks
`validates compiles and
`optimizes
`
`Compile scripts with other
`scripts that the widget
`references
`
`Application Repository
`
`
`
`Indexed for searching
`
`4125
`
`Delivery
`
`4150
`
`4155
`
`FIG. 41
`
`IPR2021-01146 Page 00070
`
`
`
`U.S. Patent
`U.S. Patent
`
`Nov. 26, 2013
`NOV. 26, 2013
`
`Sheet 69 Of 72
`Sheet 69 of 72
`
`US 8,595,186 B1
`US 8,595,186 B1
`
`
`
`§
`
`\\
`\
`
`\\\
`\
`
`i§§§\
`
`
`
`if:\S»x.1\\\$\.:1;x\\\x\\.1?\T?;.,..\.33\taxis“>\M\§\Rtk\\YK.mgxmfifit.)w.
`
`
`
`xxxxx
`
`\\\.\
`
`\§§m\\\\§
`
`IPR2021-01146 Page 00071
`
`IPR2021-01146 Page 00071
`
`
`
`
`
`
`Dmm?“\Axx‘xxxxx\\x\xxu\\\\\
`
`
`
`(ZO|????????????
`2my».my“wmmMg:
`S\\\\\
`(),: º| (……………………………
`:-)
`
`
`
`
`
`wxWxxxxxx\xxxxxx\Ax_x\xxMMxxNxWMx\wxxxwxxxNfixxx\xxxxmxwm
`
`
`\\\\\\\\\\\\\\x\\\\\\\\\W\\\\\\\x
`
`U.S. Patent
`U.S. Patent
`
`Z
`31026.,2V.0N
`
`7f007m
`
`
`
`US 8,595,186 B1
`1B681,59598SU
`
`
`
`\;f.
`
`3m?
`
`IPR2021-01146 Page 00072
`
`IPR2021-01146 Page 00072
`
`
`
`U.S. Patent
`
`Nov. 26, 2013
`
`Sheet 71 Of 72
`
`US 8,595,186 B1
`
`
`
`
`
`Sssssssssssssssssssssssssss
`
`
`
`ff. 6/7,
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`IPR2021-01146 Page 00073
`
`
`
`U.S. Patent
`U.S. Patent
`
`Nov. 26, 2013
`NOV. 26, 2013
`
`US 8,595,186 B1
`US 8,595,186 B1
`
`
`
`?
`:Smwsssfi
`
`.EwflwwM
`
`% ?
`\1?\§§m
`
`\\\“\\“\‘“\“\\\“\\“““~“\“\\Q
`§
`wy
`S
`
`«:6»
`
`“$332..3am;
`
`fifiuixu,.
`
`
`
`MWAmuEmm...‘fig.%
`
`
`
`63m:“Em
`
`
`
`2.55:.SR».fifin
`
`wet?—mmgwwwNE”5%:
`
`1,Em€3.55
`
`3:35, 3, #38 ?.
`
`
`
`figwins“::2me33;
`
`
`
`§§
`
`38:3v“...5335va“ES,{a
`
`
`
`ENEEEEEfiauvrm?$332%
`
`
`
`339%..car;L
`
`BamEmn_m.m%m.y_§mx“
`
`\k0t
`WVXK
`
`\m\\\\\\\\\\
`\\x§
`
`a.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\\\\\\\\\\\\\\\\\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\.\ma
`& SS
`
`IPR2021-01146 Page 00074
`
`IPR2021-01146 Page 00074
`
`
`
`US 8,595,186 B1
`
`1.
`SYSTEMAND METHOD FOR BUILDING AND
`DELIVERING MOBILE WIDGETS
`
`CROSS-REFERENCE TO RELATED
`APPLICATIONS
`
`This application claims the benefit of U.S. Provisional
`Patent Application No. 60/942,406, filed Jun. 6, 2007, the
`entire content of which is incorporated herein by reference.
`
`BACKGROUND
`
`1. Field
`The present disclosure relates to applications and user
`interfaces for mobile computing devices, and particularly to
`methods and systems for creating, publishing, sharing, and
`delivering mobile software applications.
`2. Description of the Related Art
`Cell phone data usage is on the rise. Phones may support
`the wireless application protocol (WAP), an international
`standard for applications that use wireless communication
`from mobile phones. Mobile data applications include SMS
`and the WAP browser, an Internet browser for accessing
`mobile web sites. Interactive and specialized kinds of appli
`cations are also in use.
`Mobile usage patterns are different from desktop usage.
`Users may be on the move, in a movie line, on public trans
`portation, or in a coffee shop and may have very short atten
`tion spans and may be in situations where it is very hard to
`type. Such a user may launch the browser and waits for the
`results. By the time the results are delivered to the mobile
`device, the user may have moved on to another task.
`Further, mobile devices may have diverse non-standard
`feature sets and user interfaces. Phone manufacturer has a
`different way of presenting the user interface on the mobile
`device. Menus may be unique to a particular device, and users
`may have to learn where the application modules are and how
`to perform device setup. At any given time, there may be
`multiple mobile models supported by multiple mobile opera
`tors with diverse physical layouts, including QWERTY key
`boards, keypads, thumb wheels, joy sticks, styluses, roller
`balls, etc.
`
`2
`gramming interface for the widget applications to access a
`common device capability of the mobile devices.
`A method for executing a widget Software application is
`provided. The method includes rendering a declaratory
`markup language component of the widget application,
`executing a compiled programming language component of
`the widget application, and automatically downloading wid
`get applications or descriptions of widget applications from a
`network location to the mobile device without receiving user
`instructions for said widget applications. Executing the com
`piled programming language component includes making
`available to the widget application an API to access a device
`service of the mobile device.
`A Software widget application is provided and configured
`for installation and execution on a mobile device. The appli
`cation includes code written in a declaratory markup lan
`guage and code Written in a programming language, where
`the code written in a scripting language contains a call to an
`API accessing a device service of the mobile device.
`An application is provided including a software widget
`configured, when compiled, to be installed and run on a
`plurality of different mobile devices, each device having an
`operating system that runs software applications written in a
`programming language that is different than programming
`languages Supported by the operating systems of the other
`devices, wherein the devices have a common device service,
`the devices having different device services APIs for access
`ing the device service, the widget being configured to access
`the device service only through a single API distinct from
`each of the device services APIs.
`A method for creating a mobile Software widget applica
`tion is provided. The method includes accessing a first section
`of code written in a declaratory markup language, accessing
`a second section of code written in a programming language,
`compiling the second section of code to produce a compiled
`section, packaging the first section of code and the compiled
`section to produce a mobile widget application configured to
`be installed onto a mobile computing device so that a user of
`the device can repeatedly select, run, and terminate the widget
`application.
`A widget application distribution system is provided. The
`system includes a server adapted to transmit a software wid
`get application to a plurality of mobile devices of different
`types for installation thereupon, wherein each mobile device
`type includes a distinct API to a mobile device service that is
`common to all of the mobile device types, a software widget
`application stored on the server, the widget application com
`prising a first component including programming language
`code and a second component including declaratory markup
`language. The widget application is configured to utilize the
`mobile device service without directly accessing any of the
`distinct APIs.
`A widget application distribution system is provided,
`where the system includes a server having gallery of widget
`Software applications, the server configured to allow users of
`mobile computing devices to browse the gallery of widget
`applications from the mobile devices, each of the widget
`applications configured to be installed onto one of the mobile
`devices, the server configured to receive requests for down
`loading selected ones of the widget applications from the
`mobile devices, the server configured to respond to a request
`to download a widget application by electronically sending
`the widget application to be downloaded and installed to the
`mobile device that sent the request to the server.
`A method for synchronizing information with a mobile
`device is provided, including maintaining a first version of the
`information on an electronic storage, the information com
`
`10
`
`15
`
`25
`
`30
`
`35
`
`40
`
`SUMMARY
`
`A system is provided for executing a widget application
`installed on a mobile device, including a declaratory markup
`language renderer for rendering a declaratory markup lan
`guage component of a widget application on a display of the
`mobile device, a compiled programming language execution
`engine for executing a compiled programming language
`component of a widget application installed on the mobile
`device, a mobile device API, adapted to be accessible to a
`widget application, and providing access to a device service
`API of the mobile device, and a widget manager configured to
`automatically download widget applications or descriptions
`of widget applications from a network location to the mobile
`device, without receiving user instructions for said widget
`applications.
`Software is provided which includes a plurality of different
`widget-executing engines for executing Software widget
`applications installed on a plurality of different types of
`mobile devices, where each of the mobile device types is
`adapted to run Software applications written in a program
`ming language that is distinct from programming languages
`supported by the other mobile device types, and all of the
`widge