LoginSignup
3
1

More than 5 years have passed since last update.

Android Things 分析編

Last updated at Posted at 2016-12-28

Overview

Android Things 事始め では、developer preview 1 を Intel Edison for Arduinoで動かしてみました。

こちらのページでは分析をしてみます。

通常のAndroidとの違いは何か?

apk編

edison:/system/app $ ls   
AndroidThings BluetoothMidiService ExtShared HTMLViewer               KeyChain     UserDictionaryProvider WifiSetup 
Bluetooth     CertInstaller        GoogleTTS IoTFrameworkPackageStubs PacProcessor WallpaperBackup        webview

AndroidThings.apkやIoTFrameworkPackagesStubs.apkがありますね。

edison:/system/priv-app $ ls
BackupRestoreConfirmation ExtServices             IoTLauncher          PackageInstaller SettingsProvider    gapps_links 
CalendarProvider          ExternalStorageProvider ManagedProvisioning  PrebuiltGmsCore  SharedStorageBackup 
ContactsProvider          FusedLocation           MediaProvider        Provision        Shell               
DefaultContainerService   GoogleServicesFramework MtpDocumentsProvider ProxyHandler     StatementService    
DownloadProvider          InputDevices            OneTimeInitializer   Settings         TelephonyProvider   

IoTLauncher.apkがありますね。

media_codec.xml

<MediaCodecs>
    <Include href="media_codecs_google_audio.xml" />
</MediaCodecs>

さすがに、audio codecだけみたいです。

com.google.android.things

/system/etc/permissions/iot_features.xml
<permissions>
    <!-- Marks this device as an iot device. -->
    <feature name="android.hardware.type.iot" />

    <!-- Add our com.google.android.things library. -->
    <library name="com.google.android.things"
             file="/system/framework/com.google.android.things.jar" />
</permissions>

ということで、うーーん、uses-featuresでiotを指定できるのと、com.google namespaceなので、libraryはGoogleのproprietary binaryみたいですね。

fonts

/system/fonts $ ls
AndroidClock.ttf   DroidSans.ttf         DroidSansMono.ttf Roboto-Regular.ttf 
DroidSans-Bold.ttf DroidSansFallback.ttf Roboto-Bold.ttf

ということで、さすがに限定されています。

jar

/system/framework $ ls
am.jar                               conscrypt.jar        ims-common.jar                  sm.jar               
android.test.runner.jar              content.jar          input.jar                       svc.jar              
apache-xml.jar                       core-junit.jar       javax.obex.jar                  telecom.jar          
appwidget.jar                        core-libart.jar      media_cmd.jar                   telephony-common.jar 
bmgr.jar                             core-oj.jar          monkey.jar                      uiautomator.jar      
bouncycastle.jar                     dpm.jar              oat                             voip-common.jar      
bu.jar                               ethernet-service.jar okhttp.jar                      wifi-service.jar     
com.android.future.usb.accessory.jar ext.jar              org.apache.http.legacy.boot.jar wm.jar               
com.android.location.provider.jar    framework-res.apk    pm.jar                          x86                  
com.android.media.remotedisplay.jar  framework.jar        requestsync.jar                 
com.android.mediadrm.signer.jar      hid.jar              services.jar                    
com.google.android.things.jar        ime.jar              settings.jar           

というわけで、先のcom.google.android.things.jarですね。特筆すべきは。

public library

system/vendor/etc $ cat public.libraries.txt                                                                   
..snip..
libandroidthings_jni.so
libperipheralman.so

android things関係がやはり追加されています。

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1