实例介绍
这是一个安卓app升级版本更新的项目,里面包含了通知栏更新以及app内部更新,更新的情况分为强制更新,推荐更新和无需更新3种,里面使用了downloaderManager和httpurlconnection的2种下载方式,使用可以去看我的blog:https://github.com/zilianliuxue/AndroidStudy/
【实例截图】
【核心代码】
0a4d0e4e-9ed2-4eb1-b518-0657d717017c
└── AppUpdate
├── app
│ ├── app.iml
│ ├── build.gradle
│ ├── proguard-rules.pro
│ └── src
│ ├── androidTest
│ │ └── java
│ │ └── com
│ │ └── losileeya
│ │ └── appupdate
│ │ └── ExampleInstrumentedTest.java
│ ├── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ │ └── com
│ │ │ └── losileeya
│ │ │ └── appupdate
│ │ │ ├── ApkInstallReceiver.java
│ │ │ ├── AppInnerDownLoder.java
│ │ │ ├── bean
│ │ │ │ └── UpdateAppInfo.java
│ │ │ ├── CheckUpdateUtils.java
│ │ │ ├── DownLoadApk.java
│ │ │ ├── FileDownloadManager.java
│ │ │ ├── MainActivity.java
│ │ │ └── retrofit
│ │ │ ├── ApiService.java
│ │ │ └── ServiceFactory.java
│ │ └── res
│ │ ├── layout
│ │ │ └── activity_main.xml
│ │ ├── mipmap-hdpi
│ │ │ └── ic_launcher.png
│ │ ├── mipmap-mdpi
│ │ │ └── ic_launcher.png
│ │ ├── mipmap-xhdpi
│ │ │ └── ic_launcher.png
│ │ ├── mipmap-xxhdpi
│ │ │ └── ic_launcher.png
│ │ ├── mipmap-xxxhdpi
│ │ │ └── ic_launcher.png
│ │ ├── values
│ │ │ ├── colors.xml
│ │ │ ├── dimens.xml
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ │ └── values-w820dp
│ │ └── dimens.xml
│ └── test
│ └── java
│ └── com
│ └── losileeya
│ └── appupdate
│ └── ExampleUnitTest.java
├── AppUpdate.iml
├── build.gradle
├── gradle.properties
├── gradlew
├── gradlew.bat
├── local.properties
├── settings.gradle
└── 服务端后台接口
├── app.js
├── bin
│ └── www
├── node_modules
│ ├── accepts
│ │ ├── HISTORY.md
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── acorn
│ │ ├── AUTHORS
│ │ ├── bin
│ │ │ ├── acorn
│ │ │ ├── build-acorn.js
│ │ │ ├── generate-identifier-regex.js
│ │ │ └── update_authors.sh
│ │ ├── dist
│ │ │ ├── acorn.js
│ │ │ ├── acorn_loose.js
│ │ │ └── walk.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ ├── README.md
│ │ └── src
│ │ ├── bin
│ │ │ └── acorn.js
│ │ ├── expression.js
│ │ ├── identifier.js
│ │ ├── index.js
│ │ ├── location.js
│ │ ├── locutil.js
│ │ ├── loose
│ │ │ ├── acorn_loose.js
│ │ │ ├── expression.js
│ │ │ ├── index.js
│ │ │ ├── parseutil.js
│ │ │ ├── state.js
│ │ │ ├── statement.js
│ │ │ └── tokenize.js
│ │ ├── lval.js
│ │ ├── node.js
│ │ ├── options.js
│ │ ├── parseutil.js
│ │ ├── state.js
│ │ ├── statement.js
│ │ ├── tokencontext.js
│ │ ├── tokenize.js
│ │ ├── tokentype.js
│ │ ├── util.js
│ │ ├── walk
│ │ │ └── index.js
│ │ └── whitespace.js
│ ├── acorn-globals
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── align-text
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── amdefine
│ │ ├── amdefine.js
│ │ ├── intercept.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── array-flatten
│ │ ├── array-flatten.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── asap
│ │ ├── asap.js
│ │ ├── LICENSE.md
│ │ ├── package.json
│ │ └── README.md
│ ├── async
│ │ ├── component.json
│ │ ├── lib
│ │ │ └── async.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── basic-auth
│ │ ├── HISTORY.md
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── body-parser
│ │ ├── HISTORY.md
│ │ ├── index.js
│ │ ├── lib
│ │ │ ├── read.js
│ │ │ └── types
│ │ │ ├── json.js
│ │ │ ├── raw.js
│ │ │ ├── text.js
│ │ │ └── urlencoded.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── bytes
│ │ ├── History.md
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── Readme.md
│ ├── camelcase
│ │ ├── index.js
│ │ ├── license
│ │ ├── package.json
│ │ └── readme.md
│ ├── center-align
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ ├── README.md
│ │ └── utils.js
│ ├── character-parser
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── clean-css
│ │ ├── bin
│ │ │ └── cleancss
│ │ ├── History.md
│ │ ├── index.js
│ │ ├── lib
│ │ │ ├── clean.js
│ │ │ ├── colors
│ │ │ │ ├── hex-name-shortener.js
│ │ │ │ ├── hsl.js
│ │ │ │ └── rgb.js
│ │ │ ├── imports
│ │ │ │ └── inliner.js
│ │ │ ├── properties
│ │ │ │ ├── break-up.js
│ │ │ │ ├── can-override.js
│ │ │ │ ├── clone.js
│ │ │ │ ├── compactable.js
│ │ │ │ ├── every-combination.js
│ │ │ │ ├── has-inherit.js
│ │ │ │ ├── invalid-property-error.js
│ │ │ │ ├── optimizer.js
│ │ │ │ ├── override-compactor.js
│ │ │ │ ├── populate-components.js
│ │ │ │ ├── remove-unused.js
│ │ │ │ ├── restore-from-optimizing.js
│ │ │ │ ├── restore.js
│ │ │ │ ├── shorthand-compactor.js
│ │ │ │ ├── validator.js
│ │ │ │ ├── vendor-prefixes.js
│ │ │ │ └── wrap-for-optimizing.js
│ │ │ ├── selectors
│ │ │ │ ├── advanced.js
│ │ │ │ ├── clean-up.js
│ │ │ │ ├── extractor.js
│ │ │ │ ├── is-special.js
│ │ │ │ ├── merge-adjacent.js
│ │ │ │ ├── merge-media-queries.js
│ │ │ │ ├── merge-non-adjacent-by-body.js
│ │ │ │ ├── merge-non-adjacent-by-selector.js
│ │ │ │ ├── reduce-non-adjacent.js
│ │ │ │ ├── remove-duplicate-media-queries.js
│ │ │ │ ├── remove-duplicates.js
│ │ │ │ ├── reorderable.js
│ │ │ │ ├── restructure.js
│ │ │ │ └── simple.js
│ │ │ ├── source-maps
│ │ │ │ └── track.js
│ │ │ ├── stringifier
│ │ │ │ ├── helpers.js
│ │ │ │ ├── one-time.js
│ │ │ │ ├── simple.js
│ │ │ │ └── source-maps.js
│ │ │ ├── text
│ │ │ │ ├── comments-processor.js
│ │ │ │ ├── escape-store.js
│ │ │ │ ├── expressions-processor.js
│ │ │ │ ├── free-text-processor.js
│ │ │ │ └── urls-processor.js
│ │ │ ├── tokenizer
│ │ │ │ ├── extract-properties.js
│ │ │ │ ├── extract-selectors.js
│ │ │ │ └── tokenize.js
│ │ │ ├── urls
│ │ │ │ ├── rebase.js
│ │ │ │ ├── reduce.js
│ │ │ │ └── rewrite.js
│ │ │ └── utils
│ │ │ ├── clone-array.js
│ │ │ ├── compatibility.js
│ │ │ ├── input-source-map-tracker.js
│ │ │ ├── object.js
│ │ │ ├── quote-scanner.js
│ │ │ ├── source-reader.js
│ │ │ ├── source-tracker.js
│ │ │ └── split.js
│ │ ├── LICENSE
│ │ ├── node_modules
│ │ │ └── commander
│ │ │ ├── History.md
│ │ │ ├── index.js
│ │ │ ├── LICENSE
│ │ │ ├── package.json
│ │ │ └── Readme.md
│ │ ├── package.json
│ │ └── README.md
│ ├── cliui
│ │ ├── index.js
│ │ ├── LICENSE.txt
│ │ ├── node_modules
│ │ │ └── wordwrap
│ │ │ ├── example
│ │ │ │ ├── center.js
│ │ │ │ └── meat.js
│ │ │ ├── index.js
│ │ │ ├── package.json
│ │ │ ├── README.markdown
│ │ │ └── test
│ │ │ ├── break.js
│ │ │ ├── idleness.txt
│ │ │ └── wrap.js
│ │ ├── package.json
│ │ ├── README.md
│ │ └── test
│ │ └── cliui.js
│ ├── commander
│ │ ├── History.md
│ │ ├── index.js
│ │ ├── package.json
│ │ └── Readme.md
│ ├── constantinople
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ ├── README.md
│ │ └── test
│ │ └── index.js
│ ├── content-disposition
│ │ ├── HISTORY.md
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── content-type
│ │ ├── HISTORY.md
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── cookie
│ │ ├── HISTORY.md
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── cookie-parser
│ │ ├── HISTORY.md
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── cookie-signature
│ │ ├── History.md
│ │ ├── index.js
│ │ ├── package.json
│ │ └── Readme.md
│ ├── css
│ │ ├── benchmark.js
│ │ ├── component.json
│ │ ├── History.md
│ │ ├── index.js
│ │ ├── Makefile
│ │ ├── package.json
│ │ ├── Readme.md
│ │ └── test.js
│ ├── css-parse
│ │ ├── component.json
│ │ ├── History.md
│ │ ├── index.js
│ │ ├── Makefile
│ │ ├── package.json
│ │ └── Readme.md
│ ├── css-stringify
│ │ ├── component.json
│ │ ├── History.md
│ │ ├── index.js
│ │ ├── Makefile
│ │ ├── package.json
│ │ └── Readme.md
│ ├── debug
│ │ ├── bower.json
│ │ ├── browser.js
│ │ ├── component.json
│ │ ├── debug.js
│ │ ├── History.md
│ │ ├── Makefile
│ │ ├── node.js
│ │ ├── package.json
│ │ └── Readme.md
│ ├── decamelize
│ │ ├── index.js
│ │ ├── license
│ │ ├── package.json
│ │ └── readme.md
│ ├── depd
│ │ ├── History.md
│ │ ├── index.js
│ │ ├── lib
│ │ │ ├── browser
│ │ │ │ └── index.js
│ │ │ └── compat
│ │ │ ├── buffer-concat.js
│ │ │ ├── callsite-tostring.js
│ │ │ ├── event-listener-count.js
│ │ │ └── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── Readme.md
│ ├── destroy
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── ee-first
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── escape-html
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── Readme.md
│ ├── etag
│ │ ├── HISTORY.md
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── express
│ │ ├── History.md
│ │ ├── index.js
│ │ ├── lib
│ │ │ ├── application.js
│ │ │ ├── express.js
│ │ │ ├── middleware
│ │ │ │ ├── init.js
│ │ │ │ └── query.js
│ │ │ ├── request.js
│ │ │ ├── response.js
│ │ │ ├── router
│ │ │ │ ├── index.js
│ │ │ │ ├── layer.js
│ │ │ │ └── route.js
│ │ │ ├── utils.js
│ │ │ └── view.js
│ │ ├── LICENSE
│ │ ├── node_modules
│ │ │ ├── cookie
│ │ │ │ ├── HISTORY.md
│ │ │ │ ├── index.js
│ │ │ │ ├── LICENSE
│ │ │ │ ├── package.json
│ │ │ │ └── README.md
│ │ │ └── qs
│ │ │ ├── bower.json
│ │ │ ├── CHANGELOG.md
│ │ │ ├── CONTRIBUTING.md
│ │ │ ├── lib
│ │ │ │ ├── index.js
│ │ │ │ ├── parse.js
│ │ │ │ ├── stringify.js
│ │ │ │ └── utils.js
│ │ │ ├── LICENSE
│ │ │ ├── package.json
│ │ │ ├── README.md
│ │ │ └── test
│ │ │ ├── parse.js
│ │ │ ├── stringify.js
│ │ │ └── utils.js
│ │ ├── package.json
│ │ └── Readme.md
│ ├── finalhandler
│ │ ├── HISTORY.md
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── forwarded
│ │ ├── HISTORY.md
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── fresh
│ │ ├── HISTORY.md
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── graceful-readlink
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── http-errors
│ │ ├── HISTORY.md
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── iconv-lite
│ │ ├── Changelog.md
│ │ ├── encodings
│ │ │ ├── dbcs-codec.js
│ │ │ ├── dbcs-data.js
│ │ │ ├── index.js
│ │ │ ├── internal.js
│ │ │ ├── sbcs-codec.js
│ │ │ ├── sbcs-data-generated.js
│ │ │ ├── sbcs-data.js
│ │ │ ├── tables
│ │ │ │ ├── big5-added.json
│ │ │ │ ├── cp936.json
│ │ │ │ ├── cp949.json
│ │ │ │ ├── cp950.json
│ │ │ │ ├── eucjp.json
│ │ │ │ ├── gb18030-ranges.json
│ │ │ │ ├── gbk-added.json
│ │ │ │ └── shiftjis.json
│ │ │ ├── utf16.js
│ │ │ └── utf7.js
│ │ ├── lib
│ │ │ ├── bom-handling.js
│ │ │ ├── extend-node.js
│ │ │ ├── index.js
│ │ │ └── streams.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── inherits
│ │ ├── inherits_browser.js
│ │ ├── inherits.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ ├── README.md
│ │ └── test.js
│ ├── ipaddr.js
│ │ ├── bower.json
│ │ ├── Cakefile
│ │ ├── ipaddr.min.js
│ │ ├── lib
│ │ │ └── ipaddr.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ ├── README.md
│ │ ├── src
│ │ │ └── ipaddr.coffee
│ │ └── test
│ │ └── ipaddr.test.coffee
│ ├── is-buffer
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ ├── README.md
│ │ └── test
│ │ └── basic.js
│ ├── is-promise
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── readme.md
│ ├── jade
│ │ ├── bin
│ │ │ └── jade.js
│ │ ├── block-code.html
│ │ ├── component.json
│ │ ├── History.md
│ │ ├── jade.js
│ │ ├── lib
│ │ │ ├── compiler.js
│ │ │ ├── doctypes.js
│ │ │ ├── filters-client.js
│ │ │ ├── filters.js
│ │ │ ├── index.js
│ │ │ ├── inline-tags.js
│ │ │ ├── lexer.js
│ │ │ ├── nodes
│ │ │ │ ├── attrs.js
│ │ │ │ ├── block-comment.js
│ │ │ │ ├── block.js
│ │ │ │ ├── case.js
│ │ │ │ ├── code.js
│ │ │ │ ├── comment.js
│ │ │ │ ├── doctype.js
│ │ │ │ ├── each.js
│ │ │ │ ├── filter.js
│ │ │ │ ├── index.js
│ │ │ │ ├── literal.js
│ │ │ │ ├── mixin-block.js
│ │ │ │ ├── mixin.js
│ │ │ │ ├── node.js
│ │ │ │ ├── tag.js
│ │ │ │ └── text.js
│ │ │ ├── parser.js
│ │ │ ├── runtime.js
│ │ │ └── utils.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ ├── README.md
│ │ ├── Readme_zh-cn.md
│ │ ├── release.js
│ │ └── runtime.js
│ ├── jstransformer
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── kind-of
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── lazy-cache
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── longest
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── media-typer
│ │ ├── HISTORY.md
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── merge-descriptors
│ │ ├── HISTORY.md
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── methods
│ │ ├── HISTORY.md
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── mime
│ │ ├── build
│ │ │ ├── build.js
│ │ │ └── test.js
│ │ ├── cli.js
│ │ ├── LICENSE
│ │ ├── mime.js
│ │ ├── package.json
│ │ ├── README.md
│ │ └── types.json
│ ├── mime-db
│ │ ├── db.json
│ │ ├── HISTORY.md
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── mime-types
│ │ ├── HISTORY.md
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── minimist
│ │ ├── example
│ │ │ └── parse.js
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ ├── readme.markdown
│ │ └── test
│ │ ├── dash.js
│ │ ├── default_bool.js
│ │ ├── dotted.js
│ │ ├── long.js
│ │ ├── parse.js
│ │ ├── parse_modified.js
│ │ ├── short.js
│ │ └── whitespace.js
│ ├── mkdirp
│ │ ├── bin
│ │ │ ├── cmd.js
│ │ │ └── usage.txt
│ │ ├── examples
│ │ │ └── pow.js
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ ├── readme.markdown
│ │ └── test
│ │ ├── chmod.js
│ │ ├── clobber.js
│ │ ├── mkdirp.js
│ │ ├── opts_fs.js
│ │ ├── opts_fs_sync.js
│ │ ├── perm.js
│ │ ├── perm_sync.js
│ │ ├── race.js
│ │ ├── rel.js
│ │ ├── return.js
│ │ ├── return_sync.js
│ │ ├── root.js
│ │ ├── sync.js
│ │ ├── umask.js
│ │ └── umask_sync.js
│ ├── morgan
│ │ ├── HISTORY.md
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── ms
│ │ ├── History.md
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── negotiator
│ │ ├── HISTORY.md
│ │ ├── index.js
│ │ ├── lib
│ │ │ ├── charset.js
│ │ │ ├── encoding.js
│ │ │ ├── language.js
│ │ │ └── mediaType.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── on-finished
│ │ ├── HISTORY.md
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── on-headers
│ │ ├── HISTORY.md
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── optimist
│ │ ├── example
│ │ │ ├── boolean_double.js
│ │ │ ├── boolean_single.js
│ │ │ ├── bool.js
│ │ │ ├── default_hash.js
│ │ │ ├── default_singles.js
│ │ │ ├── divide.js
│ │ │ ├── line_count.js
│ │ │ ├── line_count_options.js
│ │ │ ├── line_count_wrap.js
│ │ │ ├── nonopt.js
│ │ │ ├── reflect.js
│ │ │ ├── short.js
│ │ │ ├── string.js
│ │ │ ├── usage-options.js
│ │ │ └── xup.js
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ ├── readme.markdown
│ │ └── test
│ │ ├── _
│ │ │ ├── argv.js
│ │ │ └── bin.js
│ │ ├── _.js
│ │ ├── parse.js
│ │ └── usage.js
│ ├── parseurl
│ │ ├── HISTORY.md
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── path-to-regexp
│ │ ├── History.md
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── Readme.md
│ ├── promise
│ │ ├── core.js
│ │ ├── index.js
│ │ ├── lib
│ │ │ ├── core.js
│ │ │ ├── done.js
│ │ │ ├── es6-extensions.js
│ │ │ └── node-extensions.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ ├── polyfill-done.js
│ │ ├── polyfill.js
│ │ └── Readme.md
│ ├── proxy-addr
│ │ ├── HISTORY.md
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── qs
│ │ ├── CHANGELOG.md
│ │ ├── CONTRIBUTING.md
│ │ ├── dist
│ │ │ └── qs.js
│ │ ├── lib
│ │ │ ├── index.js
│ │ │ ├── parse.js
│ │ │ ├── stringify.js
│ │ │ └── utils.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── test
│ │ ├── index.js
│ │ ├── parse.js
│ │ ├── stringify.js
│ │ └── utils.js
│ ├── range-parser
│ │ ├── HISTORY.md
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── raw-body
│ │ ├── HISTORY.md
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── repeat-string
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── right-align
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── send
│ │ ├── HISTORY.md
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── node_modules
│ │ │ ├── http-errors
│ │ │ │ ├── HISTORY.md
│ │ │ │ ├── index.js
│ │ │ │ ├── LICENSE
│ │ │ │ ├── package.json
│ │ │ │ └── README.md
│ │ │ └── statuses
│ │ │ ├── codes.json
│ │ │ ├── index.js
│ │ │ ├── LICENSE
│ │ │ ├── package.json
│ │ │ └── README.md
│ │ ├── package.json
│ │ └── README.md
│ ├── serve-favicon
│ │ ├── HISTORY.md
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── serve-static
│ │ ├── HISTORY.md
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── node_modules
│ │ │ ├── http-errors
│ │ │ │ ├── HISTORY.md
│ │ │ │ ├── index.js
│ │ │ │ ├── LICENSE
│ │ │ │ ├── package.json
│ │ │ │ └── README.md
│ │ │ ├── send
│ │ │ │ ├── HISTORY.md
│ │ │ │ ├── index.js
│ │ │ │ ├── LICENSE
│ │ │ │ ├── package.json
│ │ │ │ └── README.md
│ │ │ └── statuses
│ │ │ ├── codes.json
│ │ │ ├── index.js
│ │ │ ├── LICENSE
│ │ │ ├── package.json
│ │ │ └── README.md
│ │ ├── package.json
│ │ └── README.md
│ ├── setprototypeof
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── source-map
│ │ ├── build
│ │ │ ├── assert-shim.js
│ │ │ ├── mini-require.js
│ │ │ ├── prefix-source-map.jsm
│ │ │ ├── prefix-utils.jsm
│ │ │ ├── suffix-browser.js
│ │ │ ├── suffix-source-map.jsm
│ │ │ ├── suffix-utils.jsm
│ │ │ ├── test-prefix.js
│ │ │ └── test-suffix.js
│ │ ├── lib
│ │ │ ├── source-map
│ │ │ │ ├── array-set.js
│ │ │ │ ├── base64.js
│ │ │ │ ├── base64-vlq.js
│ │ │ │ ├── binary-search.js
│ │ │ │ ├── mapping-list.js
│ │ │ │ ├── quick-sort.js
│ │ │ │ ├── source-map-consumer.js
│ │ │ │ ├── source-map-generator.js
│ │ │ │ ├── source-node.js
│ │ │ │ └── util.js
│ │ │ └── source-map.js
│ │ ├── package.json
│ │ └── README.md
│ ├── statuses
│ │ ├── codes.json
│ │ ├── HISTORY.md
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── transformers
│ │ ├── history.md
│ │ ├── lib
│ │ │ ├── shared.js
│ │ │ └── transformers.js
│ │ ├── node_modules
│ │ │ ├── is-promise
│ │ │ │ ├── index.js
│ │ │ │ ├── LICENSE
│ │ │ │ ├── package.json
│ │ │ │ └── readme.md
│ │ │ ├── promise
│ │ │ │ ├── index.js
│ │ │ │ ├── package.json
│ │ │ │ └── Readme.md
│ │ │ ├── source-map
│ │ │ │ ├── build
│ │ │ │ │ ├── assert-shim.js
│ │ │ │ │ ├── mini-require.js
│ │ │ │ │ ├── prefix-source-map.jsm
│ │ │ │ │ ├── prefix-utils.jsm
│ │ │ │ │ ├── suffix-browser.js
│ │ │ │ │ ├── suffix-source-map.jsm
│ │ │ │ │ ├── suffix-utils.jsm
│ │ │ │ │ ├── test-prefix.js
│ │ │ │ │ └── test-suffix.js
│ │ │ │ ├── CHANGELOG.md
│ │ │ │ ├── lib
│ │ │ │ │ ├── source-map
│ │ │ │ │ │ ├── array-set.js
│ │ │ │ │ │ ├── base64.js
│ │ │ │ │ │ ├── base64-vlq.js
│ │ │ │ │ │ ├── binary-search.js
│ │ │ │ │ │ ├── mapping-list.js
│ │ │ │ │ │ ├── source-map-consumer.js
│ │ │ │ │ │ ├── source-map-generator.js
│ │ │ │ │ │ ├── source-node.js
│ │ │ │ │ │ └── util.js
│ │ │ │ │ └── source-map.js
│ │ │ │ ├── LICENSE
│ │ │ │ ├── Makefile.dryice.js
│ │ │ │ ├── package.json
│ │ │ │ ├── README.md
│ │ │ │ └── test
│ │ │ │ ├── run-tests.js
│ │ │ │ └── source-map
│ │ │ │ ├── test-api.js
│ │ │ │ ├── test-array-set.js
│ │ │ │ ├── test-base64.js
│ │ │ │ ├── test-base64-vlq.js
│ │ │ │ ├── test-binary-search.js
│ │ │ │ ├── test-dog-fooding.js
│ │ │ │ ├── test-source-map-consumer.js
│ │ │ │ ├── test-source-map-generator.js
│ │ │ │ ├── test-source-node.js
│ │ │ │ ├── test-util.js
│ │ │ │ └── util.js
│ │ │ └── uglify-js
│ │ │ ├── bin
│ │ │ │ └── uglifyjs
│ │ │ ├── lib
│ │ │ │ ├── ast.js
│ │ │ │ ├── compress.js
│ │ │ │ ├── mozilla-ast.js
│ │ │ │ ├── output.js
│ │ │ │ ├── parse.js
│ │ │ │ ├── scope.js
│ │ │ │ ├── sourcemap.js
│ │ │ │ ├── transform.js
│ │ │ │ └── utils.js
│ │ │ ├── package.json
│ │ │ ├── README.md
│ │ │ ├── test
│ │ │ │ ├── compress
│ │ │ │ │ ├── arrays.js
│ │ │ │ │ ├── blocks.js
│ │ │ │ │ ├── conditionals.js
│ │ │ │ │ ├── dead-code.js
│ │ │ │ │ ├── debugger.js
│ │ │ │ │ ├── drop-unused.js
│ │ │ │ │ ├── issue-105.js
│ │ │ │ │ ├── issue-12.js
│ │ │ │ │ ├── issue-22.js
│ │ │ │ │ ├── issue-44.js
│ │ │ │ │ ├── issue-59.js
│ │ │ │ │ ├── labels.js
│ │ │ │ │ ├── loops.js
│ │ │ │ │ ├── properties.js
│ │ │ │ │ ├── sequences.js
│ │ │ │ │ └── switch.js
│ │ │ │ └── run-tests.js
│ │ │ └── tools
│ │ │ └── node.js
│ │ ├── package.json
│ │ └── README.md
│ ├── type-is
│ │ ├── HISTORY.md
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── uglify-js
│ │ ├── bin
│ │ │ ├── extract-props.js
│ │ │ └── uglifyjs
│ │ ├── lib
│ │ │ ├── ast.js
│ │ │ ├── compress.js
│ │ │ ├── mozilla-ast.js
│ │ │ ├── output.js
│ │ │ ├── parse.js
│ │ │ ├── propmangle.js
│ │ │ ├── scope.js
│ │ │ ├── sourcemap.js
│ │ │ ├── transform.js
│ │ │ └── utils.js
│ │ ├── LICENSE
│ │ ├── node_modules
│ │ │ └── source-map
│ │ │ ├── CHANGELOG.md
│ │ │ ├── dist
│ │ │ │ ├── source-map.debug.js
│ │ │ │ ├── source-map.js
│ │ │ │ ├── source-map.min.js
│ │ │ │ └── source-map.min.js.map
│ │ │ ├── lib
│ │ │ │ ├── array-set.js
│ │ │ │ ├── base64.js
│ │ │ │ ├── base64-vlq.js
│ │ │ │ ├── binary-search.js
│ │ │ │ ├── mapping-list.js
│ │ │ │ ├── quick-sort.js
│ │ │ │ ├── source-map-consumer.js
│ │ │ │ ├── source-map-generator.js
│ │ │ │ ├── source-node.js
│ │ │ │ └── util.js
│ │ │ ├── LICENSE
│ │ │ ├── package.json
│ │ │ ├── README.md
│ │ │ └── source-map.js
│ │ ├── package.json
│ │ ├── README.md
│ │ └── tools
│ │ ├── domprops.json
│ │ ├── exports.js
│ │ ├── node.js
│ │ └── props.html
│ ├── uglify-to-browserify
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ ├── README.md
│ │ └── test
│ │ └── index.js
│ ├── unpipe
│ │ ├── HISTORY.md
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── utils-merge
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── vary
│ │ ├── HISTORY.md
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ └── README.md
│ ├── void-elements
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ ├── pre-publish.js
│ │ ├── README.md
│ │ └── test
│ │ └── index.js
│ ├── window-size
│ │ ├── index.js
│ │ ├── LICENSE-MIT
│ │ ├── package.json
│ │ └── README.md
│ ├── with
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── node_modules
│ │ │ └── acorn
│ │ │ ├── AUTHORS
│ │ │ ├── bin
│ │ │ │ ├── acorn
│ │ │ │ ├── build-acorn.js
│ │ │ │ ├── generate-identifier-regex.js
│ │ │ │ ├── prepublish.sh
│ │ │ │ ├── update_authors.sh
│ │ │ │ └── without_eval
│ │ │ ├── dist
│ │ │ │ ├── acorn_csp.js
│ │ │ │ ├── acorn.js
│ │ │ │ ├── acorn_loose.js
│ │ │ │ └── walk.js
│ │ │ ├── LICENSE
│ │ │ ├── package.json
│ │ │ ├── README.md
│ │ │ └── src
│ │ │ ├── expression.js
│ │ │ ├── identifier.js
│ │ │ ├── index.js
│ │ │ ├── location.js
│ │ │ ├── loose
│ │ │ │ ├── acorn_loose.js
│ │ │ │ ├── expression.js
│ │ │ │ ├── index.js
│ │ │ │ ├── parseutil.js
│ │ │ │ ├── state.js
│ │ │ │ ├── statement.js
│ │ │ │ └── tokenize.js
│ │ │ ├── lval.js
│ │ │ ├── node.js
│ │ │ ├── options.js
│ │ │ ├── parseutil.js
│ │ │ ├── state.js
│ │ │ ├── statement.js
│ │ │ ├── tokencontext.js
│ │ │ ├── tokenize.js
│ │ │ ├── tokentype.js
│ │ │ ├── util.js
│ │ │ ├── walk
│ │ │ │ └── index.js
│ │ │ └── whitespace.js
│ │ ├── package.json
│ │ └── README.md
│ ├── wordwrap
│ │ ├── example
│ │ │ ├── center.js
│ │ │ └── meat.js
│ │ ├── index.js
│ │ ├── LICENSE
│ │ ├── package.json
│ │ ├── README.markdown
│ │ └── test
│ │ ├── break.js
│ │ ├── idleness.txt
│ │ └── wrap.js
│ └── yargs
│ ├── CHANGELOG.md
│ ├── completion.sh.hbs
│ ├── index.js
│ ├── lib
│ │ ├── completion.js
│ │ ├── parser.js
│ │ ├── usage.js
│ │ └── validation.js
│ ├── LICENSE
│ ├── package.json
│ └── README.md
├── package.json
├── public
│ └── stylesheets
│ └── style.css
├── routes
│ ├── express_demo.js
│ ├── index.js
│ ├── users.js
│ └── version.json
└── views
├── error.jade
├── index.jade
└── layout.jade
235 directories, 942 files
标签:
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论