| <!DOCTYPE html> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <html> |
| <head> |
| |
| |
| <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> |
| <meta name="viewport" content="width=device-width" /> |
| |
| <link rel="shortcut icon" type="image/x-icon" href="/favicon.ico" /> |
| <title>Channel | Android Developers</title> |
| |
| <!-- STYLESHEETS --> |
| <link rel="stylesheet" |
| href="//fonts.googleapis.com/css?family=Roboto+Condensed"> |
| <link rel="stylesheet" href="//fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold" |
| title="roboto"> |
| <link href="/assets/css/default.css?v=5" rel="stylesheet" type="text/css"> |
| |
| |
| |
| <!-- JAVASCRIPT --> |
| <script src="//www.google.com/jsapi" type="text/javascript"></script> |
| <script src="/assets/js/android_3p-bundle.js" type="text/javascript"></script> |
| <script type="text/javascript"> |
| var toRoot = "/"; |
| var metaTags = []; |
| var devsite = false; |
| </script> |
| <script src="/assets/js/docs.js?v=3" type="text/javascript"></script> |
| |
| |
| |
| <script> |
| (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ |
| (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), |
| m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) |
| })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); |
| |
| ga('create', 'UA-5831155-1', 'android.com'); |
| ga('create', 'UA-49880327-2', 'android.com', {'name': 'universal'}); // New tracker); |
| ga('send', 'pageview'); |
| ga('universal.send', 'pageview'); // Send page view for new tracker. |
| </script> |
| |
| </head> |
| |
| <body class="gc-documentation google |
| develop reference" itemscope itemtype="http://schema.org/Article"> |
| <div id="doc-api-level" class="" style="display:none"></div> |
| <a name="top"></a> |
| |
| |
| <a name="top"></a> |
| |
| <!-- dialog to prompt lang pref change when loaded from hardcoded URL |
| <div id="langMessage" style="display:none"> |
| <div> |
| <div class="lang en"> |
| <p>You requested a page in English, would you like to proceed with this language setting?</p> |
| </div> |
| <div class="lang es"> |
| <p>You requested a page in Spanish (Español), would you like to proceed with this language setting?</p> |
| </div> |
| <div class="lang ja"> |
| <p>You requested a page in Japanese (日本語), would you like to proceed with this language setting?</p> |
| </div> |
| <div class="lang ko"> |
| <p>You requested a page in Korean (한국어), would you like to proceed with this language setting?</p> |
| </div> |
| <div class="lang ru"> |
| <p>You requested a page in Russian (Русский), would you like to proceed with this language setting?</p> |
| </div> |
| <div class="lang zh-cn"> |
| <p>You requested a page in Simplified Chinese (简体中文), would you like to proceed with this language setting?</p> |
| </div> |
| <div class="lang zh-tw"> |
| <p>You requested a page in Traditional Chinese (繁體中文), would you like to proceed with this language setting?</p> |
| </div> |
| <a href="#" class="button yes" onclick="return false;"> |
| <span class="lang en">Yes</span> |
| <span class="lang es">Sí</span> |
| <span class="lang ja">Yes</span> |
| <span class="lang ko">Yes</span> |
| <span class="lang ru">Yes</span> |
| <span class="lang zh-cn">是的</span> |
| <span class="lang zh-tw">没有</span> |
| </a> |
| <a href="#" class="button" onclick="$('#langMessage').hide();return false;"> |
| <span class="lang en">No</span> |
| <span class="lang es">No</span> |
| <span class="lang ja">No</span> |
| <span class="lang ko">No</span> |
| <span class="lang ru">No</span> |
| <span class="lang zh-cn">没有</span> |
| <span class="lang zh-tw">没有</span> |
| </a> |
| </div> |
| </div> --> |
| |
| |
| <!-- Header --> |
| <div id="header-wrapper"> |
| <div id="header"> |
| |
| |
| |
| |
| <div class="wrap" id="header-wrap"> |
| <div class="col-3 logo"> |
| <a href="/index.html"> |
| <img src="/assets/images/dac_logo.png" |
| srcset="/assets/images/dac_logo@2x.png 2x" |
| width="123" height="25" alt="Android Developers" /> |
| </a> |
| <div class="btn-quicknav" id="btn-quicknav"> |
| <a href="#" class="arrow-inactive">Quicknav</a> |
| <a href="#" class="arrow-active">Quicknav</a> |
| </div> |
| </div> |
| <ul class="nav-x col-9"> |
| <li class="design"> |
| <a href="/design/index.html" |
| zh-tw-lang="設計" |
| zh-cn-lang="设计" |
| ru-lang="Проектирование" |
| ko-lang="디자인" |
| ja-lang="設計" |
| es-lang="Diseñar" |
| >Design</a></li> |
| <li class="develop"><a href="/develop/index.html" |
| zh-tw-lang="開發" |
| zh-cn-lang="开发" |
| ru-lang="Разработка" |
| ko-lang="개발" |
| ja-lang="開発" |
| es-lang="Desarrollar" |
| >Develop</a></li> |
| <li class="distribute last"><a href="/distribute/index.html" |
| zh-tw-lang="發佈" |
| zh-cn-lang="分发" |
| ru-lang="Распространение" |
| ko-lang="배포" |
| ja-lang="配布" |
| es-lang="Distribuir" |
| >Distribute</a></li> |
| </ul> |
| |
| |
| |
| |
| <div class="menu-container"> |
| <div class="moremenu"> |
| <div id="more-btn"></div> |
| </div> |
| <div class="morehover" id="moremenu"> |
| <div class="top"></div> |
| <div class="mid"> |
| <div class="header">Links</div> |
| <ul> |
| <li><a href="https://play.google.com/apps/publish/" target="_googleplay">Google Play Developer Console</a></li> |
| <li><a href="http://android-developers.blogspot.com/">Android Developers Blog</a></li> |
| <li><a href="/about/index.html">About Android</a></li> |
| </ul> |
| <div class="header">Android Sites</div> |
| <ul> |
| <li><a href="http://www.android.com">Android.com</a></li> |
| <li class="active"><a>Android Developers</a></li> |
| <li><a href="http://source.android.com">Android Open Source Project</a></li> |
| </ul> |
| |
| |
| |
| <div class="header">Language</div> |
| <div id="language" class="locales"> |
| <select name="language" onChange="changeLangPref(this.value, true)"> |
| <option value="en">English</option> |
| <option value="es">Español</option> |
| <option value="ja">日本語</option> |
| <option value="ko">한국어</option> |
| <option value="ru">Русский</option> |
| <option value="zh-cn">中文(简体)</option> |
| <option value="zh-tw">中文(繁體)</option> |
| </select> |
| </div> |
| <script type="text/javascript"> |
| <!-- |
| loadLangPref(); |
| //--> |
| </script> |
| |
| |
| <br class="clearfix" /> |
| </div><!-- end 'mid' --> |
| <div class="bottom"></div> |
| </div><!-- end 'moremenu' --> |
| |
| <div class="search" id="search-container"> |
| <div class="search-inner"> |
| <div id="search-btn"></div> |
| <div class="left"></div> |
| <form onsubmit="return submit_search()"> |
| <input id="search_autocomplete" type="text" value="" autocomplete="off" name="q" |
| onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)" |
| onkeydown="return search_changed(event, true, '/')" |
| onkeyup="return search_changed(event, false, '/')" /> |
| </form> |
| <div class="right"></div> |
| <a class="close hide">close</a> |
| <div class="left"></div> |
| <div class="right"></div> |
| </div><!-- end search-inner --> |
| </div><!-- end search-container --> |
| |
| <div class="search_filtered_wrapper reference"> |
| <div class="suggest-card reference no-display"> |
| <ul class="search_filtered"> |
| </ul> |
| </div> |
| </div> |
| |
| <div class="search_filtered_wrapper docs"> |
| <div class="suggest-card dummy no-display"> </div> |
| <div class="suggest-card develop no-display"> |
| <ul class="search_filtered"> |
| </ul> |
| <div class="child-card guides no-display"> |
| </div> |
| <div class="child-card training no-display"> |
| </div> |
| <div class="child-card samples no-display"> |
| </div> |
| </div> |
| <div class="suggest-card design no-display"> |
| <ul class="search_filtered"> |
| </ul> |
| </div> |
| <div class="suggest-card distribute no-display"> |
| <ul class="search_filtered"> |
| </ul> |
| </div> |
| </div> |
| </div><!-- end menu-container (search and menu widget) --> |
| |
| |
| |
| <!-- Expanded quicknav --> |
| <div id="quicknav" class="col-13"> |
| <ul> |
| <li class="about"> |
| <ul> |
| <li><a href="/about/index.html">About</a></li> |
| <li><a href="/wear/index.html">Wear</a></li> |
| <li><a href="/tv/index.html">TV</a></li> |
| <li><a href="/auto/index.html">Auto</a></li> |
| </ul> |
| </li> |
| <li class="design"> |
| <ul> |
| <li><a href="/design/index.html">Get Started</a></li> |
| <li><a href="/design/devices.html">Devices</a></li> |
| <li><a href="/design/style/index.html">Style</a></li> |
| <li><a href="/design/patterns/index.html">Patterns</a></li> |
| <li><a href="/design/building-blocks/index.html">Building Blocks</a></li> |
| <li><a href="/design/downloads/index.html">Downloads</a></li> |
| <li><a href="/design/videos/index.html">Videos</a></li> |
| </ul> |
| </li> |
| <li class="develop"> |
| <ul> |
| <li><a href="/training/index.html" |
| zh-tw-lang="訓練課程" |
| zh-cn-lang="培训" |
| ru-lang="Курсы" |
| ko-lang="교육" |
| ja-lang="トレーニング" |
| es-lang="Capacitación" |
| >Training</a></li> |
| <li><a href="/guide/index.html" |
| zh-tw-lang="API 指南" |
| zh-cn-lang="API 指南" |
| ru-lang="Руководства по API" |
| ko-lang="API 가이드" |
| ja-lang="API ガイド" |
| es-lang="Guías de la API" |
| >API Guides</a></li> |
| <li><a href="/reference/packages.html" |
| zh-tw-lang="參考資源" |
| zh-cn-lang="参考" |
| ru-lang="Справочник" |
| ko-lang="참조문서" |
| ja-lang="リファレンス" |
| es-lang="Referencia" |
| >Reference</a></li> |
| <li><a href="/sdk/index.html" |
| zh-tw-lang="相關工具" |
| zh-cn-lang="工具" |
| ru-lang="Инструменты" |
| ko-lang="도구" |
| ja-lang="ツール" |
| es-lang="Herramientas" |
| >Tools</a> |
| </li> |
| <li><a href="/google/index.html">Google Services</a> |
| </li> |
| |
| <li><a href="/samples/index.html">Samples</a> |
| </li> |
| |
| </ul> |
| </li> |
| <li class="distribute last"> |
| <ul> |
| <li><a href="/distribute/googleplay/index.html">Google Play</a></li> |
| <li><a href="/distribute/essentials/index.html">Essentials</a></li> |
| <li><a href="/distribute/users/index.html">Get Users</a></li> |
| <li><a href="/distribute/engage/index.html">Engage & Retain</a></li> |
| <li><a href="/distribute/monetize/index.html">Monetize</a></li> |
| <li><a href="/distribute/analyze/index.html">Analyze</a></li> |
| <li><a href="/distribute/tools/index.html">Tools & Reference</a></li> |
| <li><a href="/distribute/stories/index.html">Developer Stories</a></li> |
| </ul> |
| </li> |
| </ul> |
| </div><!-- /Expanded quicknav --> |
| </div><!-- end header-wrap.wrap --> |
| </div><!-- end header --> |
| |
| |
| <!-- Secondary x-nav --> |
| <div id="nav-x"> |
| <div class="wrap" style="position:relative;z-index:1"> |
| |
| |
| |
| |
| |
| <ul class="nav-x col-9 develop" style="width:100%"> |
| <li class="training"><a href="/training/index.html" |
| zh-tw-lang="訓練課程" |
| zh-cn-lang="培训" |
| ru-lang="Курсы" |
| ko-lang="교육" |
| ja-lang="トレーニング" |
| es-lang="Capacitación" |
| >Training</a></li> |
| <li class="guide"><a href="/guide/index.html" |
| zh-tw-lang="API 指南" |
| zh-cn-lang="API 指南" |
| ru-lang="Руководства по API" |
| ko-lang="API 가이드" |
| ja-lang="API ガイド" |
| es-lang="Guías de la API" |
| >API Guides</a></li> |
| <li class="reference"><a href="/reference/packages.html" |
| zh-tw-lang="參考資源" |
| zh-cn-lang="参考" |
| ru-lang="Справочник" |
| ko-lang="참조문서" |
| ja-lang="リファレンス" |
| es-lang="Referencia" |
| >Reference</a></li> |
| <li class="tools"><a href="/sdk/index.html" |
| zh-tw-lang="相關工具" |
| zh-cn-lang="工具" |
| ru-lang="Инструменты" |
| ko-lang="도구" |
| ja-lang="ツール" |
| es-lang="Herramientas" |
| >Tools</a></li> |
| <li class="google"><a href="/google/index.html" |
| >Google Services</a> |
| </li> |
| |
| <li class="samples"><a href="/samples/index.html" |
| >Samples</a> |
| </li> |
| |
| </ul> |
| </div> |
| </div> |
| <!-- /Sendondary x-nav DEVELOP --> |
| |
| |
| |
| <div id="searchResults" class="wrap" style="display:none;"> |
| <h2 id="searchTitle">Results</h2> |
| <div id="leftSearchControl" class="search-control">Loading...</div> |
| </div> |
| </div> <!--end header-wrapper --> |
| |
| <div id="sticky-header"> |
| <div> |
| <a class="logo" href="#top"></a> |
| <a class="top" href="#top"></a> |
| <ul class="breadcrumb"> |
| |
| <li class="current">Channel</li> |
| </ul> |
| </div> |
| </div> |
| |
| |
| |
| |
| |
| |
| <div class="wrap clearfix" id="body-content"> |
| <div class="col-4" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement"> |
| <div id="devdoc-nav" class="scroll-pane"> |
| |
| |
| |
| <ul id="nav"> |
| |
| <li class="nav-section"> |
| <div class="nav-section-header empty"><a href="/google/index.html"> |
| <span class="en">Overview</span> |
| </a></div> |
| </li> |
| |
| <li class="nav-section"> |
| <div class="nav-section-header empty"><a href="/google/play-services/games.html"> |
| <span class="en">Games</span> |
| </a></div> |
| </li> |
| <li class="nav-section"> |
| <div class="nav-section-header empty"><a href="/google/play-services/location.html"> |
| <span class="en">Location</span> |
| </a></div> |
| </li> |
| <li class="nav-section"> |
| <div class="nav-section-header empty"><a href="/google/play-services/plus.html"> |
| <span class="en">Google+</span> |
| </a></div> |
| </li> |
| <li class="nav-section"> |
| <div class="nav-section-header empty"><a href="/google/play-services/maps.html"> |
| <span class="en">Maps</span> |
| </a></div> |
| </li> |
| <li class="nav-section"> |
| <div class="nav-section-header empty"><a href="/google/play-services/drive.html"> |
| <span class="en">Drive</span> |
| </a></div> |
| </li> |
| <li class="nav-section"> |
| <div class="nav-section-header empty"><a href="/google/play-services/cast.html"> |
| <span class="en">Cast</span> |
| </a></div> |
| </li> |
| <li class="nav-section"> |
| <div class="nav-section-header"><a href="/google/play-services/ads.html"> |
| <span class="en">Ads</span></a> |
| </div> |
| <ul> |
| <li><a href="/google/play-services/id.html"> |
| <span class="en">Advertising ID</span></a> |
| </li> |
| </ul> |
| </li> |
| <li class="nav-section"> |
| <div class="nav-section-header empty"><a href="/google/play-services/wallet.html"> |
| <span class="en">Wallet</span> |
| </a></div> |
| </li> |
| <li class="nav-section"> |
| <div class="nav-section-header"><a href="/google/play/safetynet/index.html"> |
| <span class="en">SafetyNet</span> |
| </a></div> |
| <ul> |
| <li> |
| <a href="/google/play/safetynet/start.html"> |
| <span class="en">Getting Started</span> |
| </a> |
| </li> |
| </ul> |
| </li> |
| |
| <li class="nav-section"> |
| <div class="nav-section-header"><a href="/google/play-services/index.html"> |
| <span class="en">Google Play Services</span></a> |
| </div> |
| <ul> |
| <li><a href="/google/play-services/setup.html"> |
| <span class="en">Setting Up Google Play Services</span></a> |
| </li> |
| <li class="nav-section"> |
| <div class="nav-section-header"><a href="/google/auth/api-client.html"> |
| <span class="en">Accessing Google APIs</span></a> |
| </div> |
| <ul> |
| <li> |
| <a href="/google/auth/http-auth.html"> |
| <span class="en">Authorizing with Google for REST APIs</span> |
| </a> |
| </li> |
| </ul> |
| </li> |
| <li id="gms-tree-list" class="nav-section"> |
| <div class="nav-section-header"> |
| <a href="/reference/gms-packages.html"> |
| <span class="en">Reference</span> |
| </a> |
| <div> |
| </li> |
| </ul> |
| </li> |
| |
| |
| <li class="nav-section"> |
| <div class="nav-section-header"><a href="/google/play/billing/index.html" zh-cn-lang="应用内结算"> |
| <span class="en">Google Play In-app Billing</span></a> |
| </div> |
| <ul> |
| <li><a href="/google/play/billing/billing_overview.html" zh-cn-lang="应用内结算概述"> |
| <span class="en">Overview</span></a> |
| </li> |
| <li class="nav-section"><div class="nav-section-header"><a href="/google/play/billing/api.html" zh-cn-lang="应用内结算 API"> |
| <span class="en">Version 3 API</span></a></div> |
| <ul> |
| <li><a href="/google/play/billing/billing_integrate.html"> |
| <span class="en">Implementing the API</span></a></li> |
| <li><a href="/google/play/billing/billing_reference.html"> |
| <span class="en">Reference</span></a></li> |
| </ul> |
| </li> |
| <li class="nav-section"><div class="nav-section-header"><a href="/google/play/billing/v2/api.html"> |
| <span class="en">Version 2 API</span></a></div> |
| <ul> |
| <li><a href="/google/play/billing/v2/billing_integrate.html"> |
| <span class="en">Implementing the API</span></a></li> |
| <li><a href="/google/play/billing/v2/billing_subscriptions.html"> |
| <span class="en">Subscriptions</span></a></li> |
| <li><a href="/google/play/billing/v2/billing_reference.html"> |
| <span class="en">Reference</span></a></li> |
| </ul> |
| </li> |
| <li><a href="/google/play/billing/billing_subscriptions.html"> |
| <span class="en">Subscriptions</span></a> |
| </li> |
| <li><a href="/google/play/billing/billing_best_practices.html" zh-cn-lang="安全性和设计"> |
| <span class="en">Security and Design</span></a> |
| </li> |
| <li><a href="/google/play/billing/billing_testing.html" zh-cn-lang="测试应用内结算"> |
| <span class="en">Testing In-app Billing</span></a> |
| </li> |
| <li><a href="/google/play/billing/billing_admin.html" zh-cn-lang="管理应用内结算"> |
| <span class="en">Administering In-app Billing</span></a> |
| </li> |
| <li><a href="/google/play/billing/versions.html"> |
| <span class="en">Version Notes</span></a> |
| </li> |
| </ul> |
| </li> |
| |
| |
| |
| <li class="nav-section"> |
| <div class="nav-section-header"><a href="/google/gcm/index.html"> |
| <span class="en">Google Cloud Messaging</span></a> |
| </div> |
| <ul> |
| <li><a href="/google/gcm/gcm.html"> |
| <span class="en">Overview</span></a> |
| </li> |
| <li><a href="/google/gcm/gs.html"> |
| <span class="en">Getting Started</span></a> |
| </li> |
| <li><a href="/google/gcm/client.html"> |
| <span class="en">Implementing GCM Client</span></a> |
| </li> |
| <li class="nav-section"><div class="nav-section-header"><a href="/google/gcm/server.html"> |
| <span class="en">Implementing GCM Server</span></a></div> |
| <ul> |
| <li><a href="/google/gcm/ccs.html"> |
| <span class="en">CCS (XMPP)</span></a></li> |
| <li><a href="/google/gcm/http.html"> |
| <span class="en">HTTP</span></a></li> |
| </ul> |
| </li> |
| <li><a href="/google/gcm/server-ref.html"> |
| <span class="en">Server Reference</span></a> |
| </li> |
| <li><a href="/google/gcm/notifications.html"> |
| <span class="en">User Notifications</span></a> |
| </li> |
| <li><a href="/google/gcm/c2dm.html"> |
| <span class="en">Migration</span></a> |
| </li> |
| </ul> |
| </li> |
| |
| <li class="nav-section"> |
| <div class="nav-section-header empty"><a href="/google/gcs/index.html"> |
| <span class="en">Google Cloud Save</span></a> |
| </div> |
| </li> |
| |
| <li class="nav-section"> |
| <div class="nav-section-header"><a href="/google/play/dist.html"> |
| <span class="en">Google Play Distribution</span></a> |
| </div> |
| <ul> |
| <li><a href="/google/play/filters.html"> |
| <span class="en">Filters on Google Play</span></a> |
| </li> |
| <li><a href="/google/play/billing/gp-purchase-status-api.html"> |
| <span class="en">Google Play Developer API</span></a> |
| </li> |
| <li><a href="/google/play/publishing/multiple-apks.html"> |
| <span class="en">Multiple APK Support</span></a> |
| </li> |
| <li><a href="/google/play/expansion-files.html"> |
| <span class="en">APK Expansion Files</span></a> |
| </li> |
| <li class="nav-section"> |
| <div class="nav-section-header"><a href="/google/play/licensing/index.html"> |
| <span class="en">Application Licensing</span></a> |
| </div> |
| <ul> |
| <li><a href="/google/play/licensing/overview.html"> |
| <span class="en">Licensing Overview</span></a> |
| </li> |
| <li><a href="/google/play/licensing/setting-up.html"> |
| <span class="en">Setting Up for Licensing</span></a> |
| </li> |
| <li><a href="/google/play/licensing/adding-licensing.html"> |
| <span class="en">Adding Licensing to Your App</span></a> |
| </li> |
| <li><a href="/google/play/licensing/licensing-reference.html"> |
| <span class="en">Licensing Reference</span></a> |
| </li> |
| </ul> |
| </li> |
| |
| <li class="nav-section"> |
| <div class="nav-section-header"><a href="/google/backup/index.html"> |
| Android Backup Service</a> |
| </div> |
| <ul> |
| <li><a href="/google/backup/signup.html"> |
| Register</a> |
| </li> |
| </ul> |
| </li> |
| |
| </ul> |
| |
| </li> |
| |
| |
| |
| </ul> |
| |
| <script type="text/javascript"> |
| <!-- |
| buildToggleLists(); |
| changeNavLang(getLangPref()); |
| //--> |
| </script> |
| |
| |
| |
| |
| </div> |
| <script type="text/javascript"> |
| showGoogleRefTree(); |
| |
| </script> |
| </div> <!-- end side-nav --> |
| <script> |
| $(document).ready(function() { |
| scrollIntoView("devdoc-nav"); |
| }); |
| </script> |
| |
| |
| |
| |
| |
| |
| <div class="col-12" id="doc-col"> |
| |
| <div id="api-info-block"> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <div class="sum-details-links"> |
| |
| Summary: |
| |
| <a href="#nestedclasses">Nested Classes</a> |
| |
| |
| |
| |
| |
| |
| |
| | <a href="#inhconstants">Inherited Constants</a> |
| |
| |
| |
| |
| |
| |
| |
| | <a href="#pubmethods">Methods</a> |
| |
| |
| |
| |
| | <a href="#inhmethods">Inherited Methods</a> |
| |
| | <a href="#" onclick="return toggleAllClassInherited()" id="toggleAllClassInherited">[Expand All]</a> |
| |
| </div><!-- end sum-details-links --> |
| <div class="api-level"> |
| |
| |
| |
| |
| </div> |
| </div><!-- end api-info-block --> |
| |
| |
| <!-- ======== START OF CLASS DATA ======== --> |
| |
| <div id="jd-header"> |
| public |
| |
| |
| |
| interface |
| <h1 itemprop="name">Channel</h1> |
| |
| |
| |
| |
| |
| implements |
| |
| Parcelable |
| |
| |
| |
| |
| |
| |
| |
| |
| </div><!-- end header --> |
| |
| <div id="naMessage"></div> |
| |
| <div id="jd-content" class="api apilevel-"> |
| <table class="jd-inheritance-table"> |
| |
| |
| <tr> |
| |
| <td colspan="1" class="jd-inheritance-class-cell">com.google.android.gms.wearable.Channel</td> |
| </tr> |
| |
| |
| </table> |
| |
| |
| |
| |
| |
| |
| |
| <div class="jd-descr"> |
| |
| |
| <h2>Class Overview</h2> |
| <p itemprop="articleBody">A channel created through <code><a href="/reference/com/google/android/gms/wearable/ChannelApi.html#openChannel(com.google.android.gms.common.api.GoogleApiClient, java.lang.String, java.lang.String)">openChannel(GoogleApiClient, String, String)</a></code>. |
| |
| <p>The implementation of this interface is parcelable and immutable, and implements |
| reasonable <code><a href="/reference/java/lang/Object.html#equals(java.lang.Object)">equals(Object)</a></code> and <code><a href="/reference/java/lang/Object.html#hashCode()">hashCode()</a></code> methods, so |
| can be used in collections. |
| </p> |
| |
| |
| |
| |
| |
| </div><!-- jd-descr --> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <div class="jd-descr"> |
| |
| |
| <h2>Summary</h2> |
| |
| |
| |
| <!-- ======== NESTED CLASS SUMMARY ======== --> |
| <table id="nestedclasses" class="jd-sumtable"><tr><th colspan="12">Nested Classes</th></tr> |
| |
| |
| |
| <tr class="alt-color api apilevel-" > |
| <td class="jd-typecol"><nobr> |
| |
| |
| |
| |
| interface</nobr></td> |
| <td class="jd-linkcol"><a href="/reference/com/google/android/gms/wearable/Channel.GetInputStreamResult.html">Channel.GetInputStreamResult</a></td> |
| <td class="jd-descrcol" width="100%"> |
| Result of <code><a href="/reference/com/google/android/gms/wearable/Channel.html#getInputStream(com.google.android.gms.common.api.GoogleApiClient)">getInputStream(GoogleApiClient)</a></code>. |
| |
| |
| |
| </td> |
| </tr> |
| |
| |
| <tr class=" api apilevel-" > |
| <td class="jd-typecol"><nobr> |
| |
| |
| |
| |
| interface</nobr></td> |
| <td class="jd-linkcol"><a href="/reference/com/google/android/gms/wearable/Channel.GetOutputStreamResult.html">Channel.GetOutputStreamResult</a></td> |
| <td class="jd-descrcol" width="100%"> |
| Result of <code><a href="/reference/com/google/android/gms/wearable/Channel.html#getOutputStream(com.google.android.gms.common.api.GoogleApiClient)">getOutputStream(GoogleApiClient)</a></code>. |
| |
| |
| |
| </td> |
| </tr> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <!-- =========== ENUM CONSTANT SUMMARY =========== --> |
| <table id="inhconstants" class="jd-sumtable"><tr><th> |
| <a href="#" class="toggle-all" onclick="return toggleAllInherited(this, null)">[Expand]</a> |
| <div style="clear:left;">Inherited Constants</div></th></tr> |
| |
| |
| <tr class="api apilevel-" > |
| <td colspan="12"> |
| |
| <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.os.Parcelable" class="jd-expando-trigger closed" |
| ><img id="inherited-constants-android.os.Parcelable-trigger" |
| src="/assets/images/triangle-closed.png" |
| class="jd-expando-trigger-img" /></a>From interface |
| android.os.Parcelable |
| <div id="inherited-constants-android.os.Parcelable"> |
| <div id="inherited-constants-android.os.Parcelable-list" |
| class="jd-inheritedlinks"> |
| </div> |
| <div id="inherited-constants-android.os.Parcelable-summary" style="display: none;"> |
| <table class="jd-sumtable-expando"> |
| |
| |
| |
| <tr class="alt-color api apilevel-" > |
| <td class="jd-typecol">int</td> |
| <td class="jd-linkcol">CONTENTS_FILE_DESCRIPTOR</td> |
| <td class="jd-descrcol" width="100%"> |
| |
| |
| |
| |
| </td> |
| </tr> |
| |
| |
| <tr class=" api apilevel-" > |
| <td class="jd-typecol">int</td> |
| <td class="jd-linkcol">PARCELABLE_WRITE_RETURN_VALUE</td> |
| <td class="jd-descrcol" width="100%"> |
| |
| |
| |
| |
| </td> |
| </tr> |
| |
| |
| </table> |
| </div> |
| </div> |
| </td></tr> |
| |
| |
| </table> |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| <!-- ========== METHOD SUMMARY =========== --> |
| <table id="pubmethods" class="jd-sumtable"><tr><th colspan="12">Public Methods</th></tr> |
| |
| |
| |
| |
| <tr class="alt-color api apilevel-" > |
| <td class="jd-typecol"><nobr> |
| abstract |
| |
| |
| |
| |
| <a href="/reference/com/google/android/gms/common/api/PendingResult.html">PendingResult</a><<a href="/reference/com/google/android/gms/common/api/Status.html">Status</a>></nobr> |
| </td> |
| <td class="jd-linkcol" width="100%"><nobr> |
| <span class="sympad"><a href="/reference/com/google/android/gms/wearable/Channel.html#addListener(com.google.android.gms.common.api.GoogleApiClient, com.google.android.gms.wearable.ChannelApi.ChannelListener)">addListener</a></span>(<a href="/reference/com/google/android/gms/common/api/GoogleApiClient.html">GoogleApiClient</a> client, <a href="/reference/com/google/android/gms/wearable/ChannelApi.ChannelListener.html">ChannelApi.ChannelListener</a> listener)</nobr> |
| |
| <div class="jd-descrdiv"> |
| Registers a listener to be notified of events for this channel. |
| |
| |
| |
| </div> |
| |
| </td></tr> |
| |
| |
| |
| <tr class=" api apilevel-" > |
| <td class="jd-typecol"><nobr> |
| abstract |
| |
| |
| |
| |
| <a href="/reference/com/google/android/gms/common/api/PendingResult.html">PendingResult</a><<a href="/reference/com/google/android/gms/common/api/Status.html">Status</a>></nobr> |
| </td> |
| <td class="jd-linkcol" width="100%"><nobr> |
| <span class="sympad"><a href="/reference/com/google/android/gms/wearable/Channel.html#close(com.google.android.gms.common.api.GoogleApiClient)">close</a></span>(<a href="/reference/com/google/android/gms/common/api/GoogleApiClient.html">GoogleApiClient</a> client)</nobr> |
| |
| <div class="jd-descrdiv"> |
| Closes this channel, making any future operations on it invalid. |
| |
| |
| |
| </div> |
| |
| </td></tr> |
| |
| |
| |
| <tr class="alt-color api apilevel-" > |
| <td class="jd-typecol"><nobr> |
| abstract |
| |
| |
| |
| |
| <a href="/reference/com/google/android/gms/common/api/PendingResult.html">PendingResult</a><<a href="/reference/com/google/android/gms/common/api/Status.html">Status</a>></nobr> |
| </td> |
| <td class="jd-linkcol" width="100%"><nobr> |
| <span class="sympad"><a href="/reference/com/google/android/gms/wearable/Channel.html#close(com.google.android.gms.common.api.GoogleApiClient, int)">close</a></span>(<a href="/reference/com/google/android/gms/common/api/GoogleApiClient.html">GoogleApiClient</a> client, int errorCode)</nobr> |
| |
| <div class="jd-descrdiv"> |
| Closes this channel, passing an application-defined error code to the remote node. |
| |
| |
| |
| </div> |
| |
| </td></tr> |
| |
| |
| |
| <tr class=" api apilevel-" > |
| <td class="jd-typecol"><nobr> |
| abstract |
| |
| |
| |
| |
| <a href="/reference/com/google/android/gms/common/api/PendingResult.html">PendingResult</a><<a href="/reference/com/google/android/gms/wearable/Channel.GetInputStreamResult.html">Channel.GetInputStreamResult</a>></nobr> |
| </td> |
| <td class="jd-linkcol" width="100%"><nobr> |
| <span class="sympad"><a href="/reference/com/google/android/gms/wearable/Channel.html#getInputStream(com.google.android.gms.common.api.GoogleApiClient)">getInputStream</a></span>(<a href="/reference/com/google/android/gms/common/api/GoogleApiClient.html">GoogleApiClient</a> client)</nobr> |
| |
| <div class="jd-descrdiv"> |
| Opens the input side of the channel to receive data from the remote node. |
| |
| |
| |
| </div> |
| |
| </td></tr> |
| |
| |
| |
| <tr class="alt-color api apilevel-" > |
| <td class="jd-typecol"><nobr> |
| abstract |
| |
| |
| |
| |
| String</nobr> |
| </td> |
| <td class="jd-linkcol" width="100%"><nobr> |
| <span class="sympad"><a href="/reference/com/google/android/gms/wearable/Channel.html#getNodeId()">getNodeId</a></span>()</nobr> |
| |
| <div class="jd-descrdiv"> |
| Returns the node ID of the node on the other side of the channel. |
| |
| |
| |
| </div> |
| |
| </td></tr> |
| |
| |
| |
| <tr class=" api apilevel-" > |
| <td class="jd-typecol"><nobr> |
| abstract |
| |
| |
| |
| |
| <a href="/reference/com/google/android/gms/common/api/PendingResult.html">PendingResult</a><<a href="/reference/com/google/android/gms/wearable/Channel.GetOutputStreamResult.html">Channel.GetOutputStreamResult</a>></nobr> |
| </td> |
| <td class="jd-linkcol" width="100%"><nobr> |
| <span class="sympad"><a href="/reference/com/google/android/gms/wearable/Channel.html#getOutputStream(com.google.android.gms.common.api.GoogleApiClient)">getOutputStream</a></span>(<a href="/reference/com/google/android/gms/common/api/GoogleApiClient.html">GoogleApiClient</a> client)</nobr> |
| |
| <div class="jd-descrdiv"> |
| Opens the output side of the channel to send data to the remote node. |
| |
| |
| |
| </div> |
| |
| </td></tr> |
| |
| |
| |
| <tr class="alt-color api apilevel-" > |
| <td class="jd-typecol"><nobr> |
| abstract |
| |
| |
| |
| |
| String</nobr> |
| </td> |
| <td class="jd-linkcol" width="100%"><nobr> |
| <span class="sympad"><a href="/reference/com/google/android/gms/wearable/Channel.html#getPath()">getPath</a></span>()</nobr> |
| |
| <div class="jd-descrdiv"> |
| Returns the path that was used to open the channel. |
| |
| |
| |
| </div> |
| |
| </td></tr> |
| |
| |
| |
| <tr class=" api apilevel-" > |
| <td class="jd-typecol"><nobr> |
| abstract |
| |
| |
| |
| |
| <a href="/reference/com/google/android/gms/common/api/PendingResult.html">PendingResult</a><<a href="/reference/com/google/android/gms/common/api/Status.html">Status</a>></nobr> |
| </td> |
| <td class="jd-linkcol" width="100%"><nobr> |
| <span class="sympad"><a href="/reference/com/google/android/gms/wearable/Channel.html#receiveFile(com.google.android.gms.common.api.GoogleApiClient, android.net.Uri, boolean)">receiveFile</a></span>(<a href="/reference/com/google/android/gms/common/api/GoogleApiClient.html">GoogleApiClient</a> client, Uri uri, boolean append)</nobr> |
| |
| <div class="jd-descrdiv"> |
| Reads input from this channel into a file. |
| |
| |
| |
| </div> |
| |
| </td></tr> |
| |
| |
| |
| <tr class="alt-color api apilevel-" > |
| <td class="jd-typecol"><nobr> |
| abstract |
| |
| |
| |
| |
| <a href="/reference/com/google/android/gms/common/api/PendingResult.html">PendingResult</a><<a href="/reference/com/google/android/gms/common/api/Status.html">Status</a>></nobr> |
| </td> |
| <td class="jd-linkcol" width="100%"><nobr> |
| <span class="sympad"><a href="/reference/com/google/android/gms/wearable/Channel.html#removeListener(com.google.android.gms.common.api.GoogleApiClient, com.google.android.gms.wearable.ChannelApi.ChannelListener)">removeListener</a></span>(<a href="/reference/com/google/android/gms/common/api/GoogleApiClient.html">GoogleApiClient</a> client, <a href="/reference/com/google/android/gms/wearable/ChannelApi.ChannelListener.html">ChannelApi.ChannelListener</a> listener)</nobr> |
| |
| <div class="jd-descrdiv"> |
| Removes a listener which was previously added through |
| <code><a href="/reference/com/google/android/gms/wearable/Channel.html#addListener(com.google.android.gms.common.api.GoogleApiClient, com.google.android.gms.wearable.ChannelApi.ChannelListener)">addListener(GoogleApiClient, ChannelApi.ChannelListener)</a></code>. |
| |
| |
| |
| </div> |
| |
| </td></tr> |
| |
| |
| |
| <tr class=" api apilevel-" > |
| <td class="jd-typecol"><nobr> |
| abstract |
| |
| |
| |
| |
| <a href="/reference/com/google/android/gms/common/api/PendingResult.html">PendingResult</a><<a href="/reference/com/google/android/gms/common/api/Status.html">Status</a>></nobr> |
| </td> |
| <td class="jd-linkcol" width="100%"><nobr> |
| <span class="sympad"><a href="/reference/com/google/android/gms/wearable/Channel.html#sendFile(com.google.android.gms.common.api.GoogleApiClient, android.net.Uri, long, long)">sendFile</a></span>(<a href="/reference/com/google/android/gms/common/api/GoogleApiClient.html">GoogleApiClient</a> client, Uri uri, long startOffset, long length)</nobr> |
| |
| <div class="jd-descrdiv"> |
| Reads from a file into the output side of the channel. |
| |
| |
| |
| </div> |
| |
| </td></tr> |
| |
| |
| |
| <tr class="alt-color api apilevel-" > |
| <td class="jd-typecol"><nobr> |
| abstract |
| |
| |
| |
| |
| <a href="/reference/com/google/android/gms/common/api/PendingResult.html">PendingResult</a><<a href="/reference/com/google/android/gms/common/api/Status.html">Status</a>></nobr> |
| </td> |
| <td class="jd-linkcol" width="100%"><nobr> |
| <span class="sympad"><a href="/reference/com/google/android/gms/wearable/Channel.html#sendFile(com.google.android.gms.common.api.GoogleApiClient, android.net.Uri)">sendFile</a></span>(<a href="/reference/com/google/android/gms/common/api/GoogleApiClient.html">GoogleApiClient</a> client, Uri uri)</nobr> |
| |
| <div class="jd-descrdiv"> |
| Reads from a file into the output side of the channel. |
| |
| |
| |
| </div> |
| |
| </td></tr> |
| |
| |
| |
| </table> |
| |
| |
| |
| |
| |
| |
| |
| <!-- ========== METHOD SUMMARY =========== --> |
| <table id="inhmethods" class="jd-sumtable"><tr><th> |
| <a href="#" class="toggle-all" onclick="return toggleAllInherited(this, null)">[Expand]</a> |
| <div style="clear:left;">Inherited Methods</div></th></tr> |
| |
| |
| <tr class="api apilevel-" > |
| <td colspan="12"> |
| <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.os.Parcelable" class="jd-expando-trigger closed" |
| ><img id="inherited-methods-android.os.Parcelable-trigger" |
| src="/assets/images/triangle-closed.png" |
| class="jd-expando-trigger-img" /></a> |
| From interface |
| |
| android.os.Parcelable |
| |
| <div id="inherited-methods-android.os.Parcelable"> |
| <div id="inherited-methods-android.os.Parcelable-list" |
| class="jd-inheritedlinks"> |
| </div> |
| <div id="inherited-methods-android.os.Parcelable-summary" style="display: none;"> |
| <table class="jd-sumtable-expando"> |
| |
| |
| |
| |
| <tr class="alt-color api apilevel-" > |
| <td class="jd-typecol"><nobr> |
| abstract |
| |
| |
| |
| |
| int</nobr> |
| </td> |
| <td class="jd-linkcol" width="100%"><nobr> |
| <span class="sympad">describeContents</span>()</nobr> |
| |
| </td></tr> |
| |
| |
| |
| <tr class=" api apilevel-" > |
| <td class="jd-typecol"><nobr> |
| abstract |
| |
| |
| |
| |
| void</nobr> |
| </td> |
| <td class="jd-linkcol" width="100%"><nobr> |
| <span class="sympad">writeToParcel</span>(Parcel arg0, int arg1)</nobr> |
| |
| </td></tr> |
| |
| |
| </table> |
| </div> |
| </div> |
| </td></tr> |
| |
| |
| </table> |
| |
| |
| </div><!-- jd-descr (summary) --> |
| |
| <!-- Details --> |
| |
| |
| |
| |
| |
| |
| |
| |
| <!-- XML Attributes --> |
| |
| |
| <!-- Enum Values --> |
| |
| |
| <!-- Constants --> |
| |
| |
| <!-- Fields --> |
| |
| |
| <!-- Public ctors --> |
| |
| |
| |
| <!-- ========= CONSTRUCTOR DETAIL ======== --> |
| <!-- Protected ctors --> |
| |
| |
| |
| <!-- ========= METHOD DETAIL ======== --> |
| <!-- Public methdos --> |
| |
| <h2>Public Methods</h2> |
| |
| |
| |
| <A NAME="addListener(com.google.android.gms.common.api.GoogleApiClient, com.google.android.gms.wearable.ChannelApi.ChannelListener)"></A> |
| |
| <div class="jd-details api apilevel-"> |
| <h4 class="jd-details-title"> |
| <span class="normal"> |
| public |
| |
| |
| abstract |
| |
| <a href="/reference/com/google/android/gms/common/api/PendingResult.html">PendingResult</a><<a href="/reference/com/google/android/gms/common/api/Status.html">Status</a>> |
| </span> |
| <span class="sympad">addListener</span> |
| <span class="normal">(<a href="/reference/com/google/android/gms/common/api/GoogleApiClient.html">GoogleApiClient</a> client, <a href="/reference/com/google/android/gms/wearable/ChannelApi.ChannelListener.html">ChannelApi.ChannelListener</a> listener)</span> |
| </h4> |
| <div class="api-level"> |
| <div></div> |
| |
| |
| |
| </div> |
| <div class="jd-details-descr"> |
| |
| |
| |
| |
| <div class="jd-tagdata jd-tagdescr"><p>Registers a listener to be notified of events for this channel. This is the same as |
| <code><a href="/reference/com/google/android/gms/wearable/ChannelApi.html#addListener(com.google.android.gms.common.api.GoogleApiClient, com.google.android.gms.wearable.ChannelApi.ChannelListener)">addListener(GoogleApiClient, ChannelApi.ChannelListener)</a></code>, but the listener |
| will only be notified of events for this channel. The listener will not receive |
| <code><a href="/reference/com/google/android/gms/wearable/ChannelApi.ChannelListener.html#onChannelOpened(com.google.android.gms.wearable.Channel)">onChannelOpened(Channel)</a></code> events. |
| |
| <p>Calls to this method should balanced with |
| <code><a href="/reference/com/google/android/gms/wearable/Channel.html#removeListener(com.google.android.gms.common.api.GoogleApiClient, com.google.android.gms.wearable.ChannelApi.ChannelListener)">removeListener(GoogleApiClient, ChannelApi.ChannelListener)</a></code> to avoid |
| leaking resources.</p></div> |
| <div class="jd-tagdata"> |
| <h5 class="jd-tagtitle">Parameters</h5> |
| <table class="jd-tagtable"> |
| <tr> |
| <th>client</td> |
| <td>a connected client</td> |
| </tr> |
| <tr> |
| <th>listener</td> |
| <td>a listener which will be notified of changes to the specified stream |
| </td> |
| </tr> |
| </table> |
| </div> |
| |
| </div> |
| </div> |
| |
| |
| <A NAME="close(com.google.android.gms.common.api.GoogleApiClient)"></A> |
| |
| <div class="jd-details api apilevel-"> |
| <h4 class="jd-details-title"> |
| <span class="normal"> |
| public |
| |
| |
| abstract |
| |
| <a href="/reference/com/google/android/gms/common/api/PendingResult.html">PendingResult</a><<a href="/reference/com/google/android/gms/common/api/Status.html">Status</a>> |
| </span> |
| <span class="sympad">close</span> |
| <span class="normal">(<a href="/reference/com/google/android/gms/common/api/GoogleApiClient.html">GoogleApiClient</a> client)</span> |
| </h4> |
| <div class="api-level"> |
| <div></div> |
| |
| |
| |
| </div> |
| <div class="jd-details-descr"> |
| |
| |
| |
| |
| <div class="jd-tagdata jd-tagdescr"><p>Closes this channel, making any future operations on it invalid. |
| |
| <p>This method behaves like <code><a href="/reference/com/google/android/gms/wearable/Channel.html#close(com.google.android.gms.common.api.GoogleApiClient, int)">close(GoogleApiClient, int)</a></code>, with |
| <code>errorCode == 0</code>.</p></div> |
| <div class="jd-tagdata"> |
| <h5 class="jd-tagtitle">Parameters</h5> |
| <table class="jd-tagtable"> |
| <tr> |
| <th>client</td> |
| <td>a connected client |
| </td> |
| </tr> |
| </table> |
| </div> |
| |
| </div> |
| </div> |
| |
| |
| <A NAME="close(com.google.android.gms.common.api.GoogleApiClient, int)"></A> |
| |
| <div class="jd-details api apilevel-"> |
| <h4 class="jd-details-title"> |
| <span class="normal"> |
| public |
| |
| |
| abstract |
| |
| <a href="/reference/com/google/android/gms/common/api/PendingResult.html">PendingResult</a><<a href="/reference/com/google/android/gms/common/api/Status.html">Status</a>> |
| </span> |
| <span class="sympad">close</span> |
| <span class="normal">(<a href="/reference/com/google/android/gms/common/api/GoogleApiClient.html">GoogleApiClient</a> client, int errorCode)</span> |
| </h4> |
| <div class="api-level"> |
| <div></div> |
| |
| |
| |
| </div> |
| <div class="jd-details-descr"> |
| |
| |
| |
| |
| <div class="jd-tagdata jd-tagdescr"><p>Closes this channel, passing an application-defined error code to the remote node. The error |
| code will be passed to <code><a href="/reference/com/google/android/gms/wearable/ChannelApi.ChannelListener.html#onChannelClosed(com.google.android.gms.wearable.Channel, int, int)">onChannelClosed(Channel, int, int)</a></code>, and will cause |
| remote reads and writes to the channel to fail with <code><a href="/reference/com/google/android/gms/wearable/ChannelIOException.html">ChannelIOException</a></code>. |
| |
| <p>The <code><a href="/reference/java/io/InputStream.html">InputStream</a></code> and <code><a href="/reference/java/io/OutputStream.html">OutputStream</a></code> returned from |
| <code><a href="/reference/com/google/android/gms/wearable/Channel.html#getInputStream(com.google.android.gms.common.api.GoogleApiClient)">getInputStream(GoogleApiClient)</a></code> or <code><a href="/reference/com/google/android/gms/wearable/Channel.html#getOutputStream(com.google.android.gms.common.api.GoogleApiClient)">getOutputStream(GoogleApiClient)</a></code> should |
| be closed prior to calling this method. If they are not, both streams will throw |
| <code><a href="/reference/com/google/android/gms/wearable/ChannelIOException.html">ChannelIOException</a></code> on the next read or write operation. |
| |
| <p><code>errorCode == 0</code> is used to indicate that no error occurred.</p></div> |
| <div class="jd-tagdata"> |
| <h5 class="jd-tagtitle">Parameters</h5> |
| <table class="jd-tagtable"> |
| <tr> |
| <th>client</td> |
| <td>a connected client</td> |
| </tr> |
| <tr> |
| <th>errorCode</td> |
| <td>an app-defined error code to pass to the remote node |
| </td> |
| </tr> |
| </table> |
| </div> |
| |
| </div> |
| </div> |
| |
| |
| <A NAME="getInputStream(com.google.android.gms.common.api.GoogleApiClient)"></A> |
| |
| <div class="jd-details api apilevel-"> |
| <h4 class="jd-details-title"> |
| <span class="normal"> |
| public |
| |
| |
| abstract |
| |
| <a href="/reference/com/google/android/gms/common/api/PendingResult.html">PendingResult</a><<a href="/reference/com/google/android/gms/wearable/Channel.GetInputStreamResult.html">Channel.GetInputStreamResult</a>> |
| </span> |
| <span class="sympad">getInputStream</span> |
| <span class="normal">(<a href="/reference/com/google/android/gms/common/api/GoogleApiClient.html">GoogleApiClient</a> client)</span> |
| </h4> |
| <div class="api-level"> |
| <div></div> |
| |
| |
| |
| </div> |
| <div class="jd-details-descr"> |
| |
| |
| |
| |
| <div class="jd-tagdata jd-tagdescr"><p>Opens the input side of the channel to receive data from the remote node. Methods on the |
| returned input stream may throw <code><a href="/reference/com/google/android/gms/wearable/ChannelIOException.html">ChannelIOException</a></code>. See |
| <code><a href="/reference/com/google/android/gms/wearable/Channel.GetInputStreamResult.html#getInputStream()">GetInputStreamResult.getInputStream()</a></code> |
| |
| <p>This method should only be used once on any channel, and once it was called, |
| <code><a href="/reference/com/google/android/gms/wearable/Channel.html#receiveFile(com.google.android.gms.common.api.GoogleApiClient, android.net.Uri, boolean)">receiveFile(GoogleApiClient, Uri, boolean)</a></code> cannot be used.</p></div> |
| <div class="jd-tagdata"> |
| <h5 class="jd-tagtitle">Parameters</h5> |
| <table class="jd-tagtable"> |
| <tr> |
| <th>client</td> |
| <td>a connected client |
| </td> |
| </tr> |
| </table> |
| </div> |
| |
| </div> |
| </div> |
| |
| |
| <A NAME="getNodeId()"></A> |
| |
| <div class="jd-details api apilevel-"> |
| <h4 class="jd-details-title"> |
| <span class="normal"> |
| public |
| |
| |
| abstract |
| |
| String |
| </span> |
| <span class="sympad">getNodeId</span> |
| <span class="normal">()</span> |
| </h4> |
| <div class="api-level"> |
| <div></div> |
| |
| |
| |
| </div> |
| <div class="jd-details-descr"> |
| |
| |
| |
| |
| <div class="jd-tagdata jd-tagdescr"><p>Returns the node ID of the node on the other side of the channel. </p></div> |
| |
| </div> |
| </div> |
| |
| |
| <A NAME="getOutputStream(com.google.android.gms.common.api.GoogleApiClient)"></A> |
| |
| <div class="jd-details api apilevel-"> |
| <h4 class="jd-details-title"> |
| <span class="normal"> |
| public |
| |
| |
| abstract |
| |
| <a href="/reference/com/google/android/gms/common/api/PendingResult.html">PendingResult</a><<a href="/reference/com/google/android/gms/wearable/Channel.GetOutputStreamResult.html">Channel.GetOutputStreamResult</a>> |
| </span> |
| <span class="sympad">getOutputStream</span> |
| <span class="normal">(<a href="/reference/com/google/android/gms/common/api/GoogleApiClient.html">GoogleApiClient</a> client)</span> |
| </h4> |
| <div class="api-level"> |
| <div></div> |
| |
| |
| |
| </div> |
| <div class="jd-details-descr"> |
| |
| |
| |
| |
| <div class="jd-tagdata jd-tagdescr"><p>Opens the output side of the channel to send data to the remote node. Methods on the |
| returned output stream may throw <code><a href="/reference/com/google/android/gms/wearable/ChannelIOException.html">ChannelIOException</a></code>. See |
| <code><a href="/reference/com/google/android/gms/wearable/Channel.GetOutputStreamResult.html#getOutputStream()">GetOutputStreamResult.getOutputStream()</a></code> |
| |
| <p>This method should only be used once on any channel, and once it was called, |
| <code><a href="/reference/com/google/android/gms/wearable/Channel.html#sendFile(com.google.android.gms.common.api.GoogleApiClient, android.net.Uri, long, long)">sendFile(GoogleApiClient, Uri, long, long)</a></code> cannot be used.</p></div> |
| <div class="jd-tagdata"> |
| <h5 class="jd-tagtitle">Parameters</h5> |
| <table class="jd-tagtable"> |
| <tr> |
| <th>client</td> |
| <td>a connected client |
| </td> |
| </tr> |
| </table> |
| </div> |
| |
| </div> |
| </div> |
| |
| |
| <A NAME="getPath()"></A> |
| |
| <div class="jd-details api apilevel-"> |
| <h4 class="jd-details-title"> |
| <span class="normal"> |
| public |
| |
| |
| abstract |
| |
| String |
| </span> |
| <span class="sympad">getPath</span> |
| <span class="normal">()</span> |
| </h4> |
| <div class="api-level"> |
| <div></div> |
| |
| |
| |
| </div> |
| <div class="jd-details-descr"> |
| |
| |
| |
| |
| <div class="jd-tagdata jd-tagdescr"><p>Returns the path that was used to open the channel. </p></div> |
| |
| </div> |
| </div> |
| |
| |
| <A NAME="receiveFile(com.google.android.gms.common.api.GoogleApiClient, android.net.Uri, boolean)"></A> |
| |
| <div class="jd-details api apilevel-"> |
| <h4 class="jd-details-title"> |
| <span class="normal"> |
| public |
| |
| |
| abstract |
| |
| <a href="/reference/com/google/android/gms/common/api/PendingResult.html">PendingResult</a><<a href="/reference/com/google/android/gms/common/api/Status.html">Status</a>> |
| </span> |
| <span class="sympad">receiveFile</span> |
| <span class="normal">(<a href="/reference/com/google/android/gms/common/api/GoogleApiClient.html">GoogleApiClient</a> client, Uri uri, boolean append)</span> |
| </h4> |
| <div class="api-level"> |
| <div></div> |
| |
| |
| |
| </div> |
| <div class="jd-details-descr"> |
| |
| |
| |
| |
| <div class="jd-tagdata jd-tagdescr"><p>Reads input from this channel into a file. This is equivalent to calling |
| <code><a href="/reference/com/google/android/gms/wearable/Channel.html#getInputStream(com.google.android.gms.common.api.GoogleApiClient)">getInputStream(GoogleApiClient)</a></code>, reading from the input stream and |
| writing it to a file, but is implemented more efficiently. Writing to the file |
| will be done in a background process owned by Google Play Services. |
| |
| <p>This method should only be used once on any channel, and once it was called, |
| <code><a href="/reference/com/google/android/gms/wearable/Channel.html#getInputStream(com.google.android.gms.common.api.GoogleApiClient)">getInputStream(GoogleApiClient)</a></code> cannot be used. The channel should not be |
| immediately closed after calling this method. To be notified when the file is ready, |
| install a <code><a href="/reference/com/google/android/gms/wearable/ChannelApi.ChannelListener.html">ChannelApi.ChannelListener</a></code>, with an implementation of |
| <code><a href="/reference/com/google/android/gms/wearable/ChannelApi.ChannelListener.html#onInputClosed(com.google.android.gms.wearable.Channel, int, int)">onInputClosed(Channel, int, int)</a></code>.</p></div> |
| <div class="jd-tagdata"> |
| <h5 class="jd-tagtitle">Parameters</h5> |
| <table class="jd-tagtable"> |
| <tr> |
| <th>client</td> |
| <td>a connected client</td> |
| </tr> |
| <tr> |
| <th>uri</td> |
| <td>URI of the file into which data should be written. This should be a |
| <a href="/reference/android/net/Uri.html#fromFile(java.io.File)">file URI</a></a> for a file which is accessible to |
| the current process for writing.</td> |
| </tr> |
| <tr> |
| <th>append</td> |
| <td>if true, data from the channel will be appended to the file, instead of |
| overwriting it. |
| </td> |
| </tr> |
| </table> |
| </div> |
| |
| </div> |
| </div> |
| |
| |
| <A NAME="removeListener(com.google.android.gms.common.api.GoogleApiClient, com.google.android.gms.wearable.ChannelApi.ChannelListener)"></A> |
| |
| <div class="jd-details api apilevel-"> |
| <h4 class="jd-details-title"> |
| <span class="normal"> |
| public |
| |
| |
| abstract |
| |
| <a href="/reference/com/google/android/gms/common/api/PendingResult.html">PendingResult</a><<a href="/reference/com/google/android/gms/common/api/Status.html">Status</a>> |
| </span> |
| <span class="sympad">removeListener</span> |
| <span class="normal">(<a href="/reference/com/google/android/gms/common/api/GoogleApiClient.html">GoogleApiClient</a> client, <a href="/reference/com/google/android/gms/wearable/ChannelApi.ChannelListener.html">ChannelApi.ChannelListener</a> listener)</span> |
| </h4> |
| <div class="api-level"> |
| <div></div> |
| |
| |
| |
| </div> |
| <div class="jd-details-descr"> |
| |
| |
| |
| |
| <div class="jd-tagdata jd-tagdescr"><p>Removes a listener which was previously added through |
| <code><a href="/reference/com/google/android/gms/wearable/Channel.html#addListener(com.google.android.gms.common.api.GoogleApiClient, com.google.android.gms.wearable.ChannelApi.ChannelListener)">addListener(GoogleApiClient, ChannelApi.ChannelListener)</a></code>.</p></div> |
| <div class="jd-tagdata"> |
| <h5 class="jd-tagtitle">Parameters</h5> |
| <table class="jd-tagtable"> |
| <tr> |
| <th>client</td> |
| <td>a connected client</td> |
| </tr> |
| <tr> |
| <th>listener</td> |
| <td>a listener which was added using |
| <code><a href="/reference/com/google/android/gms/wearable/Channel.html#addListener(com.google.android.gms.common.api.GoogleApiClient, com.google.android.gms.wearable.ChannelApi.ChannelListener)">addListener(GoogleApiClient, ChannelApi.ChannelListener)</a></code> |
| </td> |
| </tr> |
| </table> |
| </div> |
| |
| </div> |
| </div> |
| |
| |
| <A NAME="sendFile(com.google.android.gms.common.api.GoogleApiClient, android.net.Uri, long, long)"></A> |
| |
| <div class="jd-details api apilevel-"> |
| <h4 class="jd-details-title"> |
| <span class="normal"> |
| public |
| |
| |
| abstract |
| |
| <a href="/reference/com/google/android/gms/common/api/PendingResult.html">PendingResult</a><<a href="/reference/com/google/android/gms/common/api/Status.html">Status</a>> |
| </span> |
| <span class="sympad">sendFile</span> |
| <span class="normal">(<a href="/reference/com/google/android/gms/common/api/GoogleApiClient.html">GoogleApiClient</a> client, Uri uri, long startOffset, long length)</span> |
| </h4> |
| <div class="api-level"> |
| <div></div> |
| |
| |
| |
| </div> |
| <div class="jd-details-descr"> |
| |
| |
| |
| |
| <div class="jd-tagdata jd-tagdescr"><p>Reads from a file into the output side of the channel. This is equivalent to calling |
| <code><a href="/reference/com/google/android/gms/wearable/Channel.html#getOutputStream(com.google.android.gms.common.api.GoogleApiClient)">getOutputStream(GoogleApiClient)</a></code>, reading from a file and writing |
| into the <code><a href="/reference/java/io/OutputStream.html">OutputStream</a></code>, but is implemented more efficiently. Reading from the file |
| will be done in a background process owned by Google Play Services. |
| |
| <p>This method should only be used once on any channel, and once it was called, |
| <code><a href="/reference/com/google/android/gms/wearable/Channel.html#getOutputStream(com.google.android.gms.common.api.GoogleApiClient)">getOutputStream(GoogleApiClient)</a></code> cannot be used. The channel should not be |
| immediately closed after calling this method. To be notified when the file has been sent, |
| install a <code><a href="/reference/com/google/android/gms/wearable/ChannelApi.ChannelListener.html">ChannelApi.ChannelListener</a></code>, with an implementation of |
| <code><a href="/reference/com/google/android/gms/wearable/ChannelApi.ChannelListener.html#onOutputClosed(com.google.android.gms.wearable.Channel, int, int)">onOutputClosed(Channel, int, int)</a></code>.</p></div> |
| <div class="jd-tagdata"> |
| <h5 class="jd-tagtitle">Parameters</h5> |
| <table class="jd-tagtable"> |
| <tr> |
| <th>client</td> |
| <td>a connected client</td> |
| </tr> |
| <tr> |
| <th>uri</td> |
| <td>URI of the file from which data should be read. This should be a |
| <a href="/reference/android/net/Uri.html#fromFile(java.io.File)">file URI</a></a> for a file which is accessible to |
| the current process for reading.</td> |
| </tr> |
| <tr> |
| <th>startOffset</td> |
| <td>byte offset from which to start reading</td> |
| </tr> |
| <tr> |
| <th>length</td> |
| <td>maximum number of bytes to read from the file, or <code>-1</code> if the file |
| should be read to its end. If the file doesn't contain enough bytes to reach |
| <code>length</code>, fewer bytes will be read. |
| </td> |
| </tr> |
| </table> |
| </div> |
| |
| </div> |
| </div> |
| |
| |
| <A NAME="sendFile(com.google.android.gms.common.api.GoogleApiClient, android.net.Uri)"></A> |
| |
| <div class="jd-details api apilevel-"> |
| <h4 class="jd-details-title"> |
| <span class="normal"> |
| public |
| |
| |
| abstract |
| |
| <a href="/reference/com/google/android/gms/common/api/PendingResult.html">PendingResult</a><<a href="/reference/com/google/android/gms/common/api/Status.html">Status</a>> |
| </span> |
| <span class="sympad">sendFile</span> |
| <span class="normal">(<a href="/reference/com/google/android/gms/common/api/GoogleApiClient.html">GoogleApiClient</a> client, Uri uri)</span> |
| </h4> |
| <div class="api-level"> |
| <div></div> |
| |
| |
| |
| </div> |
| <div class="jd-details-descr"> |
| |
| |
| |
| |
| <div class="jd-tagdata jd-tagdescr"><p>Reads from a file into the output side of the channel. This is equivalent to calling |
| <code><a href="/reference/com/google/android/gms/wearable/Channel.html#getOutputStream(com.google.android.gms.common.api.GoogleApiClient)">getOutputStream(GoogleApiClient)</a></code>, reading from a file and writing |
| into the <code><a href="/reference/java/io/OutputStream.html">OutputStream</a></code>, but is implemented more efficiently. Reading from the file |
| will be done in a background process owned by Google Play Services. |
| |
| <p>This method should only be used once on any channel, and once it was called, |
| <code><a href="/reference/com/google/android/gms/wearable/Channel.html#getOutputStream(com.google.android.gms.common.api.GoogleApiClient)">getOutputStream(GoogleApiClient)</a></code> cannot be used. The channel should not be |
| immediately closed after calling this method. To be notified when the file has been sent, |
| install a <code><a href="/reference/com/google/android/gms/wearable/ChannelApi.ChannelListener.html">ChannelApi.ChannelListener</a></code>, with an implementation of |
| <code><a href="/reference/com/google/android/gms/wearable/ChannelApi.ChannelListener.html#onOutputClosed(com.google.android.gms.wearable.Channel, int, int)">onOutputClosed(Channel, int, int)</a></code>. |
| |
| <p>This method is identical to calling |
| <code><a href="/reference/com/google/android/gms/wearable/Channel.html#sendFile(com.google.android.gms.common.api.GoogleApiClient, android.net.Uri, long, long)">sendFile(GoogleApiClient, Uri, long, long)</a></code> with <code>offset == 0</code> |
| and <code>length == -1</code>.</p></div> |
| <div class="jd-tagdata"> |
| <h5 class="jd-tagtitle">Parameters</h5> |
| <table class="jd-tagtable"> |
| <tr> |
| <th>client</td> |
| <td>a connected client</td> |
| </tr> |
| <tr> |
| <th>uri</td> |
| <td>URI of the file from which data should be read. This should be a |
| <a href="/reference/android/net/Uri.html#fromFile(java.io.File)">file URI</a></a> for a file which is accessible to |
| the current process for reading. |
| </td> |
| </tr> |
| </table> |
| </div> |
| |
| </div> |
| </div> |
| |
| |
| |
| |
| |
| <!-- ========= METHOD DETAIL ======== --> |
| |
| |
| |
| <!-- ========= END OF CLASS DATA ========= --> |
| <A NAME="navbar_top"></A> |
| |
| <div id="footer" class="wrap" > |
| |
| |
| <div id="copyright"> |
| |
| Except as noted, this content is licensed under <a |
| href="http://www.apache.org/licenses/LICENSE-2.0">Apache 2.0</a>. |
| For details and restrictions, see the <a href="/license.html"> |
| Content License</a>. |
| </div> |
| <div id="build_info"> |
| |
| <script src="/timestamp.js" type="text/javascript"></script> |
| <script>document.write(BUILD_TIMESTAMP)</script> |
| |
| </div> |
| |
| |
| <div id="footerlinks"> |
| |
| <p> |
| <a href="/about/index.html">About Android</a> | |
| <a href="/legal.html">Legal</a> | |
| <a href="/support.html">Support</a> |
| </p> |
| </div> |
| |
| </div> <!-- end footer --> |
| </div> <!-- jd-content --> |
| |
| </div><!-- end doc-content --> |
| |
| </div> <!-- end body-content --> |
| |
| |
| |
| |
| |
| |
| </body> |
| </html> |