Android 7.1 Nougat ha portato principalmente le scorciatoie sulla homescreen su tutti i Nexus e Google Pixel: gli sviluppatori di launcher che vogliono far provare questa curiosa novità anche su smartphone non-Nougat, possono dare un’occhiata alla nuova libreria di Michele Lacorte.
Lo sviluppatore italiano, infatti, ha pensato di mettere a disposizione una libreria open-source per tutti i programmatori che vogliono aggiungere le scorciatoie di Nougat nel proprio launcher.
AndroidShortcuts è compatibile fino a dispositivi con livello 14 di API e funziona proprio come l’implementazione originale: potete trovarne un esempio nella GIF sottostante.
Il funzionamento è molto semplice e di facile comprensione: dal Gradle basterà aggiungere una dependecy e la relativa repository mentre gli oggetti da utilizzare sono principalmente ShortcutsCreation, che crea l’effettiva scorciatoia, e GestureDetector che invece associa ogni evento (listener) del touch ad un’azione da intraprendere.
Nel metodo onLongPress, ad esempio, viene richiamata una funziona che crea una “Shortcuts”, gli associa un’animazione e mostra un avviso Toast al click. Sotto trovate lo snippet:
public void onLongPress(MotionEvent motionEvent) { //Make sure to clear layout before create new shortcutsCreation.clearAllLayout(); //Now create shortcuts!! shortcutsCreation.createShortcuts((int)motionEvent.getX(), (int)motionEvent.getY(), 96, new Shortcuts(R.mipmap.ic_launcher, "Shortcuts", new View.OnClickListener() { @Override public void onClick(View view) { Toast.makeText(getApplicationContext(), "Hello Shortcuts!!", Toast.LENGTH_LONG).show(); } }), new Shortcuts(R.mipmap.ic_launcher, "Hello!")); }
Insomma, se avete sviluppato un launcher e siete interessati a inserire questa nuova feature, potete dare un’occhiata a questa libreria di Michele Lacorte. Qui sotto trovate il progetto su GitHub: