当我启动我的apk文件后,给出错误

时间:2014-02-21 02:41:49

标签: java android xml eclipse android-layout

当我按照错误消息运行我的应用程序时,它会给出:

Unfortunately appName has stopped error 

我有以下MainActivity.java文件:

     package com.shubhammyapp1.myapp1;
     import android.os.Bundle;
     import android.app.Activity;
     import android.view.Menu;
     import android.view.View;
     import android.view.View.OnClickListener;
     import android.widget.*;
     public class MainActivity extends Activity {
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Button b = (Button)findViewById(R.id.button1);
        b.setOnClickListener((OnClickListener) this);
}

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
            getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }
    public void onClick(View arg0) {
        EditText et1= (EditText)findViewById(R.id.ocinb);
        EditText et2= (EditText)findViewById(R.id.ocint);
    TextView tv1= (TextView) findViewById(R.id.textView1);
    Double ocb=Double.parseDouble(et1.getText().toString());
    Double oct=Double.parseDouble(et2.getText().toString());
    Double ocr;
    ocr=(ocb-oct)*0.15;

    tv1.setText("The %OC is"+ocr);
    }
}

/ *我的activiti_main.xml * /

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

    <TextView
    android:id="@+id/textView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentTop="true"
    android:layout_marginTop="37dp"
    android:text="1.Organic Carbon" />

    <LinearLayout
    android:id="@+id/linearLayout1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/ocinb"
    android:layout_alignRight="@+id/ocinb"
    android:layout_marginRight="33dp"
    android:orientation="vertical" >
    </LinearLayout>

    <TextView
    android:id="@+id/textView6"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignBottom="@+id/ocinb"
    android:layout_alignLeft="@+id/textView1"
    android:layout_below="@+id/ocinb"
    android:layout_marginLeft="36dp"
    android:text="B=" />

    <EditText
    android:id="@+id/ocinb"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignRight="@+id/ocint"
    android:layout_below="@+id/textView1"
    android:layout_marginTop="36dp"
    android:layout_toRightOf="@+id/textView6"
    android:ems="5"
    android:inputType="numberSigned|numberDecimal" />

    <EditText
    android:id="@+id/ocint"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/ocinb"
    android:layout_marginTop="36dp"
    android:layout_toRightOf="@+id/textView6"
    android:ems="5"
    android:inputType="numberSigned|numberDecimal" />

    <TextView
    android:id="@+id/textView3"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignBaseline="@+id/ocinb"
    android:layout_alignBottom="@+id/ocinb"
    android:layout_alignLeft="@+id/textView1"
    android:layout_marginLeft="15dp"
    android:text="B=" />

    <TextView
    android:id="@+id/textView7"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignBaseline="@+id/ocint"
    android:layout_alignBottom="@+id/ocint"
    android:layout_alignLeft="@+id/textView3"
    android:text="T=" />

    <Button
    android:id="@+id/button1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/ocint"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="40dp"
    android:onClick="show"
    android:text="Result" />

    <TextView
    android:id="@+id/textView2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_marginBottom="55dp"
    android:layout_toRightOf="@+id/textView1"
    android:text="TextView" />

    </RelativeLayout>

/ 我的Androidmanifest.xml文件 /

    <?xml version="1.0" encoding="utf-8"?>
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.shubhammyapp1.myapp1"
android:versionCode="1"
android:versionName="1.0" >

    <uses-sdk
    android:minSdkVersion="9"
    android:targetSdkVersion="17" />

    <application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >
    <activity
  android:name="com.shubhammyapp1.MainActivity"
  android:label="@string/app_name" >


            <intent-filter>
            <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

 </manifest>

错误logcat:

