1# Redirect file. 2# This file contains the list of rewrite rules that are applied when serving 3# pages. 4# 5# Each redirect has four parts: 6# 7# - src: The path to redirect. This is a regex rule prefixed with an implied 8# '^'. Unless you're doing something advanced, your path should start with 9# '/' character. 10# 11# - dst: The path to redirect to. If the path begins with a slash, 12# it is considered a relative redirect. Otherwise, it is an absolute 13# redirct (and should probably begin with http: or http://). You may use 14# capturing groups to preserve part of the source path. To referece a 15# capturing group, use \N, where N is the (1-based) index of desired group. 16# 17# - type: Either 'permanent' or 'temporary', depending on whether you want an 18# HTTP 301 or HTTP 302 redirect, respectiviely. See RFC 2616 for the 19# difference between these: 20# 21# http://tools.ietf.org/html/rfc2616 22# 23# If you don't specify a type, 'permanent' will be used by default. Note that 24# this is different from the Apache convention (which uses 'temporary' by 25# default.) 26# 27# - comment: Currently ignored by the computer, but useful for humans. 28# 29# Example: 30# 31# redirects: 32# - src: /foo 33# dst: /bar 34# # Redirect /foo to /bar. This will also redirect foo/ and 35# # foo/test.html. Note that the redirect type is optional. This will be 36# # treated as a permanent redirect. 37# 38# - src: /(.+droid(/.*)?)$ 39# dst: /droids/\1 40# type: permanent 41# # Redirect /android to /droids/android and /bugdroid to 42# # /droids/bugdroid. However, it will not redirect /droid or 43# # /bugdroids. 44 45# 46# - src: /google 47# dst: http://www.google.com 48# type: temporary 49# # This is an example of a redirect to an absolute URI. 50# 51# 52# WATCH OUT -- SRC LINE HAS TO START WITH A HYPHEN !! 53 54redirects: 55# new one works 56- src: /sdk/android- 57 dst: /about/versions/android- 58 type: permanent 59 comment: Redirect sdk reference to new location 60 61- src: /about/versions/index.html 62 dst: /about/index.html 63 type: permanent 64 65- src: /about/versions/api-levels.html 66 dst: /guide/topics/manifest/uses-sdk-element.html#ApiLevels 67 type: permanent 68 69# new one works 70- src: /sdk/oem-usb.html 71 dst: /tools/extras/oem-usb.html 72 type: permanent 73 comment: Redirect sdk reference to new location 74 75- src: /sdk/installing.html 76 dst: /sdk/installing/index.html 77 type: permanent 78 comment: Redirect sdk reference to new location 79 80- src: /sdk/compatibility-library.html 81 dst: /tools/support-library/index.html 82 type: permanent 83 84- src: /tools/extras/support-library.html 85 dst: /tools/support-library/index.html 86 type: permanent 87 88- src: /training/basics/fragments/support-lib.html 89 dst: /tools/support-library/setup.html 90 type: permanent 91 92- src: /training/id-auth/.* 93 dst: /google/play-services/auth.html 94 type: permanent 95 96# new one works 97- src: /sdk/eclipse-adt.html 98 dst: /tools/sdk/eclipse-adt.html 99 type: permanent 100 comment: Redirect sdk reference to new location 101 102# new one works 103- src: /sdk/tools-notes.html 104 dst: /tools/sdk/tools-notes.html 105 type: permanent 106 comment: Redirect sdk reference to new location 107 108# new one works 109- src: /sdk/adding-components.html 110 dst: /sdk/exploring.html 111 type: permanent 112 comment: Redirect sdk reference to new location 113 114- src: /sdk/ndk/overview.html 115 dst: /tools/sdk/ndk/index.html 116 type: permanent 117 118- src: /sdk/ndk/ 119 dst: /tools/sdk/ndk/ 120 type: permanent 121 comment: Redirect sdk reference to new location 122 123- src: /tools/sdk/win-usb.html 124 dst: /sdk/win-usb.html 125 type: permanent 126 127- src: /tools/sdk/index.html 128 dst: /sdk/index.html 129 type: permanent 130 131- src: /tools/sdk/installing.html 132 dst: /sdk/installing/bundle.html 133 type: permanent 134 135#new one works 136- src: /sdk/requirements.html 137 dst: /sdk/index.html 138 type: permanent 139 comment: Redirect sdk reference to new location 140 141- src: /sdk/installing/next.html 142 dst: /training/basics/firstapp/index.html 143 type: permanent 144 comment: Next steps doc was lame and everybody should go to first class 145 146 147#- src: /sdk/(?!index.html|installing/|exploring) 148# dst: /tools/sdk/ 149# type: permanent 150# comment: Redirect sdk reference to new location 151 152#- src: /sdk/compatibility 153# dst: /tools/sdk/support-package.html 154# type: permanent 155# comment: Redirect to new location 156 157# new one 158- src: /guide/market/ 159 dst: /google/play/ 160 type: permanent 161 comment: redirect billing to new loc 162 163- src: /guide/google/gcm/client-javadoc/.* 164 dst: /reference/com/google/android/gcm/package-summary.html 165 type: permanent 166 comment: redirect to new loc 167 168- src: /guide/google/gcm/server-javadoc/.* 169 dst: /reference/com/google/android/gcm/server/package-summary.html 170 type: permanent 171 comment: redirect to new loc 172 173- src: /guide/google/play/services.html 174 dst: /google/play-services/index.html 175 type: permanent 176 comment: redirect to new loc 177 178- src: /guide/google/ 179 dst: /google/ 180 type: permanent 181 comment: redirect to new loc 182 183- src: /guide/publishing/licensing.html 184 dst: /google/play/licensing/index.html 185 type: permanent 186 comment: Redirect Licensing docs to new location 187 188# new one 189- src: /google/play/billing/billing_about.html 190 dst: /google/play/billing/index.html 191 type: permanent 192 comment: Redirect Licensing docs to new location 193 194- src: /guide/developing/tools/ 195 dst: /tools/help/ 196 type: permanent 197 comment: Redirect to new location 198 199- src: /guide/developing/ 200 dst: /tools/ 201 type: permanent 202 comment: Redirect to new location 203 204- src: /tools/aidl.html 205 dst: /guide/components/aidl.html 206 type: permanent 207 208- src: /guide/market/publishing/multiple-apks.html 209 dst: /google/play/publishing/multiple-apks.html 210 type: permanent 211 comment: Redirect to new location 212 213- src: /guide/publishing/publishing.html 214 dst: /distribute/googleplay/publish/preparing.html 215 type: permanent 216 comment: Redirect to new location 217 218- src: /guide/publishing/ 219 dst: /tools/publishing/ 220 type: permanent 221 comment: Redirect to new location 222 223- src: /guide/topics/fundamentals.html 224 dst: /guide/components/fundamentals.html 225 type: permanent 226 227- src: /guide/topics/intents/intents-filters.html 228 dst: /guide/components/intents-filters.html 229 type: permanent 230 231- src: /guide/topics/fundamentals/ 232 dst: /guide/components/ 233 type: permanent 234 comment: Redirect to new location 235 236- src: /guide/topics/clipboard/copy-paste.html 237 dst: /guide/topics/text/copy-paste.html 238 type: permanent 239 comment: Redirect to new location 240 241- src: /guide/topics/ui/notifiers/index.html 242 dst: /guide/topics/ui/notifiers/notifications.html 243 type: permanent 244 comment: Flatten side nav to make Notifications and Toasts separate 245 246# new one 247- src: /guide/topics/wireless/ 248 dst: /guide/topics/connectivity/ 249 type: permanent 250 comment: Redirect to new location 251 252# new one 253- src: /guide/topics/drawing/.* 254 dst: /guide/topics/graphics/opengl.html 255 type: permanent 256 comment: Redirect to new location 257 258- src: /guide/topics/connectivity/usb/adk.html 259 dst: /tools/adk/index.html 260 type: permanent 261 262- src: /tools/workflow/publishing/versioning.html 263 dst: /tools/publishing/versioning.html 264 type: permanent 265 266- src: /tools/workflow/publishing/publishing.html 267 dst: /tools/publishing/publishing_overview.html 268 type: permanent 269 270- src: /tools/workflow/publishing_overview.html 271 dst: /tools/publishing/publishing_overview.html 272 type: permanent 273 274- src: /tools/workflow/publishing/publishing_overview.html 275 dst: /tools/publishing/publishing_overview.html 276 type: permanent 277 278- src: /tools/workflow/app-signing.html 279 dst: /tools/publishing/app-signing.html 280 type: permanent 281 282- src: /tools/adk/aoa.html 283 dst: http://source.android.com/tech/accessories/aoap/aoa.html 284 type: permanent 285 comment: Open Accessory Protocol content has moved to source.android.com. 286 287- src: /tools/adk/aoa2.html 288 dst: http://source.android.com/tech/accessories/aoap/aoa2.html 289 type: permanent 290 comment: Open Accessory Protocol content has moved to source.android.com. 291 292- src: /guide/topics/usb 293 dst: /guide/topics/connectivity/usb 294 type: permanent 295 comment: Redirect to new location 296 297# new one 298- src: /guide/appendix/api-levels.html 299 dst: /guide/topics/manifest/uses-sdk-element.html#ApiLevels 300 type: permanent 301 comment: Redirect to new location 302 303- src: /guide/appendix/install-location.html 304 dst: /guide/topics/data/install-location.html 305 type: permanent 306 comment: Redirect to new location 307 308# new one 309- src: /guide/basics/.* 310 dst: /about/index.html 311 type: permanent 312 comment: Redirect to new location 313 314- src: /guide/topics/security/security.html 315 dst: /training/articles/security-tips.html 316 type: permanent 317 comment: Redirect to new location 318 319- src: /guide/topics/security/index.html 320 dst: /training/articles/security-tips.html 321 type: permanent 322 comment: Redirect to new location 323 324# new one 325- src: /guide/appendix/market-filters.html 326 dst: /google/play/filters.html 327 type: permanent 328 comment: Redirect to new location 329 330- src: /guide/topics/testing/ 331 dst: /tools/testing/ 332 type: permanent 333 334- src: /guide/topics/graphics/animation.html 335 dst: /guide/topics/graphics/overview.html 336 type: permanent 337 comment: Redirect to new location 338 339- src: /guide/topics/graphics/renderscript/(compute.html|index.html|reference.html) 340 dst: /guide/topics/renderscript/index.html 341 type: permanent 342 comment: Redirect to new location 343 344- src: /guide/topics/graphics/renderscript.html 345 dst: /guide/topics/renderscript/index.html 346 type: permanent 347 comment: Redirect to new location 348 349- src: /guide/topics/location/obtaining-user-location.html 350 dst: /guide/topics/location/strategies.html 351 type: permanent 352 comment: Redirect to new location 353 354# new one 355- src: /guide/topics/nfc/ 356 dst: /guide/topics/connectivity/nfc/ 357 type: permanent 358 comment: Redirect to new location 359 360# new one 361- src: /guide/topics/wireless/ 362 dst: /guide/topics/connectivity/ 363 type: permanent 364 comment: Redirect to new location 365 366# new one 367- src: /guide/topics/network/ 368 dst: /guide/topics/connectivity/ 369 type: permanent 370 comment: Redirect to new location 371 372# new one 373- src: /resources/articles/creating-input-method.html 374 dst: /guide/topics/text/creating-input-method.html 375 type: permanent 376 377# new one 378- src: /resources/articles/spell-checker-framework.html 379 dst: /guide/topics/text/spell-checker-framework.html 380 type: permanent 381 382# new one 383- src: /resources/tutorials/notepad/ 384 dst: /training/notepad/ 385 type: permanent 386 comment: this is only for external links, until we update this documentation 387 388# new one 389- src: /resources/faq/ 390 dst: /guide/faq/ 391 type: permanent 392 comment: FAQ still needs a permanent home 393 394# new one 395- src: /resources/tutorials/hello-world.html 396 dst: /training/basics/firstapp/index.html 397 type: permanent 398 comment: Redirect to new location 399 400# add the rest of the tutorials here 401 402- src: /guide/practices/design/ 403 dst: /guide/practices/ 404 type: permanent 405 comment: Redirect to new location 406 407- src: /guide/practices/accessibility.html 408 dst: /guide/topics/ui/accessibility/index.html 409 type: permanent 410 411# move best practices to training 412 413- src: /guide/practices/app-design/performance.html 414 dst: /training/articles/perf-tips.html 415 type: permanent 416 417- src: /guide/practices/performance.html 418 dst: /training/articles/perf-tips.html 419 type: permanent 420 421- src: /guide/practices/app-design/responsiveness.html 422 dst: /training/articles/perf-anr.html 423 type: permanent 424 425- src: /guide/practices/responsiveness.html 426 dst: /training/articles/perf-anr.html 427 type: permanent 428 429- src: /guide/practices/security.html 430 dst: /training/articles/security-tips.html 431 type: permanent 432 433- src: /guide/practices/jni.html 434 dst: /training/articles/perf-jni.html 435 type: permanent 436 437# move ui docs to design 438 439- src: /guide/practices/ui_guidelines/index.html 440 dst: /design/index.html 441 type: permanent 442 443- src: /guide/practices/ui_guidelines/icon_design.* 444 dst: /design/style/iconography.html 445 type: permanent 446 447- src: /guide/practices/ui_guidelines/activity_task_design.html 448 dst: /design/patterns/app-structure.html 449 type: permanent 450 451- src: /guide/practices/ui_guidelines/menu_design.html 452 dst: /design/patterns/actionbar.html 453 type: permanent 454 455 456# new one 457- src: /resources/dashboard/.* 458 dst: /about/dashboards/index.html 459 type: permanent 460 comment: Redirect to new location 461 462- src: /resources/community-groups.html 463 dst: /support.html 464 type: permanent 465 comment: Redirect to new location 466 467- src: /guide/tutorials/ 468 dst: /resources/tutorials/ 469 type: permanent 470 471- src: /resources/tutorials/views/hello-linearlayout.html 472 dst: /guide/topics/ui/layout/linear.html 473 type: permanent 474 comment: Redirect to new location 475 476- src: /resources/tutorials/views/hello-relativelayout.html 477 dst: /guide/topics/ui/layout/relative.html 478 type: permanent 479 comment: Redirect to new location 480 481- src: /resources/tutorials/views/hello-listview.html 482 dst: /guide/topics/ui/layout/listview.html 483 type: permanent 484 comment: Redirect to new location 485 486- src: /resources/tutorials/views/hello-gridview.html 487 dst: /guide/topics/ui/layout/gridview.html 488 type: permanent 489 comment: Redirect to new location 490 491- src: /resources/tutorials/views/hello-webview.html 492 dst: /guide/webapps/webview.html 493 type: permanent 494 comment: Redirect to new location 495 496- src: /resources/tutorials/views/hello-formstuff.html 497 dst: /guide/topics/ui/controls.html 498 type: permanent 499 comment: Redirect to new location 500 501- src: /resources/tutorials/views/hello-datepicker.html 502 dst: /guide/topics/ui/controls/pickers.html 503 type: permanent 504 comment: Redirect to new location 505 506- src: /resources/tutorials/views/hello-timepicker.html 507 dst: /guide/topics/ui/controls/pickers.html 508 type: permanent 509 comment: Redirect to new location 510 511- src: /resources/tutorials/views/hello-autocomplete.html 512 dst: /guide/topics/ui/controls/text.html 513 type: permanent 514 comment: Redirect to new location 515 516- src: /resources/tutorials/views/hello-spinner.html 517 dst: /guide/topics/ui/controls/spinner.html 518 type: permanent 519 comment: Redirect to new location 520 521- src: /resources/tutorials/opengl/opengl-es10.html 522 dst: /training/graphics/opengl/index.html 523 type: permanent 524 525- src: /resources/tutorials/opengl/opengl-es20.html 526 dst: /training/graphics/opengl/index.html 527 type: permanent 528 529- src: /resources/tutorials/views/hello-mapview.html 530 dst: https://developers.google.com/maps/documentation/android/hello-mapview 531 type: permanent 532 533- src: /resources/tutorials/views/.* 534 dst: /guide/topics/ui/declaring-layout.html#CommonLayouts 535 type: permanent 536 537- src: /guide/topics/ui/layout-objects.html 538 dst: /guide/topics/ui/declaring-layout.html#CommonLayouts 539 type: permanent 540 541- src: /resources/tutorials/localization/.* 542 dst: /training/basics/supporting-devices/languages.html 543 type: permanent 544 545- src: /resources/samples/.* 546 dst: /tools/samples/index.html 547 type: permanent 548 comment: Redirect to new location 549 550- src: /resources/(?!articles) 551 dst: /training/ 552 type: permanent 553 comment: Redirect to new location 554 555- src: /guide/publishing/publishing.html#BuildaButton 556 dst: /distribute/googleplay/promote/badges.html 557 type: permanent 558 comment: Redirect to new location 559 560- src: /guide/index.html 561 dst: /guide/components/index.html 562 type: permanent 563 comment: Redirect to new location 564 565 566 567# ------------------- TRAINING ------------------- 568 569- src: /guide/topics/ui/layout/tabs.html 570 dst: /training/implementing-navigation/lateral.html 571 type: permanent 572 573- src: /training/cloudsync/aesync.html 574 dst: /google/gcm/index.html 575 type: permanent 576 comment: Syncing with App Engine was removed because it's obsolete. 577 578- src: /training/basics/location/ 579 dst: /training/location/ 580 type: permanent 581 582# -------------------- MISC ---------------------- 583 584- src: /shareables/ 585 dst: http://commondatastorage.googleapis.com/androiddevelopers/shareables/ 586 type: permanent 587 comment: Redirect to new location 588 589- src: /downloads/ 590 dst: http://commondatastorage.googleapis.com/androiddevelopers/ 591 type: permanent 592 comment: Redirect to new location 593 594- src: /search.html 595 dst: /index.html 596 type: permanent 597 comment: Redirect to new location 598 599- src: /videos/index.html 600 dst: /develop/index.html 601 type: permanent 602 comment: Redirect to new location 603 604- src: /live/index.html 605 dst: https://developers.google.com/live/ 606 type: permanent 607 comment: Redirect to new location 608 609- src: /intl/zh-CN/... 610 dst: /intl/zh-cn/... 611 type: permanent 612 613- src: /intl/zh-TW/... 614 dst: /intl/zh-tw/... 615 type: permanent 616 617# -------------------- EASTER EGG REDIRECTS ---------------------- 618 619 620 621 622 623# ---------- PLATFORM VERSIONS ---------------- 624 625- src: /4.2 626 dst: /about/versions/android-4.2.html 627 type: permanent 628 629- src: /4.1 630 dst: /about/versions/android-4.1.html 631 type: permanent 632 633- src: /4.0 634 dst: /about/versions/android-4.0.html 635 type: permanent 636 637- src: /(k|kk|kitkat)/?$ 638 dst: /about/versions/kitkat.html 639 type: permanent 640 641- src: /(j|jb|jellybean)/?$ 642 dst: /about/versions/jelly-bean.html 643 type: permanent 644 645- src: /(i|ics|icecreamsandwich)/?$ 646 dst: /about/versions/android-4.0-highlights.html 647 type: permanent 648 649- src: /(h|hc|honeycomb)/?$ 650 dst: /about/versions/android-3.0-highlights.html 651 type: permanent 652 653- src: /(g|gb|gingerbread)/?$ 654 dst: /about/versions/android-2.3-highlights.html 655 type: permanent 656 657# ---------- MISC ----------------- 658 659- src: /%2B/?$ 660 dst: https://plus.google.com/108967384991768947849/posts 661 type: permanent 662 comment: Redirect /+ and /+/ to Google+ 663 664- src: /blog 665 dst: http://android-developers.blogspot.com/ 666 type: permanent 667 668- src: /stats 669 dst: /about/dashboards/index.html 670 type: permanent 671 672- src: /youtube 673 dst: http://www.youtube.com/user/androiddevelopers 674 type: permanent 675 676- src: /playbadge/?$ 677 dst: http://developer.android.com/distribute/googleplay/promote/badges.html 678 type: permanent 679 680- src: /deviceart/?$ 681 dst: http://developer.android.com/distribute/promote/device-art.html 682 type: permanent 683 684- src: /edu/signup/?$ 685 dst: https://services.google.com/fb/forms/playedu 686 type: permanent 687 688- src: /edu/?$ 689 dst: /distribute/googleplay/edu/index.html 690 type: permanent 691 692- src: /edu/signup 693 dst: https://services.google.com/fb/forms/playedu 694 type: permanent 695