我正在从
eclipse运行应用程序并且它正在启动两次:第一次启动应用程序,然后在几秒钟后再次重新启动
我的应用程序启动画面—>>主要活动(两次开放).
我已经尝试在我的清单文件中添加android:launchMode =“singleInstance”,但没有成功.
我已经尝试了3个不同的应用程序,我的日食仍然在我的Kitkat,棒棒糖真实设备中打开两次(创建了一个也打开两次的新项目)
编辑1:
尝试在清单文件中添加此行但不是Success-android:launchMode =“singleTop”
请让我知道如何解决这个问题.
清单文件:
<application android:allowBackup="true" android:icon="@drawable/logo" android:label="@string/app_name" android:largeHeap="true" android:launchMode="singleInstance" android:theme="@style/AppTheme2" > <activity android:name=".Start" android:label="@string/app_name" android:screenOrientation="portrait" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name=".MainActivity" android:screenOrientation="portrait" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.DEFAULT" /> </intent-filter> </activity> </application>
我的开始是Activity.java
public class Start extends Activity { SessionManagerFor_Signin session; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // Session class instance session = new SessionManagerFor_Signin(getApplicationContext()); // Remove the Title Bar requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.start); ImageView Image1=(ImageView)findViewById(R.id.imageView1); //Animation Bottom to Top TranslateAnimation animation2 = new TranslateAnimation(0.0f,0.0f,400.0f,0.0f); animation2.setDuration(1000); animation2.setFillAfter(false); Image1.startAnimation(animation2); Thread timer = new Thread() { @Override public void run() { try { sleep(3000); } catch (InterruptedException e) { e.printStackTrace(); } finally { session.checkLogin(); finish(); } } }; timer.start(); //For Full Action bar Color Starts if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { setTranslucentStatus(true); } SystemBarTintManager tintManager = new SystemBarTintManager(this); tintManager.setStatusBarTintEnabled(true); tintManager.setStatusBarTintResource(R.color.FUllStartColor); //For Full Action bar Color Ends here } @TargetApi(19) private void setTranslucentStatus(boolean on) { Window win = getWindow(); WindowManager.LayoutParams winParams = win.getAttributes(); final int bits = WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS; if (on) { winParams.flags |= bits; } else { winParams.flags &= ~bits; } win.setAttributes(winParams); }
解决方法
从以下两个活动之一中删除它:
<intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter>
此intent-filter指示Android是主要活动,您应该只有一个.