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 726 727 <h2>Class Overview</h2> 728 <div style="background-color:#fffdeb;width:100%;margin-bottom:1em;padding:.5em;"><strong>DEPRECATED.</strong> Please use the <a href= 729 "http://developer.android.com/reference/com/google/android/gms/gcm/GoogleCloudMessaging.html"><code>GoogleCloudMessaging</code></a> API instead.</div> 730 <p itemprop="articleBody">Utilities for device registration. 731 <p> 732 <strong>Note:</strong> this class uses a private <code><a href="/reference/android/content/SharedPreferences.html">SharedPreferences</a></code> 733 object to keep track of the registration token. 734 </p> 735 736 737 738 739 740 </div><!-- jd-descr --> 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 <div class="jd-descr"> 758 759 760 <h2>Summary</h2> 761 762 763 764 765 766 767 768 769 770 771 772 773 774 <!-- =========== ENUM CONSTANT SUMMARY =========== --> 775 <table id="constants" class="jd-sumtable"><tr><th colspan="12">Constants</th></tr> 776 777 778 779 <tr class="alt-color api apilevel-" > 780 <td class="jd-typecol">long</td> 781 <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> 782 <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> 783 flag until it is considered expired.</td> 784 </tr> 785 786 787 788 </table> 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 <!-- ========== METHOD SUMMARY =========== --> 806 <table id="pubmethods" class="jd-sumtable"><tr><th colspan="12">Public Methods</th></tr> 807 808 809 810 811 <tr class="alt-color api apilevel-" > 812 <td class="jd-typecol"><nobr> 813 814 815 816 static 817 818 void</nobr> 819 </td> 820 <td class="jd-linkcol" width="100%"><nobr> 821 <span class="sympad"><a href="/reference/com/google/android/gcm/GCMRegistrar.html#checkDevice(android.content.Context)">checkDevice</a></span>(Context context)</nobr> 822 823 <div class="jd-descrdiv">Checks if the device has the proper dependencies installed.</div> 824 825 </td></tr> 826 827 828 829 <tr class=" api apilevel-" > 830 <td class="jd-typecol"><nobr> 831 832 833 834 static 835 836 void</nobr> 837 </td> 838 <td class="jd-linkcol" width="100%"><nobr> 839 <span class="sympad"><a href="/reference/com/google/android/gcm/GCMRegistrar.html#checkManifest(android.content.Context)">checkManifest</a></span>(Context context)</nobr> 840 841 <div class="jd-descrdiv">Checks that the application manifest is properly configured.</div> 842 843 </td></tr> 844 845 846 847 <tr class="alt-color api apilevel-" > 848 <td class="jd-typecol"><nobr> 849 850 851 852 static 853 854 long</nobr> 855 </td> 856 <td class="jd-linkcol" width="100%"><nobr> 857 <span class="sympad"><a href="/reference/com/google/android/gcm/GCMRegistrar.html#getRegisterOnServerLifespan(android.content.Context)">getRegisterOnServerLifespan</a></span>(Context context)</nobr> 858 859 <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> 860 property is valid.</div> 861 862 </td></tr> 863 864 865 866 <tr class=" api apilevel-" > 867 <td class="jd-typecol"><nobr> 868 869 870 871 static 872 873 String</nobr> 874 </td> 875 <td class="jd-linkcol" width="100%"><nobr> 876 <span class="sympad"><a href="/reference/com/google/android/gcm/GCMRegistrar.html#getRegistrationId(android.content.Context)">getRegistrationId</a></span>(Context context)</nobr> 877 878 <div class="jd-descrdiv">Gets the current registration id for application on GCM service.</div> 879 880 </td></tr> 881 882 883 884 <tr class="alt-color api apilevel-" > 885 <td class="jd-typecol"><nobr> 886 887 888 889 static 890 891 boolean</nobr> 892 </td> 893 <td class="jd-linkcol" width="100%"><nobr> 894 <span class="sympad"><a href="/reference/com/google/android/gcm/GCMRegistrar.html#isRegistered(android.content.Context)">isRegistered</a></span>(Context context)</nobr> 895 896 <div class="jd-descrdiv">Checks whether the application was successfully registered on GCM 897 service.</div> 898 899 </td></tr> 900 901 902 903 <tr class=" api apilevel-" > 904 <td class="jd-typecol"><nobr> 905 906 907 908 static 909 910 boolean</nobr> 911 </td> 912 <td class="jd-linkcol" width="100%"><nobr> 913 <span class="sympad"><a href="/reference/com/google/android/gcm/GCMRegistrar.html#isRegisteredOnServer(android.content.Context)">isRegisteredOnServer</a></span>(Context context)</nobr> 914 915 <div class="jd-descrdiv">Checks whether the device was successfully registered in the server side, 916 as set by <code><a href="/reference/com/google/android/gcm/GCMRegistrar.html#setRegisteredOnServer(android.content.Context, boolean)">setRegisteredOnServer(Context, boolean)</a></code>.</div> 917 918 </td></tr> 919 920 921 922 <tr class="alt-color api apilevel-" > 923 <td class="jd-typecol"><nobr> 924 925 synchronized 926 927 static 928 929 void</nobr> 930 </td> 931 <td class="jd-linkcol" width="100%"><nobr> 932 <span class="sympad"><a href="/reference/com/google/android/gcm/GCMRegistrar.html#onDestroy(android.content.Context)">onDestroy</a></span>(Context context)</nobr> 933 934 <div class="jd-descrdiv">Clear internal resources.</div> 935 936 </td></tr> 937 938 939 940 <tr class=" api apilevel-" > 941 <td class="jd-typecol"><nobr> 942 943 944 945 static 946 947 void</nobr> 948 </td> 949 <td class="jd-linkcol" width="100%"><nobr> 950 <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> 951 952 <div class="jd-descrdiv">Initiate messaging registration for the current application.</div> 953 954 </td></tr> 955 956 957 958 <tr class="alt-color api apilevel-" > 959 <td class="jd-typecol"><nobr> 960 961 962 963 static 964 965 void</nobr> 966 </td> 967 <td class="jd-linkcol" width="100%"><nobr> 968 <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> 969 970 <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> 971 flag is valid.</div> 972 973 </td></tr> 974 975 976 977 <tr class=" api apilevel-" > 978 <td class="jd-typecol"><nobr> 979 980 981 982 static 983 984 void</nobr> 985 </td> 986 <td class="jd-linkcol" width="100%"><nobr> 987 <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> 988 989 <div class="jd-descrdiv">Sets whether the device was successfully registered in the server side.</div> 990 991 </td></tr> 992 993 994 995 <tr class="alt-color api apilevel-" > 996 <td class="jd-typecol"><nobr> 997 998 999 1000 static 1001 1002 void</nobr> 1003 </td> 1004 <td class="jd-linkcol" width="100%"><nobr> 1005 <span class="sympad"><a href="/reference/com/google/android/gcm/GCMRegistrar.html#unregister(android.content.Context)">unregister</a></span>(Context context)</nobr> 1006 1007 <div class="jd-descrdiv">Unregister the application.</div> 1008 1009 </td></tr> 1010 1011 1012 1013 </table> 1014 1015 1016 1017 1018 1019 1020 1021 <!-- ========== METHOD SUMMARY =========== --> 1022 <table id="inhmethods" class="jd-sumtable"><tr><th> 1023 <a href="#" class="toggle-all" onclick="return toggleAllInherited(this, null)">[Expand]</a> 1024 <div style="clear:left;">Inherited Methods</div></th></tr> 1025 1026 1027 <tr class="api apilevel-" > 1028 <td colspan="12"> 1029 <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed" 1030 ><img id="inherited-methods-java.lang.Object-trigger" 1031 src="/assets/images/triangle-closed.png" 1032 class="jd-expando-trigger-img" /></a> 1033 From class 1034 1035 java.lang.Object 1036 1037 <div id="inherited-methods-java.lang.Object"> 1038 <div id="inherited-methods-java.lang.Object-list" 1039 class="jd-inheritedlinks"> 1040 </div> 1041 <div id="inherited-methods-java.lang.Object-summary" style="display: none;"> 1042 <table class="jd-sumtable-expando"> 1043 1044 1045 1046 1047 <tr class="alt-color api apilevel-" > 1048 <td class="jd-typecol"><nobr> 1049 1050 1051 1052 1053 1054 Object</nobr> 1055 </td> 1056 <td class="jd-linkcol" width="100%"><nobr> 1057 <span class="sympad">clone</span>()</nobr> 1058 1059 </td></tr> 1060 1061 1062 1063 <tr class=" api apilevel-" > 1064 <td class="jd-typecol"><nobr> 1065 1066 1067 1068 1069 1070 boolean</nobr> 1071 </td> 1072 <td class="jd-linkcol" width="100%"><nobr> 1073 <span class="sympad">equals</span>(Object arg0)</nobr> 1074 1075 </td></tr> 1076 1077 1078 1079 <tr class="alt-color api apilevel-" > 1080 <td class="jd-typecol"><nobr> 1081 1082 1083 1084 1085 1086 void</nobr> 1087 </td> 1088 <td class="jd-linkcol" width="100%"><nobr> 1089 <span class="sympad">finalize</span>()</nobr> 1090 1091 </td></tr> 1092 1093 1094 1095 <tr class=" api apilevel-" > 1096 <td class="jd-typecol"><nobr> 1097 1098 1099 final 1100 1101 1102 Class<?></nobr> 1103 </td> 1104 <td class="jd-linkcol" width="100%"><nobr> 1105 <span class="sympad">getClass</span>()</nobr> 1106 1107 </td></tr> 1108 1109 1110 1111 <tr class="alt-color api apilevel-" > 1112 <td class="jd-typecol"><nobr> 1113 1114 1115 1116 1117 1118 int</nobr> 1119 </td> 1120 <td class="jd-linkcol" width="100%"><nobr> 1121 <span class="sympad">hashCode</span>()</nobr> 1122 1123 </td></tr> 1124 1125 1126 1127 <tr class=" api apilevel-" > 1128 <td class="jd-typecol"><nobr> 1129 1130 1131 final 1132 1133 1134 void</nobr> 1135 </td> 1136 <td class="jd-linkcol" width="100%"><nobr> 1137 <span class="sympad">notify</span>()</nobr> 1138 1139 </td></tr> 1140 1141 1142 1143 <tr class="alt-color api apilevel-" > 1144 <td class="jd-typecol"><nobr> 1145 1146 1147 final 1148 1149 1150 void</nobr> 1151 </td> 1152 <td class="jd-linkcol" width="100%"><nobr> 1153 <span class="sympad">notifyAll</span>()</nobr> 1154 1155 </td></tr> 1156 1157 1158 1159 <tr class=" api apilevel-" > 1160 <td class="jd-typecol"><nobr> 1161 1162 1163 1164 1165 1166 String</nobr> 1167 </td> 1168 <td class="jd-linkcol" width="100%"><nobr> 1169 <span class="sympad">toString</span>()</nobr> 1170 1171 </td></tr> 1172 1173 1174 1175 <tr class="alt-color api apilevel-" > 1176 <td class="jd-typecol"><nobr> 1177 1178 1179 final 1180 1181 1182 void</nobr> 1183 </td> 1184 <td class="jd-linkcol" width="100%"><nobr> 1185 <span class="sympad">wait</span>()</nobr> 1186 1187 </td></tr> 1188 1189 1190 1191 <tr class=" api apilevel-" > 1192 <td class="jd-typecol"><nobr> 1193 1194 1195 final 1196 1197 1198 void</nobr> 1199 </td> 1200 <td class="jd-linkcol" width="100%"><nobr> 1201 <span class="sympad">wait</span>(long arg0, int arg1)</nobr> 1202 1203 </td></tr> 1204 1205 1206 1207 <tr class="alt-color api apilevel-" > 1208 <td class="jd-typecol"><nobr> 1209 1210 1211 final 1212 1213 1214 void</nobr> 1215 </td> 1216 <td class="jd-linkcol" width="100%"><nobr> 1217 <span class="sympad">wait</span>(long arg0)</nobr> 1218 1219 </td></tr> 1220 1221 1222 </table> 1223 </div> 1224 </div> 1225 </td></tr> 1226 1227 1228 </table> 1229 1230 1231 </div><!-- jd-descr (summary) --> 1232 1233 <!-- Details --> 1234 1235 1236 1237 1238 1239 1240 1241 1242 <!-- XML Attributes --> 1243 1244 1245 <!-- Enum Values --> 1246 1247 1248 <!-- Constants --> 1249 1250 1251 <!-- ========= ENUM CONSTANTS DETAIL ======== --> 1252 <h2>Constants</h2> 1253 1254 1255 1256 1257 <A NAME="DEFAULT_ON_SERVER_LIFESPAN_MS"></A> 1258 1259 <div class="jd-details api apilevel-"> 1260 <h4 class="jd-details-title"> 1261 <span class="normal"> 1262 public 1263 static 1264 final 1265 long 1266 </span> 1267 DEFAULT_ON_SERVER_LIFESPAN_MS 1268 </h4> 1269 <div class="api-level"> 1270 1271 1272 1273 1274 </div> 1275 <div class="jd-details-descr"> 1276 1277 <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> 1278 flag until it is considered expired. 1279 </p></div> 1280 1281 1282 <div class="jd-tagdata"> 1283 <span class="jd-tagtitle">Constant Value: </span> 1284 <span> 1285 1286 604800000 1287 (0x00000000240c8400) 1288 1289 </span> 1290 </div> 1291 1292 </div> 1293 </div> 1294 1295 1296 1297 1298 <!-- Fields --> 1299 1300 1301 <!-- Public ctors --> 1302 1303 1304 1305 <!-- ========= CONSTRUCTOR DETAIL ======== --> 1306 <!-- Protected ctors --> 1307 1308 1309 1310 <!-- ========= METHOD DETAIL ======== --> 1311 <!-- Public methdos --> 1312 1313 <h2>Public Methods</h2> 1314 1315 1316 1317 <A NAME="checkDevice(android.content.Context)"></A> 1318 1319 <div class="jd-details api apilevel-"> 1320 <h4 class="jd-details-title"> 1321 <span class="normal"> 1322 public 1323 static 1324 1325 1326 1327 void 1328 </span> 1329 <span class="sympad">checkDevice</span> 1330 <span class="normal">(Context context)</span> 1331 </h4> 1332 <div class="api-level"> 1333 <div></div> 1334 1335 1336 1337 </div> 1338 <div class="jd-details-descr"> 1339 1340 <div class="jd-tagdata jd-tagdescr"><p>Checks if the device has the proper dependencies installed. 1341 <p> 1342 This method should be called when the application starts to verify that 1343 the device supports GCM.</p></div> 1344 <div class="jd-tagdata"> 1345 <h5 class="jd-tagtitle">Parameters</h5> 1346 <table class="jd-tagtable"> 1347 <tr> 1348 <th>context</td> 1349 <td>application context.</td> 1350 </tr> 1351 </table> 1352 </div> 1353 <div class="jd-tagdata"> 1354 <h5 class="jd-tagtitle">Throws</h5> 1355 <table class="jd-tagtable"> 1356 <tr> 1357 <th>UnsupportedOperationException</td> 1358 <td>if the device does not support GCM. 1359 </td> 1360 </tr> 1361 </table> 1362 </div> 1363 1364 </div> 1365 </div> 1366 1367 1368 <A NAME="checkManifest(android.content.Context)"></A> 1369 1370 <div class="jd-details api apilevel-"> 1371 <h4 class="jd-details-title"> 1372 <span class="normal"> 1373 public 1374 static 1375 1376 1377 1378 void 1379 </span> 1380 <span class="sympad">checkManifest</span> 1381 <span class="normal">(Context context)</span> 1382 </h4> 1383 <div class="api-level"> 1384 <div></div> 1385 1386 1387 1388 </div> 1389 <div class="jd-details-descr"> 1390 1391 <div class="jd-tagdata jd-tagdescr"><p>Checks that the application manifest is properly configured. 1392 <p> 1393 A proper configuration means: 1394 <ol> 1395 <li>It creates a custom permission called 1396 <code>PACKAGE_NAME.permission.C2D_MESSAGE</code>. 1397 <li>It defines at least one <code><a href="/reference/android/content/BroadcastReceiver.html">BroadcastReceiver</a></code> with category 1398 <code>PACKAGE_NAME</code>. 1399 <li>The <code><a href="/reference/android/content/BroadcastReceiver.html">BroadcastReceiver</a></code>(s) uses the 1400 <code><a href="/reference/com/google/android/gcm/GCMConstants.html#PERMISSION_GCM_INTENTS">com.google.android.gcm.GCMConstants.PERMISSION_GCM_INTENTS</a></code> 1401 permission. 1402 <li>The <code><a href="/reference/android/content/BroadcastReceiver.html">BroadcastReceiver</a></code>(s) handles the 2 GCM intents 1403 (<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> 1404 and 1405 <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>). 1406 </ol> 1407 ...where <code>PACKAGE_NAME</code> is the application package. 1408 <p> 1409 This method should be used during development time to verify that the 1410 manifest is properly set up, but it doesn't need to be called once the 1411 application is deployed to the users' devices.</p></div> 1412 <div class="jd-tagdata"> 1413 <h5 class="jd-tagtitle">Parameters</h5> 1414 <table class="jd-tagtable"> 1415 <tr> 1416 <th>context</td> 1417 <td>application context.</td> 1418 </tr> 1419 </table> 1420 </div> 1421 <div class="jd-tagdata"> 1422 <h5 class="jd-tagtitle">Throws</h5> 1423 <table class="jd-tagtable"> 1424 <tr> 1425 <th>IllegalStateException</td> 1426 <td>if any of the conditions above is not met. 1427 </td> 1428 </tr> 1429 </table> 1430 </div> 1431 1432 </div> 1433 </div> 1434 1435 1436 <A NAME="getRegisterOnServerLifespan(android.content.Context)"></A> 1437 1438 <div class="jd-details api apilevel-"> 1439 <h4 class="jd-details-title"> 1440 <span class="normal"> 1441 public 1442 static 1443 1444 1445 1446 long 1447 </span> 1448 <span class="sympad">getRegisterOnServerLifespan</span> 1449 <span class="normal">(Context context)</span> 1450 </h4> 1451 <div class="api-level"> 1452 <div></div> 1453 1454 1455 1456 </div> 1457 <div class="jd-details-descr"> 1458 1459 <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> 1460 property is valid.</p></div> 1461 <div class="jd-tagdata"> 1462 <h5 class="jd-tagtitle">Returns</h5> 1463 <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 1464 <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. 1465 </li></ul> 1466 </div> 1467 1468 </div> 1469 </div> 1470 1471 1472 <A NAME="getRegistrationId(android.content.Context)"></A> 1473 1474 <div class="jd-details api apilevel-"> 1475 <h4 class="jd-details-title"> 1476 <span class="normal"> 1477 public 1478 static 1479 1480 1481 1482 String 1483 </span> 1484 <span class="sympad">getRegistrationId</span> 1485 <span class="normal">(Context context)</span> 1486 </h4> 1487 <div class="api-level"> 1488 <div></div> 1489 1490 1491 1492 </div> 1493 <div class="jd-details-descr"> 1494 1495 <div class="jd-tagdata jd-tagdescr"><p>Gets the current registration id for application on GCM service. 1496 <p> 1497 If result is empty, the registration has failed.</p></div> 1498 <div class="jd-tagdata"> 1499 <h5 class="jd-tagtitle">Returns</h5> 1500 <ul class="nolist"><li>registration id, or empty string if the registration is not 1501 complete. 1502 </li></ul> 1503 </div> 1504 1505 </div> 1506 </div> 1507 1508 1509 <A NAME="isRegistered(android.content.Context)"></A> 1510 1511 <div class="jd-details api apilevel-"> 1512 <h4 class="jd-details-title"> 1513 <span class="normal"> 1514 public 1515 static 1516 1517 1518 1519 boolean 1520 </span> 1521 <span class="sympad">isRegistered</span> 1522 <span class="normal">(Context context)</span> 1523 </h4> 1524 <div class="api-level"> 1525 <div></div> 1526 1527 1528 1529 </div> 1530 <div class="jd-details-descr"> 1531 1532 <div class="jd-tagdata jd-tagdescr"><p>Checks whether the application was successfully registered on GCM 1533 service. 1534 </p></div> 1535 1536 </div> 1537 </div> 1538 1539 1540 <A NAME="isRegisteredOnServer(android.content.Context)"></A> 1541 1542 <div class="jd-details api apilevel-"> 1543 <h4 class="jd-details-title"> 1544 <span class="normal"> 1545 public 1546 static 1547 1548 1549 1550 boolean 1551 </span> 1552 <span class="sympad">isRegisteredOnServer</span> 1553 <span class="normal">(Context context)</span> 1554 </h4> 1555 <div class="api-level"> 1556 <div></div> 1557 1558 1559 1560 </div> 1561 <div class="jd-details-descr"> 1562 1563 <div class="jd-tagdata jd-tagdescr"><p>Checks whether the device was successfully registered in the server side, 1564 as set by <code><a href="/reference/com/google/android/gcm/GCMRegistrar.html#setRegisteredOnServer(android.content.Context, boolean)">setRegisteredOnServer(Context, boolean)</a></code>. 1565 1566 <p>To avoid the scenario where the device sends the registration to the 1567 server but the server loses it, this flag has an expiration date, which 1568 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 1569 by <code><a href="/reference/com/google/android/gcm/GCMRegistrar.html#setRegisterOnServerLifespan(android.content.Context, long)">setRegisterOnServerLifespan(Context, long)</a></code>). 1570 </p></div> 1571 1572 </div> 1573 </div> 1574 1575 1576 <A NAME="onDestroy(android.content.Context)"></A> 1577 1578 <div class="jd-details api apilevel-"> 1579 <h4 class="jd-details-title"> 1580 <span class="normal"> 1581 public 1582 static 1583 1584 1585 synchronized 1586 void 1587 </span> 1588 <span class="sympad">onDestroy</span> 1589 <span class="normal">(Context context)</span> 1590 </h4> 1591 <div class="api-level"> 1592 <div></div> 1593 1594 1595 1596 </div> 1597 <div class="jd-details-descr"> 1598 1599 <div class="jd-tagdata jd-tagdescr"><p>Clear internal resources. 1600 1601 <p> 1602 This method should be called by the main activity's <code>onDestroy()</code> 1603 method. 1604 </p></div> 1605 1606 </div> 1607 </div> 1608 1609 1610 <A NAME="register(android.content.Context, java.lang.String...)"></A> 1611 1612 <div class="jd-details api apilevel-"> 1613 <h4 class="jd-details-title"> 1614 <span class="normal"> 1615 public 1616 static 1617 1618 1619 1620 void 1621 </span> 1622 <span class="sympad">register</span> 1623 <span class="normal">(Context context, String... senderIds)</span> 1624 </h4> 1625 <div class="api-level"> 1626 <div></div> 1627 1628 1629 1630 </div> 1631 <div class="jd-details-descr"> 1632 1633 <div class="jd-tagdata jd-tagdescr"><p>Initiate messaging registration for the current application. 1634 <p> 1635 The result will be returned as an 1636 <code><a href="/reference/com/google/android/gcm/GCMConstants.html#INTENT_FROM_GCM_REGISTRATION_CALLBACK">INTENT_FROM_GCM_REGISTRATION_CALLBACK</a></code> intent with 1637 either a <code><a href="/reference/com/google/android/gcm/GCMConstants.html#EXTRA_REGISTRATION_ID">EXTRA_REGISTRATION_ID</a></code> or 1638 <code><a href="/reference/com/google/android/gcm/GCMConstants.html#EXTRA_ERROR">EXTRA_ERROR</a></code>.</p></div> 1639 <div class="jd-tagdata"> 1640 <h5 class="jd-tagtitle">Parameters</h5> 1641 <table class="jd-tagtable"> 1642 <tr> 1643 <th>context</td> 1644 <td>application context.</td> 1645 </tr> 1646 <tr> 1647 <th>senderIds</td> 1648 <td>Google Project ID of the accounts authorized to send 1649 messages to this application.</td> 1650 </tr> 1651 </table> 1652 </div> 1653 <div class="jd-tagdata"> 1654 <h5 class="jd-tagtitle">Throws</h5> 1655 <table class="jd-tagtable"> 1656 <tr> 1657 <th>IllegalStateException</td> 1658 <td>if device does not have all GCM 1659 dependencies installed. 1660 </td> 1661 </tr> 1662 </table> 1663 </div> 1664 1665 </div> 1666 </div> 1667 1668 1669 <A NAME="setRegisterOnServerLifespan(android.content.Context, long)"></A> 1670 1671 <div class="jd-details api apilevel-"> 1672 <h4 class="jd-details-title"> 1673 <span class="normal"> 1674 public 1675 static 1676 1677 1678 1679 void 1680 </span> 1681 <span class="sympad">setRegisterOnServerLifespan</span> 1682 <span class="normal">(Context context, long lifespan)</span> 1683 </h4> 1684 <div class="api-level"> 1685 <div></div> 1686 1687 1688 1689 </div> 1690 <div class="jd-details-descr"> 1691 1692 <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> 1693 flag is valid. 1694 </p></div> 1695 1696 </div> 1697 </div> 1698 1699 1700 <A NAME="setRegisteredOnServer(android.content.Context, boolean)"></A> 1701 1702 <div class="jd-details api apilevel-"> 1703 <h4 class="jd-details-title"> 1704 <span class="normal"> 1705 public 1706 static 1707 1708 1709 1710 void 1711 </span> 1712 <span class="sympad">setRegisteredOnServer</span> 1713 <span class="normal">(Context context, boolean flag)</span> 1714 </h4> 1715 <div class="api-level"> 1716 <div></div> 1717 1718 1719 1720 </div> 1721 <div class="jd-details-descr"> 1722 1723 <div class="jd-tagdata jd-tagdescr"><p>Sets whether the device was successfully registered in the server side. 1724 </p></div> 1725 1726 </div> 1727 </div> 1728 1729 1730 <A NAME="unregister(android.content.Context)"></A> 1731 1732 <div class="jd-details api apilevel-"> 1733 <h4 class="jd-details-title"> 1734 <span class="normal"> 1735 public 1736 static 1737 1738 1739 1740 void 1741 </span> 1742 <span class="sympad">unregister</span> 1743 <span class="normal">(Context context)</span> 1744 </h4> 1745 <div class="api-level"> 1746 <div></div> 1747 1748 1749 1750 </div> 1751 <div class="jd-details-descr"> 1752 1753 <div class="jd-tagdata jd-tagdescr"><p>Unregister the application. 1754 <p> 1755 The result will be returned as an 1756 <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 1757 <code><a href="/reference/com/google/android/gcm/GCMConstants.html#EXTRA_UNREGISTERED">EXTRA_UNREGISTERED</a></code> extra. 1758 </p></div> 1759 1760 </div> 1761 </div> 1762 1763 1764 1765 1766 1767 <!-- ========= METHOD DETAIL ======== --> 1768 1769 1770 1771 <!-- ========= END OF CLASS DATA ========= --> 1772 <A NAME="navbar_top"></A> 1773 1774 <div id="footer" class="wrap" > 1775 1776 1777 <div id="copyright"> 1778 1779 Except as noted, this content is licensed under <a 1780 href="http://www.apache.org/licenses/LICENSE-2.0">Apache 2.0</a>. 1781 For details and restrictions, see the <a href="/license.html"> 1782 Content License</a>. 1783 </div> 1784 <div id="build_info"> 1785 1786 <script src="/timestamp.js" type="text/javascript"></script> 1787 <script>document.write(BUILD_TIMESTAMP)</script> 1788 1789 </div> 1790 1791 1792 <div id="footerlinks"> 1793 1794 <p> 1795 <a href="/about/index.html">About Android</a> | 1796 <a href="/legal.html">Legal</a> | 1797 <a href="/support.html">Support</a> 1798 </p> 1799 </div> 1800 1801 </div> <!-- end footer --> 1802 </div> <!-- jd-content --> 1803 1804 </div><!-- end doc-content --> 1805 1806 </div> <!-- end body-content --> 1807 1808 1809 1810 1811 1812 1813 </body> 1814 </html> 1815