1 <h1>Getting Started with ARC
</h1>
4 The App Runtime for Chrome (Beta), or ARC, lets you run your favorite
5 Android apps on Chrome OS. By following these steps, you can try out the
<a
6 href=
"http://goo.gl/pkt6HV">App Runtime for Chrome (Beta)
</a> during this
11 To test your app, you need three things:
14 <li> PC, Mac, Linux, or Chromebook on Chrome Version
41+.
</li>
15 <li> <a href=
"http://goo.gl/gAn0Xh">The ARC Welder app
</a>.
</li>
19 <h2 id=
"test">Test your app
</h2>
22 Open ARC Welder, attach your APK, and select your options. Click
<strong>Launch
23 App
</strong> to test your app. When testing,
<a href=
"http://goo.gl/megdlG">file
24 a bug
</a> if something doesn't work, or
25 <a href=
"http://stackoverflow.com/questions/tagged/google-chrome-arc">find us
26 on Stack Overflow
</a> (tag: google-chrome-arc) for help.
29 <h2 id=
"upload">Upload your app
</h2>
32 In ARC Welder, click
<strong>Download ZIP
</strong>. Upload your ZIP file to the
33 Chrome Web Store. See
<a href=
"/webstore/publish">Publishing Your App
</a> for
37 <h2 id=
"bestpractices">Best practices
</h2>
40 When testing your APK on ARC, developers have passed along these helpful tips:
44 Use
<em>Tablet
</em> or
<em>Maximized
</em> for your form factor and
45 <em>Landscape
</em> for your orientation.
47 <li>Be sure your app works well for touch and non-touch Chromebooks.
</li>
49 If you need to check if your app is running on Chrome OS, look for
50 <em>chromium
</em> as the
<code>android.os.Build.BRAND
</code> and
51 <code>android.os.Build.MANUFACTURER
</code>.
53 <li>Getting logs:
</li>
56 On a PC, you can get logs from your app by running
57 <code>plugin.shell('adbd')
</code> in the JavaScript console
58 (chrome://inspect/#apps) and then running either
<code>adb logcat
</code>
59 or
<code>adb pull /data/data/package_name/path/to/your/log.txt
</code> from
60 the Android SDK tools.
63 On a Chromebook, where adb isn't available right now, run either
64 <code>plugin.shell('logcat')
</code> or
<code>plugin.shell('cat
65 /data/data/package_name/path/to/your/log.txt')
</code> directly in the
66 JavaScript console (chrome://inspect/#apps).
69 If the app crashes and you can't get logs using logcat, try collecting
70 <a href=
"/native-client/devguide/devcycle/debugging#debugging-with-printf">
71 stdout and stderr from Chrome/NaCl
</a>. On ChromeOS, you can get these
72 logs from chrome://system/ and expanding
<em>ui_log
</em>.
75 Javascript console logs sometimes contain relevant information. There are
76 two contexts, the background page (chrome://extensions, enable Developer
77 Mode, select app_main.html for your app), and the app window
78 (chrome://inspect/#apps).
82 To enable Google Play services,
<a href=
"arc_playservices">read more
</a>.
85 Since ARC is in Beta, it doesn't support all of Google Play Services yet.
86 However, here are some available APIs:
90 <a href=
"http://developer.android.com/reference/com/google/android/gms/auth/GoogleAuthUtil.html">
94 <a href=
"https://developer.android.com/google/gcm/index.html">GCM
</a>
97 <a href=
"https://developer.android.com/google/play-services/plus.html">
101 <a href=
"https://developer.android.com/google/play-services/maps.html">
105 <a href=
"https://developer.android.com/google/play-services/location.html">
109 <a href=
"https://developer.android.com/google/play-services/ads.html">
114 To ensure compatibility with all users, package and test your app on the
<a
115 href=
"https://support.google.com/chromebook/answer/1086915?hl=en&source=genius-rts">Chromebook
119 To use in-app payments,
<a href=
"arc_in_app_payments.html">read more
</a>.