Secondo i documenti Android Il nome extra Intent deve avere un prefisso del pacchetto. Ho usato Intent nomi extra senza prefissi per molto tempo e sembra che non ci siano possibilità di collisione poiché ciò che conta davvero è l'azione Intent che è unica. Quindi i documenti hanno torto o mi manca qualcosa?Perché i documenti Android dicono che gli intenti extra hanno bisogno del prefisso del pacchetto
la documentazione per putExtra dicono:
Aggiungi dati estesi per l'intento. Il nome deve includere un prefisso del pacchetto, ad esempio l'app com.android.contacts utilizzerà nomi come "com.android.contacts.ShowAll".
Non potresti fornire semplicemente il pacchetto come extra? In casi come questi sembra che sia meglio controllare prima il pacchetto di origine e poi gestire gli extra in base a ciò, a meno che alcune delle tue attività di invio possano aggiungere extra con il significato di altre attività di invio (il che potrebbe risultare molto confuso, ma potrebbe essere utile se stai impostando una sorta di attività o servizio proxy che manipola gli extra degli Intenti che passa avanti). – JAB
Sono d'accordo con @JAB. L'impostazione predefinita non è che non si gestiscono i dati di intenti "extra" in modo diverso in base al richiedente, ma se si dovesse farlo, è necessario fornire un nome pacchetto come intento "extra" aggiuntivo dati in modo da poter facilmente distinguere ** e ** validare? –
Potresti fornire e richiedere il nome del tuo pacchetto come un altro extra e questo manterrebbe la tua app sicura, ma le altre app non controllerebbero questo extra non standard. Pertanto, se utilizzi un'azione di pubblica intenzione e non completi tutti i nomi extra non standard, potresti rompere altre app. – satur9nine