java – Android错误:应用程序意外停止请再试一次
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java – Android错误:应用程序意外停止请再试一次,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含7076字,纯文字阅读大概需要11分钟。
内容图文
![java – Android错误:应用程序意外停止请再试一次](/upload/InfoBanner/zyjiaocheng/751/56504ba33bd64b27962fa86d7d33301a.jpg)
我做了一个工作正常的应用程序.它显示应用程序启动的次数.这是代码:
import android.app.Activity;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.preference.PreferenceManager;
import android.widget.TextView;
public class PreferencesDemo extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// Get the app's shared preferences
SharedPreferences app_preferences =
PreferenceManager.getDefaultSharedPreferences(this);
// Get the value for the run counter
int counter = app_preferences.getInt("counter", 0);
// Update the TextView
TextView text = (TextView) findViewById(R.id.text);
text.setText("This app has been started " + counter + " times.");
// Increment the counter
SharedPreferences.Editor editor = app_preferences.edit();
editor.putInt("counter", ++counter);
editor.commit(); // Very important
}
}
如果我将int变量更改为string,则会抛出错误消息:“app已意外停止..请稍后再试”.这是抛出错误的代码:
import android.app.Activity;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.preference.PreferenceManager;
import android.widget.TextView;
public class pref extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
String c = prefs.getString("c", "hello");
TextView t = (TextView)findViewById(R.id.te);
t.append(c);
SharedPreferences.Editor edit = prefs.edit();
edit.putString("c", "There");
edit.commit();
}
}
有谁能告诉我哪里出错了?提供:我在main.xml文件中正确提到了textview.
以下是LogCat详细信息:
07-11 15:49:12.908: DEBUG/AndroidRuntime(521): >>>>>>>>>>>>>> AndroidRuntime START <<<<<<<<<<<<<<
07-11 15:49:12.918: DEBUG/AndroidRuntime(521): CheckJNI is ON
07-11 15:49:15.459: DEBUG/AndroidRuntime(521): --- registering native functions ---
07-11 15:49:19.049: DEBUG/AndroidRuntime(521): Shutting down VM
07-11 15:49:19.049: DEBUG/dalvikvm(521): Debugger has detached; object registry had 1 entries
07-11 15:49:19.079: INFO/AndroidRuntime(521): NOTE: attach of thread 'Binder Thread #4' failed
07-11 15:49:20.349: DEBUG/AndroidRuntime(530): >>>>>>>>>>>>>> AndroidRuntime START <<<<<<<<<<<<<<
07-11 15:49:20.359: DEBUG/AndroidRuntime(530): CheckJNI is ON
07-11 15:49:20.739: DEBUG/AndroidRuntime(530): --- registering native functions ---
07-11 15:49:22.492: INFO/ActivityManager(68): Starting activity: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10000000 cmp=com.webkul.pref/.pref }
07-11 15:49:26.996: WARN/ActivityManager(68): Activity pause timeout for HistoryRecord{43f1d590 com.android.launcher/com.android.launcher2.Launcher}
07-11 15:49:27.484: DEBUG/AndroidRuntime(530): Shutting down VM
07-11 15:49:27.619: DEBUG/dalvikvm(530): Debugger has detached; object registry had 1 entries
07-11 15:49:28.649: INFO/ActivityManager(68): Start proc com.webkul.pref for activity com.webkul.pref/.pref: pid=537 uid=10038 gids={}
07-11 15:49:31.339: DEBUG/AndroidRuntime(537): Shutting down VM
07-11 15:49:31.339: WARN/dalvikvm(537): threadid=1: thread exiting with uncaught exception (group=0x4001d800)
07-11 15:49:31.438: ERROR/AndroidRuntime(537): FATAL EXCEPTION: main
07-11 15:49:31.438: ERROR/AndroidRuntime(537): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.webkul.pref/com.webkul.pref.pref}: java.lang.ClassCastException: java.lang.Integer
07-11 15:49:31.438: ERROR/AndroidRuntime(537): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
07-11 15:49:31.438: ERROR/AndroidRuntime(537): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
07-11 15:49:31.438: ERROR/AndroidRuntime(537): at android.app.ActivityThread.access$2300(ActivityThread.java:125)
07-11 15:49:31.438: ERROR/AndroidRuntime(537): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
07-11 15:49:31.438: ERROR/AndroidRuntime(537): at android.os.Handler.dispatchMessage(Handler.java:99)
07-11 15:49:31.438: ERROR/AndroidRuntime(537): at android.os.Looper.loop(Looper.java:123)
07-11 15:49:31.438: ERROR/AndroidRuntime(537): at android.app.ActivityThread.main(ActivityThread.java:4627)
07-11 15:49:31.438: ERROR/AndroidRuntime(537): at java.lang.reflect.Method.invokeNative(Native Method)
07-11 15:49:31.438: ERROR/AndroidRuntime(537): at java.lang.reflect.Method.invoke(Method.java:521)
07-11 15:49:31.438: ERROR/AndroidRuntime(537): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
07-11 15:49:31.438: ERROR/AndroidRuntime(537): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
07-11 15:49:31.438: ERROR/AndroidRuntime(537): at dalvik.system.NativeStart.main(Native Method)
07-11 15:49:31.438: ERROR/AndroidRuntime(537): Caused by: java.lang.ClassCastException: java.lang.Integer
07-11 15:49:31.438: ERROR/AndroidRuntime(537): at android.app.ContextImpl$SharedPreferencesImpl.getString(ContextImpl.java:2699)
07-11 15:49:31.438: ERROR/AndroidRuntime(537): at com.webkul.pref.pref.onCreate(pref.java:17)
07-11 15:49:31.438: ERROR/AndroidRuntime(537): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
07-11 15:49:31.438: ERROR/AndroidRuntime(537): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
07-11 15:49:31.438: ERROR/AndroidRuntime(537): ... 11 more
07-11 15:49:31.646: WARN/ActivityManager(68): Force finishing activity com.webkul.pref/.pref
07-11 15:49:34.053: DEBUG/dalvikvm(68): GC_FOR_MALLOC freed 13421 objects / 615120 bytes in 1300ms
07-11 15:49:34.129: WARN/ActivityManager(68): Activity pause timeout for HistoryRecord{43fd3ee8 com.webkul.pref/.pref}
07-11 15:49:34.739: WARN/ActivityManager(68): Launch timeout has expired, giving up wake lock!
07-11 15:49:37.479: INFO/Process(537): Sending signal. PID: 537 SIG: 9
07-11 15:49:37.559: WARN/InputManagerService(68): Window already focused, ignoring focus gain of: com.android.internal.view.IInputMethodClient$Stub$Proxy@43ebfa20
07-11 15:49:37.779: INFO/ActivityManager(68): Process com.webkul.pref (pid 537) has died.
07-11 15:49:37.889: DEBUG/SntpClient(68): request time failed: java.net.SocketException: Address family not supported by protocol
07-11 15:49:46.680: WARN/ActivityManager(68): Activity destroy timeout for HistoryRecord{43fd3ee8 com.webkul.pref/.pref}
解决方法:
您需要了解如何在Eclipse中进行调试以及如何使用ADB和DDMS工具.
为了获得有关异常/强制关闭的更多详细信息,您需要在Eclipse中查找名为Logcat的视图(您将在DDMS透视图中找到),您将在何时/什么以及在哪个行上找到详细的回溯问题.
为此你应该阅读一篇关于Debugging in Android using Eclipse的完整文章
alt text http://www.droidnova.com/blog/wp-content/uploads/2009/09/debugging-3.gif
编辑
它说清楚是什么问题造成的:java.lang.ClassCastException:getString上的java.lang.Integer
内容总结
以上是互联网集市为您收集整理的java – Android错误:应用程序意外停止请再试一次全部内容,希望文章能够帮你解决java – Android错误:应用程序意外停止请再试一次所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。