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 54 redirects: 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 # new one works 81 - src: /sdk/compatibility-library.html 82 dst: /tools/extras/support-library.html 83 type: permanent 84 comment: Redirect sdk reference to new location 85 86 # new one works 87 - src: /sdk/eclipse-adt.html 88 dst: /tools/sdk/eclipse-adt.html 89 type: permanent 90 comment: Redirect sdk reference to new location 91 92 # new one works 93 - src: /sdk/tools-notes.html 94 dst: /tools/sdk/tools-notes.html 95 type: permanent 96 comment: Redirect sdk reference to new location 97 98 # new one works 99 - src: /sdk/adding-components.html 100 dst: /sdk/exploring.html 101 type: permanent 102 comment: Redirect sdk reference to new location 103 104 - src: /sdk/ndk/overview.html 105 dst: /tools/sdk/ndk/index.html 106 type: permanent 107 108 - src: /sdk/ndk/ 109 dst: /tools/sdk/ndk/ 110 type: permanent 111 comment: Redirect sdk reference to new location 112 113 - src: /tools/sdk/win-usb.html 114 dst: /sdk/win-usb.html 115 type: permanent 116 117 - src: /tools/sdk/index.html 118 dst: /sdk/index.html 119 type: permanent 120 121 - src: /tools/sdk/installing.html 122 dst: /sdk/installing/bundle.html 123 type: permanent 124 125 #new one works 126 - src: /sdk/requirements.html 127 dst: /sdk/index.html 128 type: permanent 129 comment: Redirect sdk reference to new location 130 131 - src: /sdk/installing/next.html 132 dst: /training/basics/firstapp/index.html 133 type: permanent 134 comment: Next steps doc was lame and everybody should go to first class 135 136 137 #- src: /sdk/(?!index.html|installing/|exploring) 138 # dst: /tools/sdk/ 139 # type: permanent 140 # comment: Redirect sdk reference to new location 141 142 #- src: /sdk/compatibility 143 # dst: /tools/sdk/support-package.html 144 # type: permanent 145 # comment: Redirect to new location 146 147 # new one 148 - src: /guide/market/ 149 dst: /google/play/ 150 type: permanent 151 comment: redirect billing to new loc 152 153 - src: /guide/google/gcm/client-javadoc/.* 154 dst: /reference/com/google/android/gcm/package-summary.html 155 type: permanent 156 comment: redirect to new loc 157 158 - src: /guide/google/gcm/server-javadoc/.* 159 dst: /reference/com/google/android/gcm/server/package-summary.html 160 type: permanent 161 comment: redirect to new loc 162 163 - src: /guide/google/play/services.html 164 dst: /google/play-services/index.html 165 type: permanent 166 comment: redirect to new loc 167 168 - src: /guide/google/ 169 dst: /google/ 170 type: permanent 171 comment: redirect to new loc 172 173 - src: /guide/publishing/licensing.html 174 dst: /google/play/licensing/index.html 175 type: permanent 176 comment: Redirect Licensing docs to new location 177 178 # new one 179 - src: /google/play/billing/billing_about.html 180 dst: /google/play/billing/index.html 181 type: permanent 182 comment: Redirect Licensing docs to new location 183 184 - src: /guide/developing/tools/ 185 dst: /tools/help/ 186 type: permanent 187 comment: Redirect to new location 188 189 - src: /guide/developing/ 190 dst: /tools/ 191 type: permanent 192 comment: Redirect to new location 193 194 - src: /tools/aidl.html 195 dst: /guide/components/aidl.html 196 type: permanent 197 198 - src: /guide/market/publishing/multiple-apks.html 199 dst: /google/play/publishing/multiple-apks.html 200 type: permanent 201 comment: Redirect to new location 202 203 - src: /guide/publishing/publishing.html 204 dst: /distribute/googleplay/publish/preparing.html 205 type: permanent 206 comment: Redirect to new location 207 208 - src: /guide/publishing/ 209 dst: /tools/publishing/ 210 type: permanent 211 comment: Redirect to new location 212 213 - src: /guide/topics/fundamentals.html 214 dst: /guide/components/fundamentals.html 215 type: permanent 216 217 - src: /guide/topics/intents/intents-filters.html 218 dst: /guide/components/intents-filters.html 219 type: permanent 220 221 - src: /guide/topics/fundamentals/ 222 dst: /guide/components/ 223 type: permanent 224 comment: Redirect to new location 225 226 - src: /guide/topics/clipboard/copy-paste.html 227 dst: /guide/topics/text/copy-paste.html 228 type: permanent 229 comment: Redirect to new location 230 231 - src: /guide/topics/ui/notifiers/index.html 232 dst: /guide/topics/ui/notifiers/notifications.html 233 type: permanent 234 comment: Flatten side nav to make Notifications and Toasts separate 235 236 # new one 237 - src: /guide/topics/wireless/ 238 dst: /guide/topics/connectivity/ 239 type: permanent 240 comment: Redirect to new location 241 242 # new one 243 - src: /guide/topics/drawing/.* 244 dst: /guide/topics/graphics/opengl.html 245 type: permanent 246 comment: Redirect to new location 247 248 - src: /guide/topics/connectivity/usb/adk.html 249 dst: /tools/adk/index.html 250 type: permanent 251 252 - src: /tools/workflow/publishing/versioning.html 253 dst: /tools/publishing/versioning.html 254 type: permanent 255 256 - src: /tools/workflow/publishing/publishing.html 257 dst: /tools/publishing/publishing_overview.html 258 type: permanent 259 260 - src: /tools/workflow/publishing_overview.html 261 dst: /tools/publishing/publishing_overview.html 262 type: permanent 263 264 - src: /tools/workflow/publishing/publishing_overview.html 265 dst: /tools/publishing/publishing_overview.html 266 type: permanent 267 268 - src: /tools/workflow/app-signing.html 269 dst: /tools/publishing/app-signing.html 270 type: permanent 271 272 - src: /tools/adk/aoa.html 273 dst: http://source.android.com/tech/accessories/aoap/aoa.html 274 type: permanent 275 comment: Open Accessory Protocol content has moved to source.android.com. 276 277 - src: /tools/adk/aoa2.html 278 dst: http://source.android.com/tech/accessories/aoap/aoa2.html 279 type: permanent 280 comment: Open Accessory Protocol content has moved to source.android.com. 281 282 - src: /guide/topics/usb 283 dst: /guide/topics/connectivity/usb 284 type: permanent 285 comment: Redirect to new location 286 287 # new one 288 - src: /guide/appendix/api-levels.html 289 dst: /guide/topics/manifest/uses-sdk-element.html#ApiLevels 290 type: permanent 291 comment: Redirect to new location 292 293 - src: /guide/appendix/install-location.html 294 dst: /guide/topics/data/install-location.html 295 type: permanent 296 comment: Redirect to new location 297 298 # new one 299 - src: /guide/basics/.* 300 dst: /about/index.html 301 type: permanent 302 comment: Redirect to new location 303 304 - src: /guide/topics/security/security.html 305 dst: /training/articles/security-tips.html 306 type: permanent 307 comment: Redirect to new location 308 309 - src: /guide/topics/security/index.html 310 dst: /training/articles/security-tips.html 311 type: permanent 312 comment: Redirect to new location 313 314 # new one 315 - src: /guide/appendix/market-filters.html 316 dst: /google/play/filters.html 317 type: permanent 318 comment: Redirect to new location 319 320 - src: /guide/topics/testing/ 321 dst: /tools/testing/ 322 type: permanent 323 324 - src: /guide/topics/graphics/animation.html 325 dst: /guide/topics/graphics/overview.html 326 type: permanent 327 comment: Redirect to new location 328 329 - src: /guide/topics/graphics/renderscript/(compute.html|index.html|reference.html) 330 dst: /guide/topics/renderscript/index.html 331 type: permanent 332 comment: Redirect to new location 333 334 - src: /guide/topics/graphics/renderscript.html 335 dst: /guide/topics/renderscript/index.html 336 type: permanent 337 comment: Redirect to new location 338 339 - src: /guide/topics/location/obtaining-user-location.html 340 dst: /guide/topics/location/strategies.html 341 type: permanent 342 comment: Redirect to new location 343 344 # new one 345 - src: /guide/topics/nfc/ 346 dst: /guide/topics/connectivity/nfc/ 347 type: permanent 348 comment: Redirect to new location 349 350 # new one 351 - src: /guide/topics/wireless/ 352 dst: /guide/topics/connectivity/ 353 type: permanent 354 comment: Redirect to new location 355 356 # new one 357 - src: /guide/topics/network/ 358 dst: /guide/topics/connectivity/ 359 type: permanent 360 comment: Redirect to new location 361 362 # new one 363 - src: /resources/articles/creating-input-method.html 364 dst: /guide/topics/text/creating-input-method.html 365 type: permanent 366 367 # new one 368 - src: /resources/articles/spell-checker-framework.html 369 dst: /guide/topics/text/spell-checker-framework.html 370 type: permanent 371 372 # new one 373 - src: /resources/tutorials/notepad/ 374 dst: /training/notepad/ 375 type: permanent 376 comment: this is only for external links, until we update this documentation 377 378 # new one 379 - src: /resources/faq/ 380 dst: /guide/faq/ 381 type: permanent 382 comment: FAQ still needs a permanent home 383 384 # new one 385 - src: /resources/tutorials/hello-world.html 386 dst: /training/basics/firstapp/index.html 387 type: permanent 388 comment: Redirect to new location 389 390 # add the rest of the tutorials here 391 392 - src: /guide/practices/design/ 393 dst: /guide/practices/ 394 type: permanent 395 comment: Redirect to new location 396 397 - src: /guide/practices/accessibility.html 398 dst: /guide/topics/ui/accessibility/index.html 399 type: permanent 400 401 # move best practices to training 402 403 - src: /guide/practices/app-design/performance.html 404 dst: /training/articles/perf-tips.html 405 type: permanent 406 407 - src: /guide/practices/performance.html 408 dst: /training/articles/perf-tips.html 409 type: permanent 410 411 - src: /guide/practices/app-design/responsiveness.html 412 dst: /training/articles/perf-anr.html 413 type: permanent 414 415 - src: /guide/practices/responsiveness.html 416 dst: /training/articles/perf-anr.html 417 type: permanent 418 419 - src: /guide/practices/security.html 420 dst: /training/articles/security-tips.html 421 type: permanent 422 423 - src: /guide/practices/jni.html 424 dst: /training/articles/perf-jni.html 425 type: permanent 426 427 # move ui docs to design 428 429 - src: /guide/practices/ui_guidelines/index.html 430 dst: /design/index.html 431 type: permanent 432 433 - src: /guide/practices/ui_guidelines/icon_design.* 434 dst: /design/style/iconography.html 435 type: permanent 436 437 - src: /guide/practices/ui_guidelines/activity_task_design.html 438 dst: /design/patterns/app-structure.html 439 type: permanent 440 441 - src: /guide/practices/ui_guidelines/menu_design.html 442 dst: /design/patterns/actionbar.html 443 type: permanent 444 445 446 # new one 447 - src: /resources/dashboard/.* 448 dst: /about/dashboards/index.html 449 type: permanent 450 comment: Redirect to new location 451 452 - src: /resources/community-groups.html 453 dst: /support.html 454 type: permanent 455 comment: Redirect to new location 456 457 - src: /guide/tutorials/ 458 dst: /resources/tutorials/ 459 type: permanent 460 461 - src: /resources/tutorials/views/hello-linearlayout.html 462 dst: /guide/topics/ui/layout/linear.html 463 type: permanent 464 comment: Redirect to new location 465 466 - src: /resources/tutorials/views/hello-relativelayout.html 467 dst: /guide/topics/ui/layout/relative.html 468 type: permanent 469 comment: Redirect to new location 470 471 - src: /resources/tutorials/views/hello-listview.html 472 dst: /guide/topics/ui/layout/listview.html 473 type: permanent 474 comment: Redirect to new location 475 476 - src: /resources/tutorials/views/hello-gridview.html 477 dst: /guide/topics/ui/layout/gridview.html 478 type: permanent 479 comment: Redirect to new location 480 481 - src: /resources/tutorials/views/hello-webview.html 482 dst: /guide/webapps/webview.html 483 type: permanent 484 comment: Redirect to new location 485 486 - src: /resources/tutorials/views/hello-formstuff.html 487 dst: /guide/topics/ui/controls.html 488 type: permanent 489 comment: Redirect to new location 490 491 - src: /resources/tutorials/views/hello-datepicker.html 492 dst: /guide/topics/ui/controls/pickers.html 493 type: permanent 494 comment: Redirect to new location 495 496 - src: /resources/tutorials/views/hello-timepicker.html 497 dst: /guide/topics/ui/controls/pickers.html 498 type: permanent 499 comment: Redirect to new location 500 501 - src: /resources/tutorials/views/hello-autocomplete.html 502 dst: /guide/topics/ui/controls/text.html 503 type: permanent 504 comment: Redirect to new location 505 506 - src: /resources/tutorials/views/hello-spinner.html 507 dst: /guide/topics/ui/controls/spinner.html 508 type: permanent 509 comment: Redirect to new location 510 511 - src: /resources/tutorials/opengl/opengl-es10.html 512 dst: /training/graphics/opengl/index.html 513 type: permanent 514 515 - src: /resources/tutorials/opengl/opengl-es20.html 516 dst: /training/graphics/opengl/index.html 517 type: permanent 518 519 - src: /resources/tutorials/views/hello-mapview.html 520 dst: https://developers.google.com/maps/documentation/android/hello-mapview 521 type: permanent 522 523 - src: /resources/tutorials/views/.* 524 dst: /guide/topics/ui/declaring-layout.html#CommonLayouts 525 type: permanent 526 527 - src: /guide/topics/ui/layout-objects.html 528 dst: /guide/topics/ui/declaring-layout.html#CommonLayouts 529 type: permanent 530 531 - src: /resources/tutorials/localization/.* 532 dst: /training/basics/supporting-devices/languages.html 533 type: permanent 534 535 - src: /resources/samples/.* 536 dst: /tools/samples/index.html 537 type: permanent 538 comment: Redirect to new location 539 540 - src: /resources/(?!articles) 541 dst: /training/ 542 type: permanent 543 comment: Redirect to new location 544 545 - src: /guide/publishing/publishing.html#BuildaButton 546 dst: /distribute/googleplay/promote/badges.html 547 type: permanent 548 comment: Redirect to new location 549 550 - src: /guide/index.html 551 dst: /guide/components/index.html 552 type: permanent 553 comment: Redirect to new location 554 555 556 557 # ------------------- TRAINING ------------------- 558 559 - src: /training/cloudsync/aesync.html 560 dst: /google/gcm/index.html 561 type: permanent 562 comment: Syncing with App Engine was removed because it's obsolete. 563 564 - src: /training/basics/location/ 565 dst: /training/location/ 566 type: permanent 567 568 # -------------------- MISC ---------------------- 569 570 - src: /shareables/ 571 dst: http://commondatastorage.googleapis.com/androiddevelopers/shareables/ 572 type: permanent 573 comment: Redirect to new location 574 575 - src: /downloads/ 576 dst: http://commondatastorage.googleapis.com/androiddevelopers/ 577 type: permanent 578 comment: Redirect to new location 579 580 - src: /search.html 581 dst: /index.html 582 type: permanent 583 comment: Redirect to new location 584 585 - src: /videos/index.html 586 dst: /develop/index.html 587 type: permanent 588 comment: Redirect to new location 589 590 - src: /live/index.html 591 dst: https://developers.google.com/live/ 592 type: permanent 593 comment: Redirect to new location 594 595 - src: /intl/zh-CN/... 596 dst: /intl/zh-cn/... 597 type: permanent 598 599 - src: /intl/zh-TW/... 600 dst: /intl/zh-tw/... 601 type: permanent 602 603 # -------------------- EASTER EGG REDIRECTS ---------------------- 604 605 606 607 608 609 # ---------- PLATFORM VERSIONS ---------------- 610 611 - src: /4.2 612 dst: /about/versions/android-4.2.html 613 type: permanent 614 615 - src: /4.1 616 dst: /about/versions/android-4.1.html 617 type: permanent 618 619 - src: /4.0 620 dst: /about/versions/android-4.0.html 621 type: permanent 622 623 - src: /(j|jb|jellybean)/?$ 624 dst: /about/versions/jelly-bean.html 625 type: permanent 626 627 - src: /(i|ics|icecreamsandwich)/?$ 628 dst: /about/versions/android-4.0-highlights.html 629 type: permanent 630 631 - src: /(h|hc|honeycomb)/?$ 632 dst: /about/versions/android-3.0-highlights.html 633 type: permanent 634 635 - src: /(g|gb|gingerbread)/?$ 636 dst: /about/versions/android-2.3-highlights.html 637 type: permanent 638 639 # ---------- MISC ----------------- 640 641 - src: /%2B/?$ 642 dst: https://plus.google.com/108967384991768947849/posts 643 type: permanent 644 comment: Redirect /+ and /+/ to Google+ 645 646 - src: /blog 647 dst: http://android-developers.blogspot.com/ 648 type: permanent 649 650 - src: /stats 651 dst: /about/dashboards/index.html 652 type: permanent 653 654 - src: /youtube 655 dst: http://www.youtube.com/user/androiddevelopers 656 type: permanent 657 658 - src: /playbadge/?$ 659 dst: http://developer.android.com/distribute/googleplay/promote/badges.html 660 type: permanent 661 662 - src: /deviceart/?$ 663 dst: http://developer.android.com/distribute/promote/device-art.html 664 type: permanent 665 666 - src: /edu/signup/?$ 667 dst: https://services.google.com/fb/forms/playedu 668 type: permanent 669 670 - src: /edu/?$ 671 dst: /distribute/googleplay/edu/index.html 672 type: permanent 673 674 - src: /edu/signup 675 dst: https://services.google.com/fb/forms/playedu 676 type: permanent 677