我希望得到一些关于通过Eclipse在Android手机上加载和启动应用程序之间的差异的一般提示,并且只需在强制停止后单击该应用程序。情况就是这样。
我有一个与源代码一起继承的应用程序。当我通过“Debug as ...”或“Run as ...”从Eclipse构建和传输代码时,一切正常。今天,我决定尝试在应用程序上执行Force Stop。停了。当我双击它时,很明显一切都不好。我还在调查,但它看起来像SharedPreferences,也许其他东西搞砸了。我的问题是这个。通过Eclipse下载只是从设备本身启动不起作用的是什么?有没有办法像Eclipse一样复制“干净启动”?我在强制停止的菜单中尝试了“清除数据”和“清除缓存”。
我意识到这是一个广泛的问题。我希望有人可能有'啊哈!'让我进行更多研究的想法。
谢谢, 戴夫
答案 0 :(得分:0)
Arrghh ......这个问题之前让我绊倒了。整个问题是我引入了这一行:
android.os.Debug.waitForDebugger();
以便调试应用程序正在使用的服务。那就是我:
@Override
public IBinder onBind(Intent intent) {
android.os.Debug.waitForDebugger();
ComponentName name = intent.getComponent();
String packageName = name.getPackageName();
return mMessenger.getBinder();
}
据我所知,如果不这样做,就无法调试服务的早期设置部分。无论如何,当然当你只是强行停止手机上的应用程序并启动它时,它就会挂起(waitForDebugger)。如果你从Eclipse运行,没有问题,因为调试器就在那里!感谢关于这个问题的所有观察和/或评论。