02-14 12:07:36.773: W/dalvikvm(2415): PR_CAPBSET_DROP 0 failed: Invalid argument.                   Please make sure your kernel is compiled with file capabilities support enabled.
02-14 12:07:36.773: W/dalvikvm(2415): PR_CAPBSET_DROP 1 failed: Invalid argument. Please make sure your kernel is compiled with file capabilities support enabled.
02-14 12:07:36.773: W/dalvikvm(2415): PR_CAPBSET_DROP 2 failed: Invalid argument. Please make sure your kernel is compiled with file capabilities support enabled.
02-14 12:07:36.773: W/dalvikvm(2415): PR_CAPBSET_DROP 3 failed: Invalid argument. Please make sure your kernel is compiled with file capabilities support enabled.
02-14 12:07:36.773: W/dalvikvm(2415): PR_CAPBSET_DROP 4 failed: Invalid argument. Please make sure your kernel is compiled with file capabilities support enabled.
02-14 12:07:36.773: W/dalvikvm(2415): PR_CAPBSET_DROP 5 failed: Invalid argument. Please make sure your kernel is compiled with file capabilities support enabled.
02-14 12:07:36.773: W/dalvikvm(2415): PR_CAPBSET_DROP 6 failed: Invalid argument. Please make sure your kernel is compiled with file capabilities support enabled.
02-14 12:07:36.773: W/dalvikvm(2415): PR_CAPBSET_DROP 7 failed: Invalid argument. Please make sure your kernel is compiled with file capabilities support enabled.
02-14 12:07:36.773: W/dalvikvm(2415): PR_CAPBSET_DROP 8 failed: Invalid argument. Please make sure your kernel is compiled with file capabilities support enabled.
02-14 12:07:36.773: W/dalvikvm(2415): PR_CAPBSET_DROP 9 failed: Invalid argument. Please make sure your kernel is compiled with file capabilities support enabled.
02-14 12:07:36.773: W/dalvikvm(2415): PR_CAPBSET_DROP 10 failed: Invalid argument. Please make sure your kernel is compiled with file capabilities support enabled.
02-14 12:07:36.773: W/dalvikvm(2415): PR_CAPBSET_DROP 11 failed: Invalid argument. Please make sure your kernel is compiled with file capabilities support enabled.
02-14 12:07:36.773: W/dalvikvm(2415): PR_CAPBSET_DROP 12 failed: Invalid argument. Please make sure your kernel is compiled with file capabilities support enabled.
02-14 12:07:36.773: W/dalvikvm(2415): PR_CAPBSET_DROP 13 failed: Invalid argument. Please make sure your kernel is compiled with file capabilities support enabled.
02-14 12:07:36.773: W/dalvikvm(2415): PR_CAPBSET_DROP 14 failed: Invalid argument. Please make sure your kernel is compiled with file capabilities support enabled.
02-14 12:07:36.773: W/dalvikvm(2415): PR_CAPBSET_DROP 15 failed: Invalid argument. Please make sure your kernel is compiled with file capabilities support enabled.
02-14 12:07:36.773: W/dalvikvm(2415): PR_CAPBSET_DROP 16 failed: Invalid argument. Please make sure your kernel is compiled with file capabilities support enabled.
02-14 12:07:36.773: W/dalvikvm(2415): PR_CAPBSET_DROP 17 failed: Invalid argument. Please make sure your kernel is compiled with file capabilities support enabled.
02-14 12:07:36.773: W/dalvikvm(2415): PR_CAPBSET_DROP 18 failed: Invalid argument. Please make sure your kernel is compiled with file capabilities support enabled.
02-14 12:07:36.773: W/dalvikvm(2415): PR_CAPBSET_DROP 19 failed: Invalid argument. Please make sure your kernel is compiled with file capabilities support enabled.
02-14 12:07:36.773: W/dalvikvm(2415): PR_CAPBSET_DROP 20 failed: Invalid argument. Please make sure your kernel is compiled with file capabilities support enabled.
02-14 12:07:36.773: W/dalvikvm(2415): PR_CAPBSET_DROP 21 failed: Invalid argument. Please make sure your kernel is compiled with file capabilities support enabled.
02-14 12:07:36.773: W/dalvikvm(2415): PR_CAPBSET_DROP 22 failed: Invalid argument. Please make sure your kernel is compiled with file capabilities support enabled.
02-14 12:07:36.773: W/dalvikvm(2415): PR_CAPBSET_DROP 23 failed: Invalid argument. Please make sure your kernel is compiled with file capabilities support enabled.
02-14 12:07:36.773: W/dalvikvm(2415): PR_CAPBSET_DROP 24 failed: Invalid argument. Please make sure your kernel is compiled with file capabilities support enabled.
02-14 12:07:36.773: W/dalvikvm(2415): PR_CAPBSET_DROP 25 failed: Invalid argument. Please make sure your kernel is compiled with file capabilities support enabled.
02-14 12:07:36.773: W/dalvikvm(2415): PR_CAPBSET_DROP 26 failed: Invalid argument. Please make sure your kernel is compiled with file capabilities support enabled.
02-14 12:07:36.773: W/dalvikvm(2415): PR_CAPBSET_DROP 27 failed: Invalid argument. Please make sure your kernel is compiled with file capabilities support enabled.
02-14 12:07:36.773: W/dalvikvm(2415): PR_CAPBSET_DROP 28 failed: Invalid argument. Please make sure your kernel is compiled with file capabilities support enabled.
02-14 12:07:36.773: W/dalvikvm(2415): PR_CAPBSET_DROP 29 failed: Invalid argument. Please make sure your kernel is compiled with file capabilities support enabled.
02-14 12:07:36.773: W/dalvikvm(2415): PR_CAPBSET_DROP 30 failed: Invalid argument. Please make sure your kernel is compiled with file capabilities support enabled.
02-14 12:07:36.773: W/dalvikvm(2415): PR_CAPBSET_DROP 31 failed: Invalid argument. Please make sure your kernel is compiled with file capabilities support enabled.
02-14 12:07:36.773: W/dalvikvm(2415): PR_CAPBSET_DROP 32 failed: Invalid argument. Please make sure your kernel is compiled with file capabilities support enabled.
02-14 12:07:36.773: W/dalvikvm(2415): PR_CAPBSET_DROP 33 failed: Invalid argument. Please make sure your kernel is compiled with file capabilities support enabled.
02-14 12:07:36.783: D/dalvikvm(2415): Not late-enabling CheckJNI (already on)
02-14 12:07:37.513: D/AndroidRuntime(2415): Shutting down VM
02-14 12:07:37.513: W/dalvikvm(2415): threadid=1: thread exiting with uncaught exception (group=0x414c4700)
02-14 12:07:37.673: E/AndroidRuntime(2415): FATAL EXCEPTION: main
02-14 12:07:37.673: E/AndroidRuntime(2415): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.shubhammyapp1.myapp1/com.shubhammyapp1.MainActivity}: java.lang.ClassNotFoundException: Didn't find class "com.shubhammyapp1.MainActivity" on path: DexPathList[[zip file "/data/app/com.shubhammyapp1.myapp1-2.apk"],nativeLibraryDirectories=[/data/app-lib/com.shubhammyapp1.myapp1-2, /system/lib]]
02-14 12:07:37.673: E/AndroidRuntime(2415):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2137)
02-14 12:07:37.673: E/AndroidRuntime(2415):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2261)
02-14 12:07:37.673: E/AndroidRuntime(2415):     at android.app.ActivityThread.access$600(ActivityThread.java:141)
02-14 12:07:37.673: E/AndroidRuntime(2415):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1256)
02-14 12:07:37.673: E/AndroidRuntime(2415):     at android.os.Handler.dispatchMessage(Handler.java:99)
02-14 12:07:37.673: E/AndroidRuntime(2415):     at android.os.Looper.loop(Looper.java:137)
02-14 12:07:37.673: E/AndroidRuntime(2415):     at android.app.ActivityThread.main(ActivityThread.java:5103)
02-14 12:07:37.673: E/AndroidRuntime(2415):     at java.lang.reflect.Method.invokeNative(Native Method)
02-14 12:07:37.673: E/AndroidRuntime(2415):     at java.lang.reflect.Method.invoke(Method.java:525)
02-14 12:07:37.673: E/AndroidRuntime(2415):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:737)
02-14 12:07:37.673: E/AndroidRuntime(2415):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
02-14 12:07:37.673: E/AndroidRuntime(2415):     at dalvik.system.NativeStart.main(Native Method)
02-14 12:07:37.673: E/AndroidRuntime(2415): Caused by: java.lang.ClassNotFoundException: Didn't find class "com.shubhammyapp1.MainActivity" on path: DexPathList[[zip file "/data/app/com.shubhammyapp1.myapp1-2.apk"],nativeLibraryDirectories=[/data/app-lib/com.shubhammyapp1.myapp1-2, /system/lib]]
02-14 12:07:37.673: E/AndroidRuntime(2415):     at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:53)
02-14 12:07:37.673: E/AndroidRuntime(2415):     at java.lang.ClassLoader.loadClass(ClassLoader.java:501)
02-14 12:07:37.673: E/AndroidRuntime(2415):     at java.lang.ClassLoader.loadClass(ClassLoader.java:461)
02-14 12:07:37.673: E/AndroidRuntime(2415):     at android.app.Instrumentation.newActivity(Instrumentation.java:1061)
02-14 12:07:37.673: E/AndroidRuntime(2415):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2128)
02-14 12:07:37.673: E/AndroidRuntime(2415):     ... 11 more

