我有一个小应用程序,我一直在努力。我希望全新的安装可以从我的Galaxy Nexus运行的4.2.1版本运行。我卸载了应用程序,然后尝试通过eclipse重新安装。它安装很好,没有错误logcat,控制台等...但是当你点击运行应用程序,它只是在打开时关闭。我已经在2种不同的手机上尝试过这个,同样的事情。开发Android应用程序安装正常后卸载不会重新安装
在Galaxy Nexus上,如果我在卸载之前恢复我的ROM,我可以从eclipse运行它,只需要它。只有在卸载并重新安装之后,我才能关闭这个部队。它安装在ROM备份上。
有什么想法?我怎么知道这里发生了什么?
编辑:::
活动仅在清单中声明,一旦...
试图改变版本号......没有影响
增加了一些Log.e(),以在MainActivity :
protected void onCreate(Bundle savedInstanceState) {
Log.e(TAG,"STARTING APP");
super.onCreate(savedInstanceState);
// show no back arrow
Log.e(TAG,"AFTER ONCREATE");
setContentView(R.layout.activity_firstload);
Log.e(TAG,"AFTER SETCONTENTVIEW");
getPrefs();
Log.e(TAG,"GET PREFS");
finish();
Log.e(TAG,"AFTER FINISH");
}
,显示在logcat的唯一标签是 “AFTER FINISH”
如果我摆脱完成,MainActivity保持打开状态。所有主要活动都是检查首选项。这里是我的GetPrefs()
private void getPrefs() {
// Get the xml/preferences.xml preferences
Log.e(TAG,"GET PREFS 1");
SharedPreferences prefs = PreferenceManager
.getDefaultSharedPreferences(getBaseContext());
lp = prefs.getString("defaultreport", "");
Log.v(TAG, lp);
if (lp.equals("esac")) {
// Toast.makeText(MainActivity.this, "ESAC", Toast.LENGTH_SHORT)
// .show();
Intent i = new Intent(MainActivity.this, ESACActivity.class);
startActivity(i);
} else if (lp.equals("sac")) {
// Toast.makeText(MainActivity.this, "SAC", Toast.LENGTH_SHORT)
// .show();
Intent i = new Intent(MainActivity.this, SACActivity.class);
startActivity(i);
} else if (lp.equals("msar")) {
// Toast.makeText(MainActivity.this, "MSAR", Toast.LENGTH_SHORT)
// .show();
Intent i = new Intent(MainActivity.this, MSARActivity.class);
startActivity(i);
}
}
AH >>>可能已经找到了一些东西。首选项设置为“”(空),那么它会加载什么?!所以我需要一个屏幕,询问他们想在第一次运行我猜设置哪些...
编辑编辑:::需要检查在偏好设置第一次运行...
if (prefs.getString("defaultreport", null) == null)
{
startActivity(new Intent(this, Preferences.class));
return;
}
当您尝试运行它时,是否有任何错误发生? – 2013-02-14 23:09:43
我什么都看不到。这是疯狂的一部分!我清除了LogCat ...没有显示。我清除了控制台和正常的东西显示...错误日志中没有错误...没有! – jasonflaherty 2013-02-14 23:16:01
尝试在ur mainActivity的onCreate开头添加日志 – AAnkit 2013-02-14 23:18:53