Samsung SDK (Android)

Aus Byte-Welt Wiki
Zur Navigation springenZur Suche springen

Hier wird beschrieben, wie man Features aus dem Samsung SDK für Android verwenden kann. Alles nachfolgende setzt also voraus, dass ihr ein Gerät (Smartphone/Tablet) von Samsung besitzt und dieses auch die beschriebene Funktionalität unterstützt. Eine Zusammenfassung davon kann hier gefunden werden: http://developer.samsung.com/samsung-mobile-sdk/sdk

Multi-Window

Samsung bietet an, 2 Activitys zur gleichen Zeit offen haben zu können. Zusätzlich existiert noch Leiste in der Apps gelistet werden können, die entsprechende Funktionalität unterstützen. Hier wird sowohl beschrieben wie ihr in eurer App entsprechende Unterstützung schafft.

Multi-Window Voraussetzung

Android 4.1 (16) oder höher

Multi-Window-Leiste

Diese Leiste ist vergleichbar mit dem Android-Launcher, einziger Unterschied: Ihr könnt nur eine Activity aus eurer App in der Leiste anzeigen lassen. Die Multi-Window-Leiste findet eure Activity über den Intent-Filter (welcher in der AndroidManifest.xml gesetzt wird). Dieser Filter enthält alle Elemente, die auch für den Launcher wichtig sind + eine weitere Kategory: <code=xml> <activity

   android:name="de.jfruit.ssdk.MainActivity"
   android:label="@string/app_name" 
   >
   <intent-filter>
       <action android:name="android.intent.action.MAIN" />        
       
       <category android:name="android.intent.category.LAUNCHER" />
       <category android:name="android.intent.category.MULTIWINDOW_LAUNCHER" />        
   </intent-filter>            

</activity> </code=xml>

Das bedeutet: die Activity die Ihr in der Leiste haben wollt ist zwingend auch im Launcher verfügbar. An dieser Stelle ist eure App allerdings erst zu 50% Multi-Window-Fähig!

Multi-Window-Ansicht

Damit eure App auch wirklich Multi-Window-Fähig ist bedarf es einer weiteren Anpassung eurer Manifest-Datei. Dazu müsst ihr zunächst angeben, dass eine weitere Library verwendet werden soll und einen entsprechenden Meta Eintrag: <code=xml> <uses-library android:name="com.sec.android.app.multiwindow" android:required="false" /> <meta-data android:name="com.sec.android.support.multiwindow" android:value="true"/> </code=xml>

Diese beiden Zeilen müssen innerhalb des application-Tags eingetragen werden. Nach diesen Zeilen habt ihr die Unterstützung vollständig implementiert und der Anwender kann eure App in der Multi-Window-Ansicht verwenden. Hier nochmals ein komplettes Beispiel, wie eure AndroidMainfest.xml aussehen könnte: <code=xml> <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android"

   package="de.jfruit.ssdk"
   android:versionCode="1"
   android:versionName="1.0" >
   <uses-sdk
       android:minSdkVersion="14"
       android:targetSdkVersion="18" />
   <application
       android:allowBackup="true"
       android:icon="@drawable/ic_launcher"
       android:label="@string/app_name"
       android:theme="@style/AppTheme">               
               

<uses-library android:name="com.sec.android.app.multiwindow" android:required="false" /> <meta-data android:name="com.sec.android.support.multiwindow" android:value="true"/>

<activity android:name="de.jfruit.ssdk.MainActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.MULTIWINDOW_LAUNCHER" /> <category android:name="android.intent.category.LAUNCHER" />

</intent-filter> </activity>

   </application>

</manifest>

</code=xml>