Ich versuche, meine App in Android N um eine Schnelleinstellung zu erweitern. Die Schnellkachel wird angezeigt, tut aber nichts, wenn sie angeklickt wird. Ich kann das sichtbare Feedback sehen, wenn ich es berühre, also weiß ich, dass es den Klick erkennt, aber beim Klicken macht es nichts.Schnelleinstellungen Toogle in Android N
Hier ist mein Service-Code:
public class QuickSettingTileService extends TileService {
public QuickSettingTileService()
{
}
@Override
public IBinder onBind(Intent intent)
{
return null;
}
@Override
public int onStartCommand(Intent intent, int flags, int startID)
{
//some setup code is here
return START_STICKY;
}
@Override
public void onClick()
{
Context context = getApplicationContext();
Toast.makeText(context, "Quick Setting Clicked", Toast.LENGTH_SHORT).show();
//Toggle code is here
}
}
Mein Manifest den Code hat fast direkt aus der Dokumentation kopiert. Nur geringfügige Änderungen vorgenommen wurden:
<service
android:name=".QuickSettingTileService"
android:label="@string/app_name"
android:icon="@drawable/quick_toggle_off"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE" />
</intent-filter>
</service>
Der Service beim Öffnen der App gestartet wird:
Intent serviceIntent = new Intent(this, QuickSettingTileService.class);
startService(serviceIntent);
Versuchen Sie, LogCat zu protokollieren, anstatt einen 'Toast' zu verwenden. – CommonsWare