blob: 90763877056ff0a50d3edb29701e7d670c261878 [file] [log] [blame]
The Android Open Source Project88b60792009-03-03 19:28:42 -08001<?cs include:"doctype.cs" ?>
2<?cs include:"macros.cs" ?>
Dirk Dougherty4eb5dac2016-01-29 12:01:35 -08003<?cs include:"../../../../frameworks/base/docs/html/sdk/sdk_vars.cs" ?>
Scott Maine05e6f92013-01-29 13:34:17 -08004<html<?cs if:devsite ?> devsite<?cs /if ?>>
The Android Open Source Project88b60792009-03-03 19:28:42 -08005<?cs if:sdk.redirect ?>
6 <head>
7 <title>Redirecting...</title>
Scott Maincc089092011-01-17 16:44:10 -08008 <meta http-equiv="refresh" content="0;url=<?cs var:toroot ?>sdk/<?cs
9 if:sdk.redirect.path ?><?cs var:sdk.redirect.path ?><?cs
Dirk Doughertye1233852010-03-03 14:34:51 -080010 else ?>index.html<?cs /if ?>">
The Android Open Source Project88b60792009-03-03 19:28:42 -080011 </head>
12<?cs else ?>
13 <?cs include:"head_tag.cs" ?>
14<?cs /if ?>
Ricardo Cerverafd0be922014-03-25 12:33:33 -070015<body class="gc-documentation
Scott Maine4d8f1b2012-06-21 18:03:05 -070016 <?cs if:(guide||develop||training||reference||tools||sdk) ?>develop<?cs
17 elif:design ?>design<?cs
18 elif:distribute ?>distribute<?cs
19 /if ?>" itemscope itemtype="http://schema.org/CreativeWork">
20 <a name="top"></a>
21<?cs include:"header.cs" ?>
The Android Open Source Project88b60792009-03-03 19:28:42 -080022
Scott Maine4d8f1b2012-06-21 18:03:05 -070023
24<div <?cs if:fullpage
25?><?cs else
26?>class="col-13" id="doc-col"<?cs /if ?> >
The Android Open Source Project88b60792009-03-03 19:28:42 -080027
The Android Open Source Project88b60792009-03-03 19:28:42 -080028<?cs if:sdk.redirect ?>
Dirk Doughertyd8cfce02009-07-15 16:37:21 -070029
Dirk Dougherty19a4bd12009-04-24 11:30:32 -070030<div class="g-unit">
31 <div id="jd-content">
Scott Maincc089092011-01-17 16:44:10 -080032 <p>Redirecting to
33 <a href="<?cs var:toroot ?>sdk/<?cs
Scott Mainb66a5c02010-07-08 11:29:28 -070034 if:sdk.redirect.path ?><?cs var:sdk.redirect.path ?><?cs
35 else ?>index.html<?cs /if ?>"><?cs
36 if:sdk.redirect.path ?><?cs var:sdk.redirect.path ?><?cs
37 else ?>Download the SDK<?cs /if ?>
Dirk Doughertyd8cfce02009-07-15 16:37:21 -070038 </a> ...</p>
Scott Maincc089092011-01-17 16:44:10 -080039
The Android Open Source Project88b60792009-03-03 19:28:42 -080040<?cs else ?>
Scott Maincc089092011-01-17 16:44:10 -080041<?cs # else, if NOT redirect ...
42#
43#
44# The following is for SDK/NDK pages
45#
46#
47?>
48
Scott Maine4d8f1b2012-06-21 18:03:05 -070049<?cs if:header.hide ?><?cs else ?>
50<h1 itemprop="name"><?cs var:page.title ?></h1>
51<?cs /if ?>
Scott Main3652a112012-01-30 13:03:08 -080052 <div id="jd-content" itemprop="description">
The Android Open Source Project88b60792009-03-03 19:28:42 -080053
54<?cs if:sdk.not_latest_version ?>
55 <div class="special">
56 <p><strong>This is NOT the current Android SDK release.</strong></p>
Dirk Dougherty3d3d7b72009-10-21 19:52:52 -070057 <p><a href="/sdk/index.html">Download the current Android SDK</a></p>
The Android Open Source Project88b60792009-03-03 19:28:42 -080058 </div>
59<?cs /if ?>
Dirk Doughertye6be85f2009-06-24 11:01:03 -070060
The Android Open Source Project88b60792009-03-03 19:28:42 -080061
Scott Maincc089092011-01-17 16:44:10 -080062<?cs if:ndk ?>
63<?cs #
64#
65#
66#
67#
68#
69#
70# the following is for the NDK
71#
72# (nested in if/else redirect)
73#
74#
75#
76#
77?>
The Android Open Source Project88b60792009-03-03 19:28:42 -080078
Scott Main25659b02012-06-22 17:02:25 -070079 <table class="download" id="download-table">
Dirk Dougherty4e4c9192009-05-12 15:32:35 -070080 <tr>
David Friedmane0471a82014-10-15 02:21:19 -070081 <th>Platform</th>
Dirk Dougherty4e4c9192009-05-12 15:32:35 -070082 <th>Package</th>
Dirk Dougherty48e3f1d2013-07-25 15:26:07 -070083 <th style="white-space:nowrap">Size (Bytes)</th>
Dirk Dougherty4e4c9192009-05-12 15:32:35 -070084 <th>MD5 Checksum</th>
85 </tr>
86 <tr>
David Friedman612a88b2013-12-06 02:23:14 -080087 <td>Windows 32-bit</td>
Dirk Dougherty4e4c9192009-05-12 15:32:35 -070088 <td>
Scott Main098d8de2012-11-13 11:25:06 -080089 <a onClick="return onDownload(this)"
Scott Maina2303452013-03-18 11:31:15 -070090 href="http://dl.google.com/android/ndk/<?cs var:ndk.win32_download ?>"><?cs var:ndk.win32_download ?></a>
Dirk Dougherty4e4c9192009-05-12 15:32:35 -070091 </td>
Dirk Dougherty48e3f1d2013-07-25 15:26:07 -070092 <td><?cs var:ndk.win32_bytes ?></td>
Scott Maina2303452013-03-18 11:31:15 -070093 <td><?cs var:ndk.win32_checksum ?></td>
Dirk Dougherty4e4c9192009-05-12 15:32:35 -070094 </tr>
David Friedman612a88b2013-12-06 02:23:14 -080095 <!-- <tr>
96 <td>
Dirk Dougherty48e3f1d2013-07-25 15:26:07 -070097 <a onClick="return onDownload(this)"
Joe Fernandez8d936902013-07-25 17:05:06 -070098 href="http://dl.google.com/android/ndk/<?cs var:ndk.win32.legacy_download ?>"><?cs var:ndk.win32.legacy_download ?></a>
Dirk Dougherty48e3f1d2013-07-25 15:26:07 -070099 </td>
100 <td><?cs var:ndk.win32.legacy_bytes ?></td>
101 <td><?cs var:ndk.win32.legacy_checksum ?></td>
David Friedman612a88b2013-12-06 02:23:14 -0800102 </tr> -->
Dirk Dougherty48e3f1d2013-07-25 15:26:07 -0700103 <tr>
David Friedman612a88b2013-12-06 02:23:14 -0800104 <td>Windows 64-bit</td>
Dirk Dougherty4e4c9192009-05-12 15:32:35 -0700105 <td>
Scott Main098d8de2012-11-13 11:25:06 -0800106 <a onClick="return onDownload(this)"
Scott Maina2303452013-03-18 11:31:15 -0700107 href="http://dl.google.com/android/ndk/<?cs var:ndk.win64_download ?>"><?cs var:ndk.win64_download ?></a>
Dirk Dougherty4e4c9192009-05-12 15:32:35 -0700108 </td>
Dirk Dougherty48e3f1d2013-07-25 15:26:07 -0700109 <td><?cs var:ndk.win64_bytes ?></td>
Scott Maina2303452013-03-18 11:31:15 -0700110 <td><?cs var:ndk.win64_checksum ?></td>
Ricardo Cerverafd0be922014-03-25 12:33:33 -0700111 </tr>
David Friedman612a88b2013-12-06 02:23:14 -0800112 <!-- <tr>
Dirk Dougherty48e3f1d2013-07-25 15:26:07 -0700113 <td>
114 <a onClick="return onDownload(this)"
Joe Fernandez8d936902013-07-25 17:05:06 -0700115 href="http://dl.google.com/android/ndk/<?cs var:ndk.win64.legacy_download ?>"><?cs var:ndk.win64.legacy_download ?></a>
Dirk Dougherty48e3f1d2013-07-25 15:26:07 -0700116 </td>
117 <td><?cs var:ndk.win64.legacy_bytes ?></td>
118 <td><?cs var:ndk.win64.legacy_checksum ?></td>
David Friedman612a88b2013-12-06 02:23:14 -0800119 </tr> -->
David Friedman302e2f92015-05-13 07:10:22 -0700120<!-- (this item is deprecated)
Dirk Dougherty48e3f1d2013-07-25 15:26:07 -0700121 <tr>
David Friedman612a88b2013-12-06 02:23:14 -0800122 <td>Mac OS X 32-bit</td>
Dirk Dougherty4e4c9192009-05-12 15:32:35 -0700123 <td>
Scott Main098d8de2012-11-13 11:25:06 -0800124 <a onClick="return onDownload(this)"
Scott Maina2303452013-03-18 11:31:15 -0700125 href="http://dl.google.com/android/ndk/<?cs var:ndk.mac32_download ?>"><?cs var:ndk.mac32_download ?></a>
Dirk Dougherty4e4c9192009-05-12 15:32:35 -0700126 </td>
Dirk Dougherty48e3f1d2013-07-25 15:26:07 -0700127 <td><?cs var:ndk.mac32_bytes ?></td>
Scott Maina2303452013-03-18 11:31:15 -0700128 <td><?cs var:ndk.mac32_checksum ?></td>
David Friedman302e2f92015-05-13 07:10:22 -0700129 </tr> -->
130 <!-- (this item is deprecated)
131 <tr>
Dirk Dougherty48e3f1d2013-07-25 15:26:07 -0700132 <td>
133 <a onClick="return onDownload(this)"
Joe Fernandez8d936902013-07-25 17:05:06 -0700134 href="http://dl.google.com/android/ndk/<?cs var:ndk.mac32.legacy_download ?>"><?cs var:ndk.mac32.legacy_download ?></a>
Dirk Dougherty48e3f1d2013-07-25 15:26:07 -0700135 </td>
136 <td><?cs var:ndk.mac32.legacy_bytes ?></td>
137 <td><?cs var:ndk.mac32.legacy_checksum ?></td>
David Friedman612a88b2013-12-06 02:23:14 -0800138 </tr> -->
139 <td>Mac OS X 64-bit</td>
Scott Maina2303452013-03-18 11:31:15 -0700140 <td>
141 <a onClick="return onDownload(this)"
142 href="http://dl.google.com/android/ndk/<?cs var:ndk.mac64_download ?>"><?cs var:ndk.mac64_download ?></a>
143 </td>
Dirk Dougherty48e3f1d2013-07-25 15:26:07 -0700144 <td><?cs var:ndk.mac64_bytes ?></td>
Scott Maina2303452013-03-18 11:31:15 -0700145 <td><?cs var:ndk.mac64_checksum ?></td>
146 </tr>
David Friedman612a88b2013-12-06 02:23:14 -0800147 <!-- <tr>
Dirk Dougherty48e3f1d2013-07-25 15:26:07 -0700148 <td>
149 <a onClick="return onDownload(this)"
Joe Fernandez8d936902013-07-25 17:05:06 -0700150 href="http://dl.google.com/android/ndk/<?cs var:ndk.mac64.legacy_download ?>"><?cs var:ndk.mac64.legacy_download ?></a>
Dirk Dougherty48e3f1d2013-07-25 15:26:07 -0700151 </td>
152 <td><?cs var:ndk.mac64.legacy_bytes ?></td>
153 <td><?cs var:ndk.mac64.legacy_checksum ?></td>
David Friedman612a88b2013-12-06 02:23:14 -0800154 </tr> -->
Dirk Dougherty48e3f1d2013-07-25 15:26:07 -0700155 <tr>
David Friedman612a88b2013-12-06 02:23:14 -0800156 <td>Linux 32-bit (x86)</td>
Scott Maina2303452013-03-18 11:31:15 -0700157 <td>
158 <a onClick="return onDownload(this)"
159 href="http://dl.google.com/android/ndk/<?cs var:ndk.linux32_download ?>"><?cs var:ndk.linux32_download ?></a>
160 </td>
Dirk Dougherty48e3f1d2013-07-25 15:26:07 -0700161 <td><?cs var:ndk.linux32_bytes ?></td>
Scott Maina2303452013-03-18 11:31:15 -0700162 <td><?cs var:ndk.linux32_checksum ?></td>
163 </tr>
David Friedman612a88b2013-12-06 02:23:14 -0800164 <!-- <tr>
Dirk Dougherty48e3f1d2013-07-25 15:26:07 -0700165 <td>
166 <a onClick="return onDownload(this)"
Joe Fernandez8d936902013-07-25 17:05:06 -0700167 href="http://dl.google.com/android/ndk/<?cs var:ndk.linux32.legacy_download ?>"><?cs var:ndk.linux32.legacy_download ?></a>
Dirk Dougherty48e3f1d2013-07-25 15:26:07 -0700168 </td>
169 <td><?cs var:ndk.linux32.legacy_bytes ?></td>
170 <td><?cs var:ndk.linux32.legacy_checksum ?></td>
David Friedman612a88b2013-12-06 02:23:14 -0800171 </tr> -->
Dirk Dougherty48e3f1d2013-07-25 15:26:07 -0700172 <tr>
David Friedman612a88b2013-12-06 02:23:14 -0800173 <td>Linux 64-bit (x86)</td>
Scott Maina2303452013-03-18 11:31:15 -0700174 <td>
175 <a onClick="return onDownload(this)"
176 href="http://dl.google.com/android/ndk/<?cs var:ndk.linux64_download ?>"><?cs var:ndk.linux64_download ?></a>
177 </td>
Dirk Dougherty48e3f1d2013-07-25 15:26:07 -0700178 <td><?cs var:ndk.linux64_bytes ?></td>
Scott Maina2303452013-03-18 11:31:15 -0700179 <td><?cs var:ndk.linux64_checksum ?></td>
Dirk Dougherty4e4c9192009-05-12 15:32:35 -0700180 </tr>
David Friedman612a88b2013-12-06 02:23:14 -0800181 <!-- <tr>
Dirk Dougherty48e3f1d2013-07-25 15:26:07 -0700182 <td>
183 <a onClick="return onDownload(this)"
Joe Fernandez8d936902013-07-25 17:05:06 -0700184 href="http://dl.google.com/android/ndk/<?cs var:ndk.linux64.legacy_download ?>"><?cs var:ndk.linux64.legacy_download ?></a>
Dirk Dougherty48e3f1d2013-07-25 15:26:07 -0700185 </td>
186 <td><?cs var:ndk.linux64.legacy_bytes ?></td>
187 <td><?cs var:ndk.linux64.legacy_checksum ?></td>
David Friedman612a88b2013-12-06 02:23:14 -0800188 </tr> -->
David Friedman81415ad2014-07-15 11:38:40 -0700189
Dirk Dougherty4e4c9192009-05-12 15:32:35 -0700190 </table>
Ricardo Cerverafd0be922014-03-25 12:33:33 -0700191
Scott Maine4d8f1b2012-06-21 18:03:05 -0700192 <?cs ######## HERE IS THE JD DOC CONTENT ######### ?>
193 <?cs call:tag_list(root.descr) ?>
Dirk Dougherty4e4c9192009-05-12 15:32:35 -0700194
Scott Main098d8de2012-11-13 11:25:06 -0800195
Ricardo Cerverafd0be922014-03-25 12:33:33 -0700196
Scott Main098d8de2012-11-13 11:25:06 -0800197<script>
198 function onDownload(link) {
199
200 $("#downloadForRealz").html("Download " + $(link).text());
201 $("#downloadForRealz").attr('href',$(link).attr('href'));
202
203 $("#tos").fadeIn('slow');
204
205 location.hash = "download";
206 return false;
207 }
208
209
210 function onAgreeChecked() {
211 if ($("input#agree").is(":checked")) {
212 $("a#downloadForRealz").removeClass('disabled');
213 } else {
214 $("a#downloadForRealz").addClass('disabled');
215 }
216 }
217
218 function onDownloadNdkForRealz(link) {
219 if ($("input#agree").is(':checked')) {
220 $("#tos").fadeOut('slow');
Ricardo Cerverafd0be922014-03-25 12:33:33 -0700221
Scott Main098d8de2012-11-13 11:25:06 -0800222 $('html, body').animate({
223 scrollTop: $("#Installing").offset().top
224 }, 800, function() {
225 $("#Installing").click();
226 });
Ricardo Cerverafd0be922014-03-25 12:33:33 -0700227
Scott Main098d8de2012-11-13 11:25:06 -0800228 return true;
229 } else {
230 $("label#agreeLabel").parent().stop().animate({color: "#258AAF"}, 200,
231 function() {$("label#agreeLabel").parent().stop().animate({color: "#222"}, 200)}
232 );
233 return false;
234 }
235 }
236
237 $(window).hashchange( function(){
238 if (location.hash == "") {
239 location.reload();
240 }
241 });
242
243</script>
244
Scott Maincc089092011-01-17 16:44:10 -0800245 <?cs else ?>
Ricardo Cerverafd0be922014-03-25 12:33:33 -0700246<?cs # end if NDK ...
Scott Maincc089092011-01-17 16:44:10 -0800247#
248#
249#
250#
251#
252#
253# the following is for the SDK
254#
255# (nested in if/else redirect and if/else NDK)
256#
257#
258#
259#
260?>
Scott Mainb73777e2010-11-22 15:02:01 -0800261 <?cs if:android.whichdoc == "online" ?>
Dirk Dougherty82a28812009-08-05 19:09:16 -0700262
Dirk Dougherty4b2eb972010-03-08 17:31:26 -0800263
Scott Maine4d8f1b2012-06-21 18:03:05 -0700264<?cs ######## HERE IS THE JD DOC CONTENT FOR ONLINE ######### ?>
265<?cs call:tag_list(root.descr) ?>
Dirk Dougherty4b2eb972010-03-08 17:31:26 -0800266
Scott Maindb3678b2012-10-23 14:13:41 -0700267
268
269
smain@google.comd53f0662014-12-03 19:34:55 -0800270<div class="pax col-13 online" style="margin:0;">
Ricardo Cerverafd0be922014-03-25 12:33:33 -0700271
272
smain@google.comd53f0662014-12-03 19:34:55 -0800273<h3>SDK Tools Only</h3>
Scott Maindb3678b2012-10-23 14:13:41 -0700274
smain@google.comd53f0662014-12-03 19:34:55 -0800275<p>If you prefer to use a different IDE or run the tools from the
276command line or with build scripts, you can instead download the stand-alone Android SDK Tools.
277These packages provide the basic SDK tools for app development, without an IDE.
smain@google.com0ecb5a62014-12-08 12:39:52 -0800278Also see the <a href="<?cs var:toroot ?>tools/sdk/tools-notes.html">SDK tools release notes</a>.</p>
Ricardo Cerverafd0be922014-03-25 12:33:33 -0700279
Rich Slogarfe4dd522014-11-03 15:16:34 -0800280 <table class="download">
281 <tr>
282 <th>Platform</th>
283 <th>Package</th>
284 <th>Size</th>
Rich Slogar8d3c6942014-12-12 14:25:45 -0800285 <th>SHA-1 Checksum</th>
Rich Slogarfe4dd522014-11-03 15:16:34 -0800286 </tr>
287 <tr>
smain@google.comd53f0662014-12-03 19:34:55 -0800288 <td rowspan="2">Windows</td>
Rich Slogarfe4dd522014-11-03 15:16:34 -0800289 <td>
Rich Slogarfe4dd522014-11-03 15:16:34 -0800290 <a onclick="return onDownload(this)" id="win-tools" href="http://dl.google.com/android/<?cs
291var:sdk.win_installer
292?>"><?cs var:sdk.win_installer ?></a> (Recommended)
293 </td>
294 <td><?cs var:sdk.win_installer_bytes ?> bytes</td>
295 <td><?cs var:sdk.win_installer_checksum ?></td>
296 </tr>
297 <tr>
smain@google.com102db8b2014-12-07 22:39:24 -0800298 <!-- blank TD from Windows rowspan -->
299 <td>
300 <a onclick="return onDownload(this)" href="http://dl.google.com/android/<?cs var:sdk.win_download
301?>"><?cs var:sdk.win_download ?></a>
302 </td>
303 <td><?cs var:sdk.win_bytes ?> bytes</td>
304 <td><?cs var:sdk.win_checksum ?></td>
305 </tr>
306 <tr>
smain@google.comd53f0662014-12-03 19:34:55 -0800307 <td><nobr>Mac OS X</nobr></td>
Rich Slogarfe4dd522014-11-03 15:16:34 -0800308 <td>
309 <a onclick="return onDownload(this)" id="mac-tools" href="http://dl.google.com/android/<?cs
310var:sdk.mac_download
311?>"><?cs var:sdk.mac_download ?></a>
312 </td>
313 <td><?cs var:sdk.mac_bytes ?> bytes</td>
314 <td><?cs var:sdk.mac_checksum ?></td>
315 </tr>
316 <tr>
smain@google.comd53f0662014-12-03 19:34:55 -0800317 <td>Linux</td>
Rich Slogarfe4dd522014-11-03 15:16:34 -0800318 <td>
319 <a onclick="return onDownload(this)" id="linux-tools" href="http://dl.google.com/android/<?cs
320var:sdk.linux_download
321?>"><?cs var:sdk.linux_download ?></a>
322 </td>
323 <td><?cs var:sdk.linux_bytes ?> bytes</td>
324 <td><?cs var:sdk.linux_checksum ?></td>
325 </tr>
326 </table>
327
328
smain@google.comd53f0662014-12-03 19:34:55 -0800329
330<h3>All Android Studio Packages</h3>
331
smain@google.com0ecb5a62014-12-08 12:39:52 -0800332<p>Select a specific Android Studio package for your platform. Also see the
333<a href="<?cs var:toroot ?>tools/revisions/studio.html">Android Studio release notes</a>.</p>
smain@google.comd53f0662014-12-03 19:34:55 -0800334
Scott Maindb3678b2012-10-23 14:13:41 -0700335 <table class="download">
336 <tr>
337 <th>Platform</th>
338 <th>Package</th>
339 <th>Size</th>
Rich Slogar8d3c6942014-12-12 14:25:45 -0800340 <th>SHA-1 Checksum</th>
Scott Maindb3678b2012-10-23 14:13:41 -0700341 </tr>
smain@google.comd53f0662014-12-03 19:34:55 -0800342
Scott Maindb3678b2012-10-23 14:13:41 -0700343 <tr>
smain@google.com102db8b2014-12-07 22:39:24 -0800344 <td rowspan="3">Windows</td>
Scott Maindb3678b2012-10-23 14:13:41 -0700345 <td>
smain@google.comc509cb02015-08-28 16:51:12 -0700346 <a onclick="return onDownload(this,false,true)" id="win-bundle"
smain@google.com102db8b2014-12-07 22:39:24 -0800347 href="https://dl.google.com/dl/android/studio/install/<?cs var:studio.version ?>/<?cs var:studio.win_bundle_exe_download ?>"
348 ><?cs var:studio.win_bundle_exe_download ?></a><br>(Recommended)
349 </td>
350 <td><?cs var:studio.win_bundle_exe_bytes ?> bytes</td>
351 <td><?cs var:studio.win_bundle_exe_checksum ?></td>
352 </tr>
353
354 <tr>
355 <!-- blank TD from Windows rowspan -->
356 <td>
smain@google.comb63101d2015-10-09 16:30:05 -0700357 <a onclick="return onDownload(this,false,true)" id="win-bundle-notools"
smain@google.com102db8b2014-12-07 22:39:24 -0800358 href="https://dl.google.com/dl/android/studio/install/<?cs var:studio.version ?>/<?cs var:studio.win_notools_exe_download ?>"
359 ><?cs var:studio.win_notools_exe_download ?></a><br>(No SDK tools included)
360 </td>
361 <td><?cs var:studio.win_notools_exe_bytes ?> bytes</td>
362 <td><?cs var:studio.win_notools_exe_checksum ?></td>
363 </tr>
364
365 <tr>
366 <!-- blank TD from Windows rowspan -->
367 <td>
smain@google.comb63101d2015-10-09 16:30:05 -0700368 <a onclick="return onDownload(this,false,true)" id="win-bundle-zip"
smain@google.comd53f0662014-12-03 19:34:55 -0800369 href="https://dl.google.com/dl/android/studio/ide-zips/<?cs var:studio.version ?>/<?cs var:studio.win_bundle_download ?>"
370 ><?cs var:studio.win_bundle_download ?></a>
Scott Maindb3678b2012-10-23 14:13:41 -0700371 </td>
smain@google.comd53f0662014-12-03 19:34:55 -0800372 <td><?cs var:studio.win_bundle_bytes ?> bytes</td>
373 <td><?cs var:studio.win_bundle_checksum ?></td>
Scott Maindb3678b2012-10-23 14:13:41 -0700374 </tr>
smain@google.comd53f0662014-12-03 19:34:55 -0800375
Scott Maindb3678b2012-10-23 14:13:41 -0700376 <tr>
smain@google.comd53f0662014-12-03 19:34:55 -0800377 <td><nobr>Mac OS X</nobr></td>
Scott Maindb3678b2012-10-23 14:13:41 -0700378 <td>
smain@google.comc509cb02015-08-28 16:51:12 -0700379 <a onclick="return onDownload(this,false,true)" id="mac-bundle"
smain@google.com102db8b2014-12-07 22:39:24 -0800380 href="https://dl.google.com/dl/android/studio/install/<?cs var:studio.version ?>/<?cs var:studio.mac_bundle_download ?>"
smain@google.comd53f0662014-12-03 19:34:55 -0800381 ><?cs var:studio.mac_bundle_download ?></a>
Scott Maindb3678b2012-10-23 14:13:41 -0700382 </td>
smain@google.comd53f0662014-12-03 19:34:55 -0800383 <td><?cs var:studio.mac_bundle_bytes ?> bytes</td>
384 <td><?cs var:studio.mac_bundle_checksum ?></td>
Scott Main11ac05b2012-11-15 14:57:44 -0800385 </tr>
smain@google.comd53f0662014-12-03 19:34:55 -0800386
Scott Main11ac05b2012-11-15 14:57:44 -0800387 <tr>
smain@google.comd53f0662014-12-03 19:34:55 -0800388 <td>Linux</td>
Scott Main11ac05b2012-11-15 14:57:44 -0800389 <td>
smain@google.comc509cb02015-08-28 16:51:12 -0700390 <a onclick="return onDownload(this,false,true)" id="linux-bundle"
smain@google.comd53f0662014-12-03 19:34:55 -0800391 href="https://dl.google.com/dl/android/studio/ide-zips/<?cs var:studio.version ?>/<?cs var:studio.linux_bundle_download ?>"
392 ><?cs var:studio.linux_bundle_download ?></a>
Scott Main11ac05b2012-11-15 14:57:44 -0800393 </td>
smain@google.comd53f0662014-12-03 19:34:55 -0800394 <td><?cs var:studio.linux_bundle_bytes ?> bytes</td>
395 <td><?cs var:studio.linux_bundle_checksum ?></td>
Scott Maindb3678b2012-10-23 14:13:41 -0700396 </tr>
397 </table>
398
399
Rich Slogarfe4dd522014-11-03 15:16:34 -0800400
Scott Main55d99832012-11-12 23:03:59 -0800401</div><!-- end pax -->
Scott Maindb3678b2012-10-23 14:13:41 -0700402
403
Scott Main55d99832012-11-12 23:03:59 -0800404
Ricardo Cerverafd0be922014-03-25 12:33:33 -0700405
406
Scott Maine4d8f1b2012-06-21 18:03:05 -0700407<script>
smain@google.come0b15d42015-08-19 17:36:57 -0700408
Scott Main55d99832012-11-12 23:03:59 -0800409 if (location.hash == "#Requirements") {
410 $('.reqs').show();
411 } else if (location.hash == "#ExistingIDE") {
412 $('.ide').show();
413 }
Scott Maindb3678b2012-10-23 14:13:41 -0700414
Scott Maine4d8f1b2012-06-21 18:03:05 -0700415 var os;
Scott Main11ac05b2012-11-15 14:57:44 -0800416 var bundlename;
Scott Maindb3678b2012-10-23 14:13:41 -0700417 var $toolslink;
418
smain@google.comd53f0662014-12-03 19:34:55 -0800419 if (navigator.appVersion.indexOf("Mobile")!=-1) {
420 // Do nothing for any "mobile" user agent
421 } else if (navigator.appVersion.indexOf("Win")!=-1) {
Scott Maine4d8f1b2012-06-21 18:03:05 -0700422 os = "Windows";
Scott Main11ac05b2012-11-15 14:57:44 -0800423 bundlename = '#win-bundle';
Scott Maindb3678b2012-10-23 14:13:41 -0700424 $toolslink = $('#win-tools');
Scott Maine4d8f1b2012-06-21 18:03:05 -0700425 } else if (navigator.appVersion.indexOf("Mac")!=-1) {
426 os = "Mac";
Scott Main11ac05b2012-11-15 14:57:44 -0800427 bundlename = '#mac-bundle';
Scott Maindb3678b2012-10-23 14:13:41 -0700428 $toolslink = $('#mac-tools');
smain@google.comd53f0662014-12-03 19:34:55 -0800429 } else if (navigator.appVersion.indexOf("Linux")!=-1 && navigator.appVersion.indexOf("Android")==-1) {
Scott Maine4d8f1b2012-06-21 18:03:05 -0700430 os = "Linux";
Scott Main11ac05b2012-11-15 14:57:44 -0800431 bundlename = '#linux-bundle';
Scott Maindb3678b2012-10-23 14:13:41 -0700432 $toolslink = $('#linux-tools');
Scott Maine4d8f1b2012-06-21 18:03:05 -0700433 }
The Android Open Source Project88b60792009-03-03 19:28:42 -0800434
smain@google.comd53f0662014-12-03 19:34:55 -0800435 if (os != undefined) {
Scott Mainf973ced2012-06-28 11:56:01 -0700436 $('#not-supported').hide();
Scott Maindb3678b2012-10-23 14:13:41 -0700437
Rich Slogarfe4dd522014-11-03 15:16:34 -0800438 /* set up primary Android Studio download button */
smain@google.come0b15d42015-08-19 17:36:57 -0700439 $('.download-bundle-button > .small').html(" for " + os);
smain@google.comd53f0662014-12-03 19:34:55 -0800440 $('.download-bundle-button').click(function() {return onDownload(this,true,true);}).attr('href', bundlename);
Scott Maine4d8f1b2012-06-21 18:03:05 -0700441 }
Ricardo Cerverafd0be922014-03-25 12:33:33 -0700442
443
Scott Main11ac05b2012-11-15 14:57:44 -0800444 function onDownload(link, button, bundle) {
Ricardo Cerverafd0be922014-03-25 12:33:33 -0700445
Scott Main11ac05b2012-11-15 14:57:44 -0800446 /* set text for download button */
Scott Maindb3678b2012-10-23 14:13:41 -0700447 if (button) {
448 $("#downloadForRealz").html($(link).text());
449 } else {
450 $("#downloadForRealz").html("Download " + $(link).text());
Scott Main11ac05b2012-11-15 14:57:44 -0800451 }
Ricardo Cerverafd0be922014-03-25 12:33:33 -0700452
smain@google.comd53f0662014-12-03 19:34:55 -0800453 $("#downloadForRealz").attr('bundle', bundle);
smain@google.comc509cb02015-08-28 16:51:12 -0700454 if (bundle && !button) {
455 $("a#downloadForRealz").attr("name", "#" + $(link).attr('id'));
456 } else {
457 $("a#downloadForRealz").attr("name", $(link).attr('href'));
458 }
Scott Maindb3678b2012-10-23 14:13:41 -0700459
smain@google.comd53f0662014-12-03 19:34:55 -0800460 $("#tos").show();
461 $("#landing").hide();
Scott Maindb3678b2012-10-23 14:13:41 -0700462
smain@google.comd53f0662014-12-03 19:34:55 -0800463 location.hash = "top";
Scott Maindb3678b2012-10-23 14:13:41 -0700464 return false;
465 }
466
467
468 function onAgreeChecked() {
smain@google.comd53f0662014-12-03 19:34:55 -0800469 /* verify that the TOS is agreed */
470 if ($("input#agree").is(":checked")) {
Ricardo Cerverafd0be922014-03-25 12:33:33 -0700471
Scott Main11ac05b2012-11-15 14:57:44 -0800472 /* if downloading the bundle */
473 if ($("#downloadForRealz").attr('bundle')) {
smain@google.comd53f0662014-12-03 19:34:55 -0800474 /* construct the name of the link we want */
475 linkId = $("a#downloadForRealz").attr("name");
Scott Main11ac05b2012-11-15 14:57:44 -0800476 /* set the real url for download */
477 $("a#downloadForRealz").attr("href", $(linkId).attr("href"));
smain@google.comd53f0662014-12-03 19:34:55 -0800478 } else {
479 $("a#downloadForRealz").attr("href", $("a#downloadForRealz").attr("name"));
Scott Main11ac05b2012-11-15 14:57:44 -0800480 }
Ricardo Cerverafd0be922014-03-25 12:33:33 -0700481
Scott Main11ac05b2012-11-15 14:57:44 -0800482 /* reveal the download button */
Scott Maindb3678b2012-10-23 14:13:41 -0700483 $("a#downloadForRealz").removeClass('disabled');
484 } else {
485 $("a#downloadForRealz").addClass('disabled');
486 }
487 }
488
489 function onDownloadForRealz(link) {
smain@google.comd53f0662014-12-03 19:34:55 -0800490 if ($("input#agree").is(':checked')) {
491 location.hash = "";
492 location.hash = "top";
Scott Maindb3678b2012-10-23 14:13:41 -0700493 $("div.sdk-terms").slideUp();
smain@google.comd53f0662014-12-03 19:34:55 -0800494 $("h1#tos-header").text('Now downloading...');
495 $(".sdk-terms-intro").text('You\'ll be redirected to the install instructions in a moment.');
496 $("#sdk-terms-form").fadeOut('slow', function() {
Scott Mainc29b3f52014-05-30 21:18:30 -0700497 setTimeout(function() {
498 if ($("#downloadForRealz").attr('bundle') == 'true') {
smain@google.comd53f0662014-12-03 19:34:55 -0800499 // User downloaded the studio Bundle
500 window.location = "/sdk/installing/index.html?pkg=studio";
Scott Mainc29b3f52014-05-30 21:18:30 -0700501 } else {
502 // User downloaded the SDK Tools
503 window.location = "/sdk/installing/index.html?pkg=tools";
504 }
smain@google.comd53f0662014-12-03 19:34:55 -0800505 }, 3000);
Scott Mainc29b3f52014-05-30 21:18:30 -0700506 });
smain@google.com633f3222014-10-03 15:49:45 -0700507 ga('send', 'event', 'SDK', 'IDE and Tools', $("#downloadForRealz").html());
Scott Maindb3678b2012-10-23 14:13:41 -0700508 return true;
509 } else {
Scott Maindb3678b2012-10-23 14:13:41 -0700510 return false;
511 }
512 }
513
514 $(window).hashchange( function(){
Scott Maindb3678b2012-10-23 14:13:41 -0700515 if (location.hash == "") {
516 location.reload();
517 }
518 });
519
Scott Maina1b358a2010-06-24 16:36:54 -0700520</script>
Scott Maine4d8f1b2012-06-21 18:03:05 -0700521
Scott Maine4d8f1b2012-06-21 18:03:05 -0700522
Scott Maindb3678b2012-10-23 14:13:41 -0700523
524</div><!-- end the wrapper used for relative/absolute positions -->
525<?cs # THIS DIV WAS OPENED IN INDEX.JD ?>
526
527
528
529
Scott Main58286dc2011-01-17 18:23:21 -0800530 <?cs else ?> <?cs # end if online ?>
Scott Maina1b358a2010-06-24 16:36:54 -0700531
Scott Main17e47ad2011-05-27 09:52:19 -0700532 <?cs if:sdk.preview ?><?cs # it's preview offline docs ?>
Scott Maincc089092011-01-17 16:44:10 -0800533 <p>Welcome developers! We are pleased to provide you with a preview SDK for the upcoming
534 Android 3.0 release, to give you a head-start on developing applications for it.
535 </p>
Ricardo Cerverafd0be922014-03-25 12:33:33 -0700536
Scott Maincc089092011-01-17 16:44:10 -0800537 <p>See the <a
538 href="<?cs var:toroot ?>sdk/preview/start.html">Getting Started</a> document for more information
539 about how to set up the preview SDK and get started.</p>
540 <style type="text/css">
541 .non-preview { display:none; }
542 </style>
Ricardo Cerverafd0be922014-03-25 12:33:33 -0700543
Scott Main17e47ad2011-05-27 09:52:19 -0700544 <?cs else ?><?cs # it's normal offline docs ?>
Ricardo Cerverafd0be922014-03-25 12:33:33 -0700545
Scott Maine4d8f1b2012-06-21 18:03:05 -0700546 <?cs ######## HERE IS THE JD DOC CONTENT FOR OFFLINE ######### ?>
547 <?cs call:tag_list(root.descr) ?>
Scott Main17e47ad2011-05-27 09:52:19 -0700548 <style type="text/css">
Scott Maine4d8f1b2012-06-21 18:03:05 -0700549 body .offline { display:block; }
550 body .online { display:none; }
Ricardo Cerverafd0be922014-03-25 12:33:33 -0700551 </style>
Scott Maine4d8f1b2012-06-21 18:03:05 -0700552 <script>
553 $('.reqs').show();
554 </script>
Scott Maincc089092011-01-17 16:44:10 -0800555 <?cs /if ?>
Ricardo Cerverafd0be922014-03-25 12:33:33 -0700556
Scott Main58286dc2011-01-17 18:23:21 -0800557 <?cs /if ?> <?cs # end if/else online ?>
Ricardo Cerverafd0be922014-03-25 12:33:33 -0700558
Scott Maincc089092011-01-17 16:44:10 -0800559<?cs /if ?> <?cs # end if/else NDK ?>
Dirk Dougherty82a28812009-08-05 19:09:16 -0700560
Scott Maincc089092011-01-17 16:44:10 -0800561<?cs /if ?> <?cs # end if/else redirect ?>
Dirk Dougherty82a28812009-08-05 19:09:16 -0700562
The Android Open Source Project88b60792009-03-03 19:28:42 -0800563
The Android Open Source Project88b60792009-03-03 19:28:42 -0800564</div><!-- end jd-content -->
565
Dirk Dougherty19a4bd12009-04-24 11:30:32 -0700566<?cs if:!sdk.redirect ?>
Scott Maincc089092011-01-17 16:44:10 -0800567<?cs include:"footer.cs" ?>
Dirk Dougherty19a4bd12009-04-24 11:30:32 -0700568<?cs /if ?>
569
Scott Maincc089092011-01-17 16:44:10 -0800570</div><!-- end g-unit -->
The Android Open Source Project88b60792009-03-03 19:28:42 -0800571
572<?cs include:"trailer.cs" ?>
573
Dirk Dougherty8f6949b2013-12-03 18:49:24 -0800574<!-- Start of Tag -->
575<script type="text/javascript">
576var axel = Math.random() + "";
577var a = axel * 10000000000000;
578document.write('<iframe src="https://2507573.fls.doubleclick.net/activityi;src=2507573;type=other026;cat=googl348;ord=' + a + '?" width="1" height="1" frameborder="0" style="display:none"></iframe>');
579</script>
580<noscript>
581<iframe src="https://2507573.fls.doubleclick.net/activityi;src=2507573;type=other026;cat=googl348;ord=1?" width="1" height="1" frameborder="0" style="display:none"></iframe>
582</noscript>
583<!-- End of Tag -->
The Android Open Source Project88b60792009-03-03 19:28:42 -0800584</body>
585</html>
586
587
588