1 <!DOCTYPE html> 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 <html> 77 <head> 78 79 80 81 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 82 83 <link rel="shortcut icon" type="image/x-icon" href="/favicon.ico" /> 84 <title>GCMRegistrar | Android Developers</title> 85 86 <!-- STYLESHEETS --> 87 <link rel="stylesheet" 88 href="//fonts.googleapis.com/css?family=Roboto:regular,medium,thin,italic,mediumitalic,bold" title="roboto"> 89 <link href="/assets/css/default.css" rel="stylesheet" type="text/css"> 90 91 92 93 <!-- JAVASCRIPT --> 94 <script src="//www.google.com/jsapi" type="text/javascript"></script> 95 <script src="/assets/js/android_3p-bundle.js" type="text/javascript"></script> 96 <script type="text/javascript"> 97 var toRoot = "/"; 98 var devsite = false; 99 </script> 100 <script src="/assets/js/docs.js" type="text/javascript"></script> 101 102 <script type="text/javascript"> 103 var _gaq = _gaq || []; 104 _gaq.push(['_setAccount', 'UA-5831155-1']); 105 _gaq.push(['_trackPageview']); 106 107 (function() { 108 var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; 109 ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; 110 var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); 111 })(); 112 </script> 113 </head> 114 <body class="gc-documentation google 115 develop" itemscope itemtype="http://schema.org/Article"> 116 <div id="doc-api-level" class="" style="display:none"></div> 117 <a name="top"></a> 118 119 <a name="top"></a> 120 121 <!-- Header --> 122 <div id="header"> 123 <div class="wrap" id="header-wrap"> 124 <div class="col-3 logo"> 125 <a href="/index.html"> 126 <img src="/assets/images/dac_logo.png" width="123" height="25" alt="Android Developers" /> 127 </a> 128 <div class="btn-quicknav" id="btn-quicknav"> 129 <a href="#" class="arrow-inactive">Quicknav</a> 130 <a href="#" class="arrow-active">Quicknav</a> 131 </div> 132 </div> 133 <ul class="nav-x col-9"> 134 <li class="design"> 135 <a href="/design/index.html" 136 zh-tw-lang="" 137 zh-cn-lang="" 138 ru-lang="" 139 ko-lang="" 140 ja-lang="" 141 es-lang="Disear" 142 >Design</a></li> 143 <li class="develop"><a href="/develop/index.html" 144 zh-tw-lang="" 145 zh-cn-lang="" 146 ru-lang="" 147 ko-lang="" 148 ja-lang="" 149 es-lang="Desarrollar" 150 >Develop</a></li> 151 <li class="distribute last"><a href="/distribute/index.html" 152 zh-tw-lang="" 153 zh-cn-lang="" 154 ru-lang="" 155 ko-lang="" 156 ja-lang="" 157 es-lang="Distribuir" 158 >Distribute</a></li> 159 </ul> 160 161 <!-- New Search --> 162 <div class="menu-container"> 163 <div class="moremenu"> 164 <div id="more-btn"></div> 165 </div> 166 <div class="morehover" id="moremenu"> 167 <div class="top"></div> 168 <div class="mid"> 169 <div class="header">Links</div> 170 <ul> 171 <li><a href="https://play.google.com/apps/publish/">Google Play Developer Console</a></li> 172 <li><a href="http://android-developers.blogspot.com/">Android Developers Blog</a></li> 173 <li><a href="/about/index.html">About Android</a></li> 174 </ul> 175 <div class="header">Android Sites</div> 176 <ul> 177 <li><a href="http://www.android.com">Android.com</a></li> 178 <li class="active"><a>Android Developers</a></li> 179 <li><a href="http://source.android.com">Android Open Source Project</a></li> 180 </ul> 181 182 183 184 <div class="header">Language</div> 185 <div id="language" class="locales"> 186 <select name="language" onChange="changeLangPref(this.value, true)"> 187 <option value="en">English</option> 188 <option value="es">Espaol</option> 189 <option value="ja"></option> 190 <option value="ko"></option> 191 <option value="ru"></option> 192 <option value="zh-cn"> ()</option> 193 <option value="zh-tw"> ()</option> 194 </select> 195 </div> 196 <script type="text/javascript"> 197 <!-- 198 loadLangPref(); 199 //--> 200 </script> 201 202 203 204 205 <br class="clearfix" /> 206 </div> 207 <div class="bottom"></div> 208 </div> 209 <div class="search" id="search-container"> 210 <div class="search-inner"> 211 <div id="search-btn"></div> 212 <div class="left"></div> 213 <form onsubmit="return submit_search()"> 214 <input id="search_autocomplete" type="text" value="" autocomplete="off" name="q" 215 onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)" 216 onkeydown="return search_changed(event, true, '/')" 217 onkeyup="return search_changed(event, false, '/')" /> 218 </form> 219 <div class="right"></div> 220 <a class="close hide">close</a> 221 <div class="left"></div> 222 <div class="right"></div> 223 </div> 224 </div> 225 226 <div class="search_filtered_wrapper reference"> 227 <div class="suggest-card reference no-display"> 228 <ul class="search_filtered"> 229 </ul> 230 </div> 231 </div> 232 233 <div class="search_filtered_wrapper docs"> 234 <div class="suggest-card dummy no-display"> </div> 235 <div class="suggest-card develop no-display"> 236 <ul class="search_filtered"> 237 </ul> 238 <div class="child-card guides no-display"> 239 </div> 240 <div class="child-card training no-display"> 241 </div> 242 </div> 243 <div class="suggest-card design no-display"> 244 <ul class="search_filtered"> 245 </ul> 246 </div> 247 <div class="suggest-card distribute no-display"> 248 <ul class="search_filtered"> 249 </ul> 250 </div> 251 </div> 252 253 </div> 254 <!-- /New Search> 255 256 257 <!-- Expanded quicknav --> 258 <div id="quicknav" class="col-9"> 259 <ul> 260 <li class="design"> 261 <ul> 262 <li><a href="/design/index.html">Get Started</a></li> 263 <li><a href="/design/style/index.html">Style</a></li> 264 <li><a href="/design/patterns/index.html">Patterns</a></li> 265 <li><a href="/design/building-blocks/index.html">Building Blocks</a></li> 266 <li><a href="/design/downloads/index.html">Downloads</a></li> 267 <li><a href="/design/videos/index.html">Videos</a></li> 268 </ul> 269 </li> 270 <li class="develop"> 271 <ul> 272 <li><a href="/training/index.html" 273 zh-tw-lang="" 274 zh-cn-lang="" 275 ru-lang="" 276 ko-lang="" 277 ja-lang="" 278 es-lang="Capacitacin" 279 >Training</a></li> 280 <li><a href="/guide/components/index.html" 281 zh-tw-lang="API " 282 zh-cn-lang="API " 283 ru-lang=" API" 284 ko-lang="API " 285 ja-lang="API " 286 es-lang="Guas de la API" 287 >API Guides</a></li> 288 <li><a href="/reference/packages.html" 289 zh-tw-lang="" 290 zh-cn-lang="" 291 ru-lang="" 292 ko-lang="" 293 ja-lang="" 294 es-lang="Referencia" 295 >Reference</a></li> 296 <li><a href="/tools/index.html" 297 zh-tw-lang="" 298 zh-cn-lang="" 299 ru-lang="" 300 ko-lang="" 301 ja-lang="" 302 es-lang="Herramientas" 303 >Tools</a> 304 <ul><li><a href="/sdk/index.html">Get the SDK</a></li></ul> 305 </li> 306 <li><a href="/google/index.html">Google Services</a> 307 </li> 308 </ul> 309 </li> 310 <li class="distribute last"> 311 <ul> 312 <li><a href="/distribute/index.html">Google Play</a></li> 313 <li><a href="/distribute/googleplay/publish/index.html">Publishing</a></li> 314 <li><a href="/distribute/googleplay/promote/index.html">Promoting</a></li> 315 <li><a href="/distribute/googleplay/quality/index.html">App Quality</a></li> 316 <li><a href="/distribute/googleplay/spotlight/index.html">Spotlight</a></li> 317 <li><a href="/distribute/open.html">Open Distribution</a></li> 318 </ul> 319 </li> 320 </ul> 321 </div> 322 <!-- /Expanded quicknav --> 323 </div> 324 </div> 325 <!-- /Header --> 326 327 328 <div id="searchResults" class="wrap" style="display:none;"> 329 <h2 id="searchTitle">Results</h2> 330 <div id="leftSearchControl" class="search-control">Loading...</div> 331 </div> 332 333 334 335 <!-- Secondary x-nav --> 336 <div id="nav-x"> 337 <div class="wrap"> 338 <ul class="nav-x col-9 develop" style="width:100%"> 339 <li class="training"><a href="/training/index.html" 340 zh-tw-lang="" 341 zh-cn-lang="" 342 ru-lang="" 343 ko-lang="" 344 ja-lang="" 345 es-lang="Capacitacin" 346 >Training</a></li> 347 <li class="guide"><a href="/guide/components/index.html" 348 zh-tw-lang="API " 349 zh-cn-lang="API " 350 ru-lang=" API" 351 ko-lang="API " 352 ja-lang="API " 353 es-lang="Guas de la API" 354 >API Guides</a></li> 355 <li class="reference"><a href="/reference/packages.html" 356 zh-tw-lang="" 357 zh-cn-lang="" 358 ru-lang="" 359 ko-lang="" 360 ja-lang="" 361 es-lang="Referencia" 362 >Reference</a></li> 363 <li class="tools"><a href="/tools/index.html" 364 zh-tw-lang="" 365 zh-cn-lang="" 366 ru-lang="" 367 ko-lang="" 368 ja-lang="" 369 es-lang="Herramientas" 370 >Tools</a></li> 371 <li class="google"><a href="/google/index.html" 372 >Google Services</a> 373 </li> 374 </ul> 375 </div> 376 377 </div> 378 <!-- /Sendondary x-nav --> 379 380 381 382 383 384 385 386 387 388 <div class="wrap clearfix" id="body-content"> 389 <div class="col-4" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement"> 390 <div id="devdoc-nav" class="scroll-pane"> 391 <a class="totop" href="#top" data-g-event="left-nav-top">to top</a> 392 393 394 395 <ul id="nav"> 396 397 <li class="nav-section"> 398 <div class="nav-section-header empty"><a href="/google/index.html"> 399 <span class="en">Overview</span> 400 </a></div> 401 </li> 402 403 <li class="nav-section"> 404 <div class="nav-section-header empty"><a href="/google/play-services/games.html"> 405 <span class="en">Games</span> 406 </a></div> 407 </li> 408 <li class="nav-section"> 409 <div class="nav-section-header empty"><a href="/google/play-services/location.html"> 410 <span class="en">Location</span> 411 </a></div> 412 </li> 413 <li class="nav-section"> 414 <div class="nav-section-header empty"><a href="/google/play-services/plus.html"> 415 <span class="en">Google+</span> 416 </a></div> 417 </li> 418 <li class="nav-section"> 419 <div class="nav-section-header empty"><a href="/google/play-services/maps.html"> 420 <span class="en">Google Maps</span> 421 </a></div> 422 </li> 423 <li class="nav-section"> 424 <div class="nav-section-header empty"><a href="/google/play-services/auth.html"> 425 <span class="en">Authorization</span> 426 </a></div> 427 </li> 428 429 430 431 <li class="nav-section"> 432 <div class="nav-section-header"><a href="/google/play-services/index.html"> 433 <span class="en">Google Play Services</span></a> 434 </div> 435 <ul> 436 <li><a href="/google/play-services/setup.html"> 437 <span class="en">Setup</span></a> 438 </li> 439 <li id="gms-tree-list" class="nav-section"> 440 <div class="nav-section-header"> 441 <a href="/reference/gms-packages.html"> 442 <span class="en">Reference</span> 443 </a> 444 <div> 445 </li> 446 </ul> 447 </li> 448 449 450 <li class="nav-section"> 451 <div class="nav-section-header"><a href="/google/play/billing/index.html"> 452 <span class="en">Google Play In-app Billing</span></a> 453 </div> 454 <ul> 455 <li><a href="/google/play/billing/billing_overview.html"> 456 <span class="en">Overview</span></a> 457 </li> 458 <li class="nav-section"><div class="nav-section-header"><a href="/google/play/billing/api.html"> 459 <span class="en">Version 3 API</span></a></div> 460 <ul> 461 <li><a href="/google/play/billing/billing_integrate.html"> 462 <span class="en">Implementing the API</span></a></li> 463 <li><a href="/google/play/billing/billing_reference.html"> 464 <span class="en">Reference</span></a></li> 465 </ul> 466 </li> 467 <li class="nav-section"><div class="nav-section-header"><a href="/google/play/billing/v2/api.html"> 468 <span class="en">Version 2 API</span></a></div> 469 <ul> 470 <li><a href="/google/play/billing/v2/billing_integrate.html"> 471 <span class="en">Implementing the API</span></a></li> 472 <li><a href="/google/play/billing/v2/billing_subscriptions.html"> 473 <span class="en">Subscriptions</span></a></li> 474 <li><a href="/google/play/billing/v2/billing_reference.html"> 475 <span class="en">Reference</span></a></li> 476 </ul> 477 </li> 478 <li><a href="/google/play/billing/billing_subscriptions.html"> 479 <span class="en">Subscriptions</span></a> 480 </li> 481 <li><a href="/google/play/billing/billing_best_practices.html"> 482 <span class="en">Security and Design</span></a> 483 </li> 484 <li><a href="/google/play/billing/billing_testing.html"> 485 <span class="en">Testing In-app Billing</span></a> 486 </li> 487 <li><a href="/google/play/billing/billing_admin.html"> 488 <span class="en">Administering In-app Billing</span></a> 489 </li> 490 <li><a href="/google/play/billing/gp-purchase-status-api.html"> 491 <span class="en">Purchase Status API</span></a> 492 </li> 493 <li><a href="/google/play/billing/versions.html"> 494 <span class="en">Version Notes</span></a> 495 </li> 496 </ul> 497 </li> 498 499 500 501 <li class="nav-section"> 502 <div class="nav-section-header"><a href="/google/gcm/index.html"> 503 <span class="en">Google Cloud Messaging</span></a> 504 </div> 505 <ul> 506 <li><a href="/google/gcm/gs.html"> 507 <span class="en">Getting Started</span></a> 508 </li> 509 <li><a href="/google/gcm/gcm.html"> 510 <span class="en">Architectural Overview</span></a> 511 </li> 512 <li><a href="/google/gcm/ccs.html"> 513 <span class="en">Cloud Connection Server</span></a> 514 </li> 515 <li><a href="/google/gcm/notifications.html"> 516 <span class="en">User Notifications</span></a> 517 </li> 518 <li><a href="/google/gcm/client.html"> 519 <span class="en">GCM Client</span></a> 520 </li> 521 <li><a href="/google/gcm/server.html"> 522 <span class="en">GCM Server</span></a> 523 </li> 524 <li><a href="/google/gcm/adv.html"> 525 <span class="en">Advanced Topics</span></a> 526 </li> 527 <li><a href="/google/gcm/c2dm.html"> 528 <span class="en">Migration</span></a> 529 </li> 530 <li id="gcm-tree-list" class="nav-section"> 531 <div class="nav-section-header"> 532 <a href="/reference/gcm-packages.html"> 533 <span class="en">Reference</span> 534 </a> 535 <div> 536 </li> 537 </ul> 538 </li> 539 540 <li class="nav-section"> 541 <div class="nav-section-header"><a href="/google/play/dist.html"> 542 <span class="en">Google Play Distribution</span></a> 543 </div> 544 <ul> 545 <li><a href="/google/play/filters.html"> 546 <span class="en">Filters on Google Play</span></a> 547 </li> 548 549 <li><a href="/google/play/publishing/multiple-apks.html"> 550 <span class="en">Multiple APK Support</span></a> 551 </li> 552 <li><a href="/google/play/expansion-files.html"> 553 <span class="en">APK Expansion Files</span></a> 554 </li> 555 <li class="nav-section"> 556 <div class="nav-section-header"><a href="/google/play/licensing/index.html"> 557 <span class="en">Application Licensing</span></a> 558 </div> 559 <ul> 560 <li><a href="/google/play/licensing/overview.html"> 561 <span class="en">Licensing Overview</span></a> 562 </li> 563 <li><a href="/google/play/licensing/setting-up.html"> 564 <span class="en">Setting Up for Licensing</span></a> 565 </li> 566 <li><a href="/google/play/licensing/adding-licensing.html"> 567 <span class="en">Adding Licensing to Your App</span></a> 568 </li> 569 <li><a href="/google/play/licensing/licensing-reference.html"> 570 <span class="en">Licensing Reference</span></a> 571 </li> 572 </ul> 573 </li> 574 575 <li class="nav-section"> 576 <div class="nav-section-header"><a href="/google/backup/index.html"> 577 Android Backup Service</a> 578 </div> 579 <ul> 580 <li><a href="/google/backup/signup.html"> 581 Register</a> 582 </li> 583 </ul> 584 </li> 585 586 </ul> 587 588 </li> 589 590 591 592 </ul> 593 594 <script type="text/javascript"> 595 <!-- 596 buildToggleLists(); 597 changeNavLang(getLangPref()); 598 //--> 599 </script> 600 601 602 603 604 </div> 605 <script type="text/javascript"> 606 showGoogleRefTree(); 607 608 </script> 609 </div> <!-- end side-nav --> 610 <script> 611 $(document).ready(function() { 612 scrollIntoView("devdoc-nav"); 613 }); 614 </script> 615 616 617 618 619 620 621 <div class="col-12" id="doc-col"> 622 623 <div id="api-info-block"> 624 625 626 627 628 629 630 631 632 633 634 635 <div class="sum-details-links"> 636 637 Summary: 638 639 640 641 642 643 <a href="#constants">Constants</a> 644 645 646 647 648 649 650 651 652 | <a href="#pubmethods">Methods</a> 653 654 655 656 657 | <a href="#inhmethods">Inherited Methods</a> 658 659 | <a href="#" onclick="return toggleAllClassInherited()" id="toggleAllClassInherited">[Expand All]</a> 660 661 </div><!-- end sum-details-links --> 662 <div class="api-level"> 663 664 665 666 667 </div> 668 </div><!-- end api-info-block --> 669 670 671 <!-- ======== START OF CLASS DATA ======== --> 672 673 <div id="jd-header"> 674 public 675 676 final 677 678 class 679 <h1 itemprop="name">GCMRegistrar</h1> 680 681 682 683 684 extends Object<br/> 685 686 687 688 689 690 691 692 693 694 </div><!-- end header --> 695 696 <div id="naMessage"></div> 697 698 <div id="jd-content" class="api apilevel-"> 699 <table class="jd-inheritance-table"> 700 701 702 <tr> 703 704 <td colspan="2" class="jd-inheritance-class-cell">java.lang.Object</td> 705 </tr> 706 707 708 <tr> 709 710 <td class="jd-inheritance-space"> ↳</td> 711 712 <td colspan="1" class="jd-inheritance-class-cell">com.google.android.gcm.GCMRegistrar</td> 713 </tr> 714 715 716 </table> 717 718 719 720 721 722 723 724 <div class="jd-descr"> 725 <p> 726 <p class="caution"><strong> 727 This class is deprecated.</strong><br/> 728 Please use the <a href= 729 "http://developer.android.com/reference/com/google/android/gms/gcm/GoogleCloudMessaging.html"> 730 <code>GoogleCloudMessaging</code></a> API instead. 731 732 </p> 733 734 <h2>Class Overview</h2> 735 <p itemprop="articleBody">Utilities for device registration. 736 <p> 737 <strong>Note:</strong> this class uses a private <code><a href="/reference/android/content/SharedPreferences.html">SharedPreferences</a></code> 738 object to keep track of the registration token.</p> 739 740 741 742 743 744 </div><!-- jd-descr --> 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 <div class="jd-descr"> 762 763 764 <h2>Summary</h2> 765 766 767 768 769 770 771 772 773 774 775 776 777 778 <!-- =========== ENUM CONSTANT SUMMARY =========== --> 779 <table id="constants" class="jd-sumtable"><tr><th colspan="12">Constants</th></tr> 780 781 782 783 <tr class="alt-color api apilevel-" > 784 <td class="jd-typecol">long</td> 785 <td class="jd-linkcol"><a href="/reference/com/google/android/gcm/GCMRegistrar.html#DEFAULT_ON_SERVER_LIFESPAN_MS">DEFAULT_ON_SERVER_LIFESPAN_MS</a></td> 786 <td class="jd-descrcol" width="100%">Default lifespan (7 days) of the <code><a href="/reference/com/google/android/gcm/GCMRegistrar.html#isRegisteredOnServer(android.content.Context)">isRegisteredOnServer(Context)</a></code> 787 flag until it is considered expired.</td> 788 </tr> 789 790 791 792 </table> 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 <!-- ========== METHOD SUMMARY =========== --> 810 <table id="pubmethods" class="jd-sumtable"><tr><th colspan="12">Public Methods</th></tr> 811 812 813 814 815 <tr class="alt-color api apilevel-" > 816 <td class="jd-typecol"><nobr> 817 818 819 820 static 821 822 void</nobr> 823 </td> 824 <td class="jd-linkcol" width="100%"><nobr> 825 <span class="sympad"><a href="/reference/com/google/android/gcm/GCMRegistrar.html#checkDevice(android.content.Context)">checkDevice</a></span>(Context context)</nobr> 826 827 <div class="jd-descrdiv">Checks if the device has the proper dependencies installed.</div> 828 829 </td></tr> 830 831 832 833 <tr class=" api apilevel-" > 834 <td class="jd-typecol"><nobr> 835 836 837 838 static 839 840 void</nobr> 841 </td> 842 <td class="jd-linkcol" width="100%"><nobr> 843 <span class="sympad"><a href="/reference/com/google/android/gcm/GCMRegistrar.html#checkManifest(android.content.Context)">checkManifest</a></span>(Context context)</nobr> 844 845 <div class="jd-descrdiv">Checks that the application manifest is properly configured.</div> 846 847 </td></tr> 848 849 850 851 <tr class="alt-color api apilevel-" > 852 <td class="jd-typecol"><nobr> 853 854 855 856 static 857 858 long</nobr> 859 </td> 860 <td class="jd-linkcol" width="100%"><nobr> 861 <span class="sympad"><a href="/reference/com/google/android/gcm/GCMRegistrar.html#getRegisterOnServerLifespan(android.content.Context)">getRegisterOnServerLifespan</a></span>(Context context)</nobr> 862 863 <div class="jd-descrdiv">Gets how long (in milliseconds) the <code><a href="/reference/com/google/android/gcm/GCMRegistrar.html#isRegistered(android.content.Context)">isRegistered(Context)</a></code> 864 property is valid.</div> 865 866 </td></tr> 867 868 869 870 <tr class=" api apilevel-" > 871 <td class="jd-typecol"><nobr> 872 873 874 875 static 876 877 String</nobr> 878 </td> 879 <td class="jd-linkcol" width="100%"><nobr> 880 <span class="sympad"><a href="/reference/com/google/android/gcm/GCMRegistrar.html#getRegistrationId(android.content.Context)">getRegistrationId</a></span>(Context context)</nobr> 881 882 <div class="jd-descrdiv">Gets the current registration id for application on GCM service.</div> 883 884 </td></tr> 885 886 887 888 <tr class="alt-color api apilevel-" > 889 <td class="jd-typecol"><nobr> 890 891 892 893 static 894 895 boolean</nobr> 896 </td> 897 <td class="jd-linkcol" width="100%"><nobr> 898 <span class="sympad"><a href="/reference/com/google/android/gcm/GCMRegistrar.html#isRegistered(android.content.Context)">isRegistered</a></span>(Context context)</nobr> 899 900 <div class="jd-descrdiv">Checks whether the application was successfully registered on GCM 901 service.</div> 902 903 </td></tr> 904 905 906 907 <tr class=" api apilevel-" > 908 <td class="jd-typecol"><nobr> 909 910 911 912 static 913 914 boolean</nobr> 915 </td> 916 <td class="jd-linkcol" width="100%"><nobr> 917 <span class="sympad"><a href="/reference/com/google/android/gcm/GCMRegistrar.html#isRegisteredOnServer(android.content.Context)">isRegisteredOnServer</a></span>(Context context)</nobr> 918 919 <div class="jd-descrdiv">Checks whether the device was successfully registered in the server side, 920 as set by <code><a href="/reference/com/google/android/gcm/GCMRegistrar.html#setRegisteredOnServer(android.content.Context, boolean)">setRegisteredOnServer(Context, boolean)</a></code>.</div> 921 922 </td></tr> 923 924 925 926 <tr class="alt-color api apilevel-" > 927 <td class="jd-typecol"><nobr> 928 929 synchronized 930 931 static 932 933 void</nobr> 934 </td> 935 <td class="jd-linkcol" width="100%"><nobr> 936 <span class="sympad"><a href="/reference/com/google/android/gcm/GCMRegistrar.html#onDestroy(android.content.Context)">onDestroy</a></span>(Context context)</nobr> 937 938 <div class="jd-descrdiv">Clear internal resources.</div> 939 940 </td></tr> 941 942 943 944 <tr class=" api apilevel-" > 945 <td class="jd-typecol"><nobr> 946 947 948 949 static 950 951 void</nobr> 952 </td> 953 <td class="jd-linkcol" width="100%"><nobr> 954 <span class="sympad"><a href="/reference/com/google/android/gcm/GCMRegistrar.html#register(android.content.Context, java.lang.String...)">register</a></span>(Context context, String... senderIds)</nobr> 955 956 <div class="jd-descrdiv">Initiate messaging registration for the current application.</div> 957 958 </td></tr> 959 960 961 962 <tr class="alt-color api apilevel-" > 963 <td class="jd-typecol"><nobr> 964 965 966 967 static 968 969 void</nobr> 970 </td> 971 <td class="jd-linkcol" width="100%"><nobr> 972 <span class="sympad"><a href="/reference/com/google/android/gcm/GCMRegistrar.html#setRegisterOnServerLifespan(android.content.Context, long)">setRegisterOnServerLifespan</a></span>(Context context, long lifespan)</nobr> 973 974 <div class="jd-descrdiv">Sets how long (in milliseconds) the <code><a href="/reference/com/google/android/gcm/GCMRegistrar.html#isRegistered(android.content.Context)">isRegistered(Context)</a></code> 975 flag is valid.</div> 976 977 </td></tr> 978 979 980 981 <tr class=" api apilevel-" > 982 <td class="jd-typecol"><nobr> 983 984 985 986 static 987 988 void</nobr> 989 </td> 990 <td class="jd-linkcol" width="100%"><nobr> 991 <span class="sympad"><a href="/reference/com/google/android/gcm/GCMRegistrar.html#setRegisteredOnServer(android.content.Context, boolean)">setRegisteredOnServer</a></span>(Context context, boolean flag)</nobr> 992 993 <div class="jd-descrdiv">Sets whether the device was successfully registered in the server side.</div> 994 995 </td></tr> 996 997 998 999 <tr class="alt-color api apilevel-" > 1000 <td class="jd-typecol"><nobr> 1001 1002 1003 1004 static 1005 1006 void</nobr> 1007 </td> 1008 <td class="jd-linkcol" width="100%"><nobr> 1009 <span class="sympad"><a href="/reference/com/google/android/gcm/GCMRegistrar.html#unregister(android.content.Context)">unregister</a></span>(Context context)</nobr> 1010 1011 <div class="jd-descrdiv">Unregister the application.</div> 1012 1013 </td></tr> 1014 1015 1016 1017 </table> 1018 1019 1020 1021 1022 1023 1024 1025 <!-- ========== METHOD SUMMARY =========== --> 1026 <table id="inhmethods" class="jd-sumtable"><tr><th> 1027 <a href="#" class="toggle-all" onclick="return toggleAllInherited(this, null)">[Expand]</a> 1028 <div style="clear:left;">Inherited Methods</div></th></tr> 1029 1030 1031 <tr class="api apilevel-" > 1032 <td colspan="12"> 1033 <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed" 1034 ><img id="inherited-methods-java.lang.Object-trigger" 1035 src="/assets/images/triangle-closed.png" 1036 class="jd-expando-trigger-img" /></a> 1037 From class 1038 1039 java.lang.Object 1040 1041 <div id="inherited-methods-java.lang.Object"> 1042 <div id="inherited-methods-java.lang.Object-list" 1043 class="jd-inheritedlinks"> 1044 </div> 1045 <div id="inherited-methods-java.lang.Object-summary" style="display: none;"> 1046 <table class="jd-sumtable-expando"> 1047 1048 1049 1050 1051 <tr class="alt-color api apilevel-" > 1052 <td class="jd-typecol"><nobr> 1053 1054 1055 1056 1057 1058 Object</nobr> 1059 </td> 1060 <td class="jd-linkcol" width="100%"><nobr> 1061 <span class="sympad">clone</span>()</nobr> 1062 1063 </td></tr> 1064 1065 1066 1067 <tr class=" api apilevel-" > 1068 <td class="jd-typecol"><nobr> 1069 1070 1071 1072 1073 1074 boolean</nobr> 1075 </td> 1076 <td class="jd-linkcol" width="100%"><nobr> 1077 <span class="sympad">equals</span>(Object arg0)</nobr> 1078 1079 </td></tr> 1080 1081 1082 1083 <tr class="alt-color api apilevel-" > 1084 <td class="jd-typecol"><nobr> 1085 1086 1087 1088 1089 1090 void</nobr> 1091 </td> 1092 <td class="jd-linkcol" width="100%"><nobr> 1093 <span class="sympad">finalize</span>()</nobr> 1094 1095 </td></tr> 1096 1097 1098 1099 <tr class=" api apilevel-" > 1100 <td class="jd-typecol"><nobr> 1101 1102 1103 final 1104 1105 1106 Class<?></nobr> 1107 </td> 1108 <td class="jd-linkcol" width="100%"><nobr> 1109 <span class="sympad">getClass</span>()</nobr> 1110 1111 </td></tr> 1112 1113 1114 1115 <tr class="alt-color api apilevel-" > 1116 <td class="jd-typecol"><nobr> 1117 1118 1119 1120 1121 1122 int</nobr> 1123 </td> 1124 <td class="jd-linkcol" width="100%"><nobr> 1125 <span class="sympad">hashCode</span>()</nobr> 1126 1127 </td></tr> 1128 1129 1130 1131 <tr class=" api apilevel-" > 1132 <td class="jd-typecol"><nobr> 1133 1134 1135 final 1136 1137 1138 void</nobr> 1139 </td> 1140 <td class="jd-linkcol" width="100%"><nobr> 1141 <span class="sympad">notify</span>()</nobr> 1142 1143 </td></tr> 1144 1145 1146 1147 <tr class="alt-color api apilevel-" > 1148 <td class="jd-typecol"><nobr> 1149 1150 1151 final 1152 1153 1154 void</nobr> 1155 </td> 1156 <td class="jd-linkcol" width="100%"><nobr> 1157 <span class="sympad">notifyAll</span>()</nobr> 1158 1159 </td></tr> 1160 1161 1162 1163 <tr class=" api apilevel-" > 1164 <td class="jd-typecol"><nobr> 1165 1166 1167 1168 1169 1170 String</nobr> 1171 </td> 1172 <td class="jd-linkcol" width="100%"><nobr> 1173 <span class="sympad">toString</span>()</nobr> 1174 1175 </td></tr> 1176 1177 1178 1179 <tr class="alt-color api apilevel-" > 1180 <td class="jd-typecol"><nobr> 1181 1182 1183 final 1184 1185 1186 void</nobr> 1187 </td> 1188 <td class="jd-linkcol" width="100%"><nobr> 1189 <span class="sympad">wait</span>()</nobr> 1190 1191 </td></tr> 1192 1193 1194 1195 <tr class=" api apilevel-" > 1196 <td class="jd-typecol"><nobr> 1197 1198 1199 final 1200 1201 1202 void</nobr> 1203 </td> 1204 <td class="jd-linkcol" width="100%"><nobr> 1205 <span class="sympad">wait</span>(long arg0, int arg1)</nobr> 1206 1207 </td></tr> 1208 1209 1210 1211 <tr class="alt-color api apilevel-" > 1212 <td class="jd-typecol"><nobr> 1213 1214 1215 final 1216 1217 1218 void</nobr> 1219 </td> 1220 <td class="jd-linkcol" width="100%"><nobr> 1221 <span class="sympad">wait</span>(long arg0)</nobr> 1222 1223 </td></tr> 1224 1225 1226 </table> 1227 </div> 1228 </div> 1229 </td></tr> 1230 1231 1232 </table> 1233 1234 1235 </div><!-- jd-descr (summary) --> 1236 1237 <!-- Details --> 1238 1239 1240 1241 1242 1243 1244 1245 1246 <!-- XML Attributes --> 1247 1248 1249 <!-- Enum Values --> 1250 1251 1252 <!-- Constants --> 1253 1254 1255 <!-- ========= ENUM CONSTANTS DETAIL ======== --> 1256 <h2>Constants</h2> 1257 1258 1259 1260 1261 <A NAME="DEFAULT_ON_SERVER_LIFESPAN_MS"></A> 1262 1263 <div class="jd-details api apilevel-"> 1264 <h4 class="jd-details-title"> 1265 <span class="normal"> 1266 public 1267 static 1268 final 1269 long 1270 </span> 1271 DEFAULT_ON_SERVER_LIFESPAN_MS 1272 </h4> 1273 <div class="api-level"> 1274 1275 1276 1277 1278 </div> 1279 <div class="jd-details-descr"> 1280 1281 <div class="jd-tagdata jd-tagdescr"><p>Default lifespan (7 days) of the <code><a href="/reference/com/google/android/gcm/GCMRegistrar.html#isRegisteredOnServer(android.content.Context)">isRegisteredOnServer(Context)</a></code> 1282 flag until it is considered expired. 1283 </p></div> 1284 1285 1286 <div class="jd-tagdata"> 1287 <span class="jd-tagtitle">Constant Value: </span> 1288 <span> 1289 1290 604800000 1291 (0x00000000240c8400) 1292 1293 </span> 1294 </div> 1295 1296 </div> 1297 </div> 1298 1299 1300 1301 1302 <!-- Fields --> 1303 1304 1305 <!-- Public ctors --> 1306 1307 1308 1309 <!-- ========= CONSTRUCTOR DETAIL ======== --> 1310 <!-- Protected ctors --> 1311 1312 1313 1314 <!-- ========= METHOD DETAIL ======== --> 1315 <!-- Public methdos --> 1316 1317 <h2>Public Methods</h2> 1318 1319 1320 1321 <A NAME="checkDevice(android.content.Context)"></A> 1322 1323 <div class="jd-details api apilevel-"> 1324 <h4 class="jd-details-title"> 1325 <span class="normal"> 1326 public 1327 static 1328 1329 1330 1331 void 1332 </span> 1333 <span class="sympad">checkDevice</span> 1334 <span class="normal">(Context context)</span> 1335 </h4> 1336 <div class="api-level"> 1337 <div></div> 1338 1339 1340 1341 </div> 1342 <div class="jd-details-descr"> 1343 1344 <div class="jd-tagdata jd-tagdescr"><p>Checks if the device has the proper dependencies installed. 1345 <p> 1346 This method should be called when the application starts to verify that 1347 the device supports GCM.</p></div> 1348 <div class="jd-tagdata"> 1349 <h5 class="jd-tagtitle">Parameters</h5> 1350 <table class="jd-tagtable"> 1351 <tr> 1352 <th>context</td> 1353 <td>application context.</td> 1354 </tr> 1355 </table> 1356 </div> 1357 <div class="jd-tagdata"> 1358 <h5 class="jd-tagtitle">Throws</h5> 1359 <table class="jd-tagtable"> 1360 <tr> 1361 <th>UnsupportedOperationException</td> 1362 <td>if the device does not support GCM. 1363 </td> 1364 </tr> 1365 </table> 1366 </div> 1367 1368 </div> 1369 </div> 1370 1371 1372 <A NAME="checkManifest(android.content.Context)"></A> 1373 1374 <div class="jd-details api apilevel-"> 1375 <h4 class="jd-details-title"> 1376 <span class="normal"> 1377 public 1378 static 1379 1380 1381 1382 void 1383 </span> 1384 <span class="sympad">checkManifest</span> 1385 <span class="normal">(Context context)</span> 1386 </h4> 1387 <div class="api-level"> 1388 <div></div> 1389 1390 1391 1392 </div> 1393 <div class="jd-details-descr"> 1394 1395 <div class="jd-tagdata jd-tagdescr"><p>Checks that the application manifest is properly configured. 1396 <p> 1397 A proper configuration means: 1398 <ol> 1399 <li>It creates a custom permission called 1400 <code>PACKAGE_NAME.permission.C2D_MESSAGE</code>. 1401 <li>It defines at least one <code><a href="/reference/android/content/BroadcastReceiver.html">BroadcastReceiver</a></code> with category 1402 <code>PACKAGE_NAME</code>. 1403 <li>The <code><a href="/reference/android/content/BroadcastReceiver.html">BroadcastReceiver</a></code>(s) uses the 1404 <code><a href="/reference/com/google/android/gcm/GCMConstants.html#PERMISSION_GCM_INTENTS">com.google.android.gcm.GCMConstants.PERMISSION_GCM_INTENTS</a></code> 1405 permission. 1406 <li>The <code><a href="/reference/android/content/BroadcastReceiver.html">BroadcastReceiver</a></code>(s) handles the 2 GCM intents 1407 (<code><a href="/reference/com/google/android/gcm/GCMConstants.html#INTENT_FROM_GCM_MESSAGE">com.google.android.gcm.GCMConstants.INTENT_FROM_GCM_MESSAGE</a></code> 1408 and 1409 <code><a href="/reference/com/google/android/gcm/GCMConstants.html#INTENT_FROM_GCM_REGISTRATION_CALLBACK">com.google.android.gcm.GCMConstants.INTENT_FROM_GCM_REGISTRATION_CALLBACK</a></code>). 1410 </ol> 1411 ...where <code>PACKAGE_NAME</code> is the application package. 1412 <p> 1413 This method should be used during development time to verify that the 1414 manifest is properly set up, but it doesn't need to be called once the 1415 application is deployed to the users' devices.</p></div> 1416 <div class="jd-tagdata"> 1417 <h5 class="jd-tagtitle">Parameters</h5> 1418 <table class="jd-tagtable"> 1419 <tr> 1420 <th>context</td> 1421 <td>application context.</td> 1422 </tr> 1423 </table> 1424 </div> 1425 <div class="jd-tagdata"> 1426 <h5 class="jd-tagtitle">Throws</h5> 1427 <table class="jd-tagtable"> 1428 <tr> 1429 <th>IllegalStateException</td> 1430 <td>if any of the conditions above is not met. 1431 </td> 1432 </tr> 1433 </table> 1434 </div> 1435 1436 </div> 1437 </div> 1438 1439 1440 <A NAME="getRegisterOnServerLifespan(android.content.Context)"></A> 1441 1442 <div class="jd-details api apilevel-"> 1443 <h4 class="jd-details-title"> 1444 <span class="normal"> 1445 public 1446 static 1447 1448 1449 1450 long 1451 </span> 1452 <span class="sympad">getRegisterOnServerLifespan</span> 1453 <span class="normal">(Context context)</span> 1454 </h4> 1455 <div class="api-level"> 1456 <div></div> 1457 1458 1459 1460 </div> 1461 <div class="jd-details-descr"> 1462 1463 <div class="jd-tagdata jd-tagdescr"><p>Gets how long (in milliseconds) the <code><a href="/reference/com/google/android/gcm/GCMRegistrar.html#isRegistered(android.content.Context)">isRegistered(Context)</a></code> 1464 property is valid.</p></div> 1465 <div class="jd-tagdata"> 1466 <h5 class="jd-tagtitle">Returns</h5> 1467 <ul class="nolist"><li>value set by <code><a href="/reference/com/google/android/gcm/GCMRegistrar.html#setRegisteredOnServer(android.content.Context, boolean)">setRegisteredOnServer(Context, boolean)</a></code> or 1468 <code><a href="/reference/com/google/android/gcm/GCMRegistrar.html#DEFAULT_ON_SERVER_LIFESPAN_MS">DEFAULT_ON_SERVER_LIFESPAN_MS</a></code> if not set. 1469 </li></ul> 1470 </div> 1471 1472 </div> 1473 </div> 1474 1475 1476 <A NAME="getRegistrationId(android.content.Context)"></A> 1477 1478 <div class="jd-details api apilevel-"> 1479 <h4 class="jd-details-title"> 1480 <span class="normal"> 1481 public 1482 static 1483 1484 1485 1486 String 1487 </span> 1488 <span class="sympad">getRegistrationId</span> 1489 <span class="normal">(Context context)</span> 1490 </h4> 1491 <div class="api-level"> 1492 <div></div> 1493 1494 1495 1496 </div> 1497 <div class="jd-details-descr"> 1498 1499 <div class="jd-tagdata jd-tagdescr"><p>Gets the current registration id for application on GCM service. 1500 <p> 1501 If result is empty, the registration has failed.</p></div> 1502 <div class="jd-tagdata"> 1503 <h5 class="jd-tagtitle">Returns</h5> 1504 <ul class="nolist"><li>registration id, or empty string if the registration is not 1505 complete. 1506 </li></ul> 1507 </div> 1508 1509 </div> 1510 </div> 1511 1512 1513 <A NAME="isRegistered(android.content.Context)"></A> 1514 1515 <div class="jd-details api apilevel-"> 1516 <h4 class="jd-details-title"> 1517 <span class="normal"> 1518 public 1519 static 1520 1521 1522 1523 boolean 1524 </span> 1525 <span class="sympad">isRegistered</span> 1526 <span class="normal">(Context context)</span> 1527 </h4> 1528 <div class="api-level"> 1529 <div></div> 1530 1531 1532 1533 </div> 1534 <div class="jd-details-descr"> 1535 1536 <div class="jd-tagdata jd-tagdescr"><p>Checks whether the application was successfully registered on GCM 1537 service. 1538 </p></div> 1539 1540 </div> 1541 </div> 1542 1543 1544 <A NAME="isRegisteredOnServer(android.content.Context)"></A> 1545 1546 <div class="jd-details api apilevel-"> 1547 <h4 class="jd-details-title"> 1548 <span class="normal"> 1549 public 1550 static 1551 1552 1553 1554 boolean 1555 </span> 1556 <span class="sympad">isRegisteredOnServer</span> 1557 <span class="normal">(Context context)</span> 1558 </h4> 1559 <div class="api-level"> 1560 <div></div> 1561 1562 1563 1564 </div> 1565 <div class="jd-details-descr"> 1566 1567 <div class="jd-tagdata jd-tagdescr"><p>Checks whether the device was successfully registered in the server side, 1568 as set by <code><a href="/reference/com/google/android/gcm/GCMRegistrar.html#setRegisteredOnServer(android.content.Context, boolean)">setRegisteredOnServer(Context, boolean)</a></code>. 1569 1570 <p>To avoid the scenario where the device sends the registration to the 1571 server but the server loses it, this flag has an expiration date, which 1572 is <code><a href="/reference/com/google/android/gcm/GCMRegistrar.html#DEFAULT_ON_SERVER_LIFESPAN_MS">DEFAULT_ON_SERVER_LIFESPAN_MS</a></code> by default (but can be changed 1573 by <code><a href="/reference/com/google/android/gcm/GCMRegistrar.html#setRegisterOnServerLifespan(android.content.Context, long)">setRegisterOnServerLifespan(Context, long)</a></code>). 1574 </p></div> 1575 1576 </div> 1577 </div> 1578 1579 1580 <A NAME="onDestroy(android.content.Context)"></A> 1581 1582 <div class="jd-details api apilevel-"> 1583 <h4 class="jd-details-title"> 1584 <span class="normal"> 1585 public 1586 static 1587 1588 1589 synchronized 1590 void 1591 </span> 1592 <span class="sympad">onDestroy</span> 1593 <span class="normal">(Context context)</span> 1594 </h4> 1595 <div class="api-level"> 1596 <div></div> 1597 1598 1599 1600 </div> 1601 <div class="jd-details-descr"> 1602 1603 <div class="jd-tagdata jd-tagdescr"><p>Clear internal resources. 1604 1605 <p> 1606 This method should be called by the main activity's <code>onDestroy()</code> 1607 method. 1608 </p></div> 1609 1610 </div> 1611 </div> 1612 1613 1614 <A NAME="register(android.content.Context, java.lang.String...)"></A> 1615 1616 <div class="jd-details api apilevel-"> 1617 <h4 class="jd-details-title"> 1618 <span class="normal"> 1619 public 1620 static 1621 1622 1623 1624 void 1625 </span> 1626 <span class="sympad">register</span> 1627 <span class="normal">(Context context, String... senderIds)</span> 1628 </h4> 1629 <div class="api-level"> 1630 <div></div> 1631 1632 1633 1634 </div> 1635 <div class="jd-details-descr"> 1636 1637 <div class="jd-tagdata jd-tagdescr"><p>Initiate messaging registration for the current application. 1638 <p> 1639 The result will be returned as an 1640 <code><a href="/reference/com/google/android/gcm/GCMConstants.html#INTENT_FROM_GCM_REGISTRATION_CALLBACK">INTENT_FROM_GCM_REGISTRATION_CALLBACK</a></code> intent with 1641 either a <code><a href="/reference/com/google/android/gcm/GCMConstants.html#EXTRA_REGISTRATION_ID">EXTRA_REGISTRATION_ID</a></code> or 1642 <code><a href="/reference/com/google/android/gcm/GCMConstants.html#EXTRA_ERROR">EXTRA_ERROR</a></code>.</p></div> 1643 <div class="jd-tagdata"> 1644 <h5 class="jd-tagtitle">Parameters</h5> 1645 <table class="jd-tagtable"> 1646 <tr> 1647 <th>context</td> 1648 <td>application context.</td> 1649 </tr> 1650 <tr> 1651 <th>senderIds</td> 1652 <td>Google Project ID of the accounts authorized to send 1653 messages to this application.</td> 1654 </tr> 1655 </table> 1656 </div> 1657 <div class="jd-tagdata"> 1658 <h5 class="jd-tagtitle">Throws</h5> 1659 <table class="jd-tagtable"> 1660 <tr> 1661 <th>IllegalStateException</td> 1662 <td>if device does not have all GCM 1663 dependencies installed. 1664 </td> 1665 </tr> 1666 </table> 1667 </div> 1668 1669 </div> 1670 </div> 1671 1672 1673 <A NAME="setRegisterOnServerLifespan(android.content.Context, long)"></A> 1674 1675 <div class="jd-details api apilevel-"> 1676 <h4 class="jd-details-title"> 1677 <span class="normal"> 1678 public 1679 static 1680 1681 1682 1683 void 1684 </span> 1685 <span class="sympad">setRegisterOnServerLifespan</span> 1686 <span class="normal">(Context context, long lifespan)</span> 1687 </h4> 1688 <div class="api-level"> 1689 <div></div> 1690 1691 1692 1693 </div> 1694 <div class="jd-details-descr"> 1695 1696 <div class="jd-tagdata jd-tagdescr"><p>Sets how long (in milliseconds) the <code><a href="/reference/com/google/android/gcm/GCMRegistrar.html#isRegistered(android.content.Context)">isRegistered(Context)</a></code> 1697 flag is valid. 1698 </p></div> 1699 1700 </div> 1701 </div> 1702 1703 1704 <A NAME="setRegisteredOnServer(android.content.Context, boolean)"></A> 1705 1706 <div class="jd-details api apilevel-"> 1707 <h4 class="jd-details-title"> 1708 <span class="normal"> 1709 public 1710 static 1711 1712 1713 1714 void 1715 </span> 1716 <span class="sympad">setRegisteredOnServer</span> 1717 <span class="normal">(Context context, boolean flag)</span> 1718 </h4> 1719 <div class="api-level"> 1720 <div></div> 1721 1722 1723 1724 </div> 1725 <div class="jd-details-descr"> 1726 1727 <div class="jd-tagdata jd-tagdescr"><p>Sets whether the device was successfully registered in the server side. 1728 </p></div> 1729 1730 </div> 1731 </div> 1732 1733 1734 <A NAME="unregister(android.content.Context)"></A> 1735 1736 <div class="jd-details api apilevel-"> 1737 <h4 class="jd-details-title"> 1738 <span class="normal"> 1739 public 1740 static 1741 1742 1743 1744 void 1745 </span> 1746 <span class="sympad">unregister</span> 1747 <span class="normal">(Context context)</span> 1748 </h4> 1749 <div class="api-level"> 1750 <div></div> 1751 1752 1753 1754 </div> 1755 <div class="jd-details-descr"> 1756 1757 <div class="jd-tagdata jd-tagdescr"><p>Unregister the application. 1758 <p> 1759 The result will be returned as an 1760 <code><a href="/reference/com/google/android/gcm/GCMConstants.html#INTENT_FROM_GCM_REGISTRATION_CALLBACK">INTENT_FROM_GCM_REGISTRATION_CALLBACK</a></code> intent with an 1761 <code><a href="/reference/com/google/android/gcm/GCMConstants.html#EXTRA_UNREGISTERED">EXTRA_UNREGISTERED</a></code> extra. 1762 </p></div> 1763 1764 </div> 1765 </div> 1766 1767 1768 1769 1770 1771 <!-- ========= METHOD DETAIL ======== --> 1772 1773 1774 1775 <!-- ========= END OF CLASS DATA ========= --> 1776 <A NAME="navbar_top"></A> 1777 1778 <div id="footer" class="wrap" > 1779 1780 1781 <div id="copyright"> 1782 1783 Except as noted, this content is licensed under <a 1784 href="http://www.apache.org/licenses/LICENSE-2.0">Apache 2.0</a>. 1785 For details and restrictions, see the <a href="/license.html"> 1786 Content License</a>. 1787 </div> 1788 <div id="build_info"> 1789 1790 <script src="/timestamp.js" type="text/javascript"></script> 1791 <script>document.write(BUILD_TIMESTAMP)</script> 1792 1793 </div> 1794 1795 1796 <div id="footerlinks"> 1797 1798 <p> 1799 <a href="/about/index.html">About Android</a> | 1800 <a href="/legal.html">Legal</a> | 1801 <a href="/support.html">Support</a> 1802 </p> 1803 </div> 1804 1805 </div> <!-- end footer --> 1806 </div> <!-- jd-content --> 1807 1808 </div><!-- end doc-content --> 1809 1810 </div> <!-- end body-content --> 1811 1812 1813 1814 1815 1816 1817 </body> 1818 </html> 1819