Mam aplikację, która jest SingleTask i jest w stanie odsłuchać schemat "testowania".Android onNewIntent z programu uruchamiającego aplikacje daje mi ostatni zamiar
Gdybym kliknij przycisk (patrz kod) I ożywienia siebie i onNewIntent nazywa dając mi „testowania” intencję (Teraz mogę zareagować na to, popychając fragment)
Teraz Jeśli pędzę do domu, a następnie otwórz program uruchamiający aplikację i ponownie wprowadź moją aplikację Chciałbym, żeby nazywać się NewNentent, ale z pustym intencją, ponieważ nie chcę ponownie wykonywać moich działań (na przykład przesuwając fragmenty). Ale na NewCentent daje mi ostatnią intencję, która została wykorzystana do uruchomienia mojej działalności, co jest intencją "testowania".
Co należy zrobić, aby zapobiec popychaniu tego samego fragmentu? Czy jest dobry sposób bez używania własnych identyfikatorów?
public class OnNewIntentTestActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Log.e("", "on create");
((Button) findViewById(R.id.button1)).setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Log.e("", "Relaunch activity");
startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("testing://hello")));
}
});
}
@Override
protected void onNewIntent(Intent intent) {
super.onNewIntent(intent);
Log.e("", "onNewIntent: " + (intent == null? "none" : (intent.getAction() + ":" + intent.getData())));
}
}