2016-04-06 22 views
0

Ich mache einen Android-Launcher, der im Grunde ein Wrapper für eine andere App ist. Im aktuellen Code wird ein schwarzes Aktivitätsfenster angezeigt, dann wird die andere App angezeigt. Wie kann ich es bekommen, nur um die andere App zu starten?Android Launcher Wrapper Java-Aktivität

StartTerm.java (die Java-Datei Haupttätigkeit)

package tk.jordynsblog.terminal.launcher; 

import android.content.ComponentName; 
import android.content.Intent; 
import android.support.v7.app.AppCompatActivity; 
import android.os.Bundle; 
import android.widget.Toast; 

public class StartTerm extends AppCompatActivity { 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_start_term); 
} 

@Override 
protected void onStart() 
{ 
    super.onStart(); 
    try{ 
     Intent i = new Intent("jackpal.androidterm.RUN_SCRIPT"); 
     i.addCategory(Intent.CATEGORY_DEFAULT); 
     i.putExtra("jackpal.androidterm.iInitialCommand", "echo 'Hi there!'"); 
     startActivity(i); 
    }catch (Exception e) 
    { 
     Toast toast = Toast.makeText(getApplicationContext(), "Jackpals Android terminal emulator is not installed.", 
       Toast.LENGTH_SHORT); 
     toast.show(); 
    } 

} 
} 

Der Rohling Aktivität

enter image description here

Antwort

0

Schritt # 1: Verwenden Sie Theme.Translucent.NoTitleBar, ein UI-weniger Aktivität.

Schritt # 2: setContentView() loswerden.

Schritt # 3: Verschieben Sie Ihren aktuellen Code von onStart() in onCreate(), nach super.onCreate().

Schritt # 4: Rufen Sie finish() am Ende onCreate(), da diese Aktivität nicht mehr nützlich ist, sobald Sie die Aktivität von Drittanbietern gestartet haben.

+0

Danke, das funktioniert perfekt. Jetzt muss ich herausfinden, wie ich diese Frage als gelöst markieren kann. –

+0

@JordynCarattini: Auf der linken Seite der Antwort sollte der Umriss eines Häkchens stehen. Tippen Sie darauf und es wird grün und markiert die Antwort als akzeptiert. – CommonsWare