{"id":1181,"date":"2022-03-16T03:59:06","date_gmt":"2022-03-16T03:59:06","guid":{"rendered":"https:\/\/es-andreabianchini.it\/andrewsblog\/?p=1181"},"modified":"2022-03-16T04:07:26","modified_gmt":"2022-03-16T04:07:26","slug":"interazione-tra-attivita-ed-apps-in-android","status":"publish","type":"post","link":"https:\/\/es-andreabianchini.it\/andrewsblog\/?p=1181","title":{"rendered":"Interazione tra Attivit\u00e0 ed Apps in Android"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">&#8220;Un Intento \u00e8 un oggetto di messaggistica che puoi utilizzare per richiedere un&#8217;azione da un altro componente dell&#8217;app. Sebbene gli intenti facilitino la comunicazione tra i componenti in diversi modi, esistono tre casi d&#8217;uso fondamentali:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Avvio di un&#8217;attivit\u00e0<br>Un&#8217;attivit\u00e0 rappresenta una singola schermata in un&#8217;app. Puoi avviare una nuova istanza di un&#8217;attivit\u00e0 passando un intento a startActivity(). L&#8217;intento descrive l&#8217;attivit\u00e0 da avviare e trasporta tutti i dati necessari.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Se desideri ricevere un risultato dall&#8217;attivit\u00e0 al termine, chiama startActivityForResult(). La tua attivit\u00e0 riceve il risultato come oggetto Intent separato nel callback onActivityResult() della tua attivit\u00e0. Per ulteriori informazioni, vedere la guida alle attivit\u00e0.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Avvio di un servizio<br>Un servizio \u00e8 un componente che esegue operazioni in background senza un&#8217;interfaccia utente. Con Android 5.0 (livello API 21) e versioni successive, puoi avviare un servizio con JobScheduler. Per ulteriori informazioni su JobScheduler, vedere la relativa documentazione di riferimento API.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Per le versioni precedenti ad Android 5.0 (livello API 21), puoi avviare un servizio usando i metodi della classe Service. Puoi avviare un servizio per eseguire un&#8217;operazione una tantum (come il download di un file) passando un Intento a startService(). L&#8217;intento descrive il servizio da avviare e trasporta tutti i dati necessari.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Se il servizio \u00e8 progettato con un&#8217;interfaccia client-server, \u00e8 possibile eseguire il binding al servizio da un altro componente passando un Intent a bindService(). Per ulteriori informazioni, vedere la Guida ai servizi.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Consegnare una trasmissione<br>Una trasmissione \u00e8 un messaggio che qualsiasi app pu\u00f2 ricevere. Il sistema fornisce varie trasmissioni per eventi di sistema, ad esempio quando il sistema si avvia o il dispositivo inizia a caricarsi. Puoi inviare una trasmissione ad altre app passando un Intent a sendBroadcast() o sendOrderedBroadcast().&#8221;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Esempio:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>public class MainActivity extends AppCompatActivity {\n    public static final String EXTRA_MESSAGE = \"com.example.myfirstapp.MESSAGE\";\n    @Override\n    protected void onCreate(Bundle savedInstanceState) {\n        super.onCreate(savedInstanceState);\n        setContentView(R.layout.activity_main);\n    }\n\n    \/** Called when the user taps the Send button *\/\n    public void sendMessage(View view) {\n        Intent intent = new Intent(this, DisplayMessageActivity.class);\n        EditText editText = (EditText) findViewById(R.id.editTextTextPersonName);\n        String message = editText.getText().toString();\n        intent.putExtra(EXTRA_MESSAGE, message);\n        startActivity(intent);\n    }\n}<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Articolo integrale -&gt; <a href=\"https:\/\/developer.android.com\/guide\/components\/intents-filters\" target=\"_blank\" rel=\"noreferrer noopener\">Intents<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>&#8220;Un Intento \u00e8 un oggetto di messaggistica che puoi utilizzare per richiedere un&#8217;azione da un altro componente dell&#8217;app. Sebbene gli intenti facilitino la comunicazione tra i componenti in diversi modi, esistono tre casi d&#8217;uso fondamentali: Avvio di un&#8217;attivit\u00e0Un&#8217;attivit\u00e0 rappresenta una singola schermata in un&#8217;app. Puoi avviare una nuova istanza di un&#8217;attivit\u00e0 passando un intento a &hellip; <a href=\"https:\/\/es-andreabianchini.it\/andrewsblog\/?p=1181\" class=\"more-link\">Leggi tutto<span class=\"screen-reader-text\"> &#8220;Interazione tra Attivit\u00e0 ed Apps in Android&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[15,7],"tags":[],"class_list":["post-1181","post","type-post","status-publish","format-standard","hentry","category-android","category-stem"],"_links":{"self":[{"href":"https:\/\/es-andreabianchini.it\/andrewsblog\/index.php?rest_route=\/wp\/v2\/posts\/1181","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/es-andreabianchini.it\/andrewsblog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/es-andreabianchini.it\/andrewsblog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/es-andreabianchini.it\/andrewsblog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/es-andreabianchini.it\/andrewsblog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1181"}],"version-history":[{"count":2,"href":"https:\/\/es-andreabianchini.it\/andrewsblog\/index.php?rest_route=\/wp\/v2\/posts\/1181\/revisions"}],"predecessor-version":[{"id":1183,"href":"https:\/\/es-andreabianchini.it\/andrewsblog\/index.php?rest_route=\/wp\/v2\/posts\/1181\/revisions\/1183"}],"wp:attachment":[{"href":"https:\/\/es-andreabianchini.it\/andrewsblog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1181"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/es-andreabianchini.it\/andrewsblog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1181"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/es-andreabianchini.it\/andrewsblog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1181"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}