4 个答案:

答案 0 :(得分:2)

我看到很多可能导致错误的事情,所以你应该发布你的logcat,以便我们知道是什么导致了它。但是,我看到肯定会导致错误的一件事。

android:onClick="show"

表示xml中的Button。我会得到MethodNotFoundException,我相信它是,因为您的代码中没有名为show(View view)的方法。如果以这种方式执行,则无需以编程方式设置OnClickListener

删除onClick()功能和b.setOnClickListener((OnClickListener) this);,然后添加

等方法
public void show(View v)
{
    // your code for button click here
}

Button Docs

中对此进行了解释

另外,解析时应该进行一些错误检查。例如,这些行

Double ocb=Double.parseDouble(et1.getText().toString());

应该被try/catch包围或者进行其他错误检查,如果您还没有做某事,以防用户输入无效字符(如字母或根本没有)。

答案 1 :(得分:1)

在Android Manifest文件中,更改活动定义

android:name="com.shubhammyapp1.MainActivity"
android:label="@string/app_name"

android:name="com.shubhammyapp1.myapp1.MainActivity"
android:label="@string/app_name"

答案 2 :(得分:0)

请注意,logcat明确告诉您问题:找不到类。每当我收到此错误时,它都是由两件事之一引起的:

  1. 我的清单文件中类名中的拼写错误。

  2. 我的清单文件中包名不正确。

答案 3 :(得分:0)

// try this way
first of all i found some mistake on your activity code when you implements OnClickListener() wrong way to try correct them like this way

public class MyActivity extends Activity implements View.OnClickListener {

    private EditText et1;
    private EditText et2;
    private TextView tv1;
    private Button b;

    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        et1= (EditText)findViewById(R.id.ocinb);
        et2= (EditText)findViewById(R.id.ocint);
        tv1= (TextView) findViewById(R.id.textView1);
        b = (Button)findViewById(R.id.button1);
        b.setOnClickListener(this);
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }
    public void onClick(View arg0) {
        Double ocb=Double.parseDouble(et1.getText().toString());
        Double oct=Double.parseDouble(et2.getText().toString());
        Double ocr;
        ocr=(ocb-oct)*0.15;

        tv1.setText("The %OC is"+ocr);
    }

}