0

私のアプリは予期せず終了しますが、私は開発の初期にいるので奇妙で、アプリには特に何もありません! 私の最初のクラス:

package it.mi.action.codmmunicator_2ddecoder;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.Window;
import android.view.WindowManager;

public class Loading extends Activity {
    @Override
    public void onCreate(Bundle savedInstanceState){
    super.onCreate(savedInstanceState);
            requestWindowFeature(Window.FEATURE_NO_TITLE);
            getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);
    setContentView(R.layout.loading);
    final int tempodiattesa=3000;
    Thread schermataattesa=new Thread(){
        int aspetta=0;
        @Override
        public void run(){
            try{
                super.run();
                while(aspetta<tempodiattesa){
                    sleep(100);
                    aspetta+=100;
                }
            }catch(Exception e){
                System.out.println("EXc="+e);
            }finally{
                startActivity(new      Intent(Loading.this,Lettore.class));
                finish();
            }
        }
    };
    schermataattesa.start();
}
}

そして2番目のもの:

package it.mi.action.codmmunicator_2ddecoder;

import android.app.Activity;
import android.os.Bundle;
import android.view.Window;
import android.view.WindowManager;

public class Lettore extends Activity {
@Override
public void onCreate(Bundle savedInstanceState){
    requestWindowFeature(Window.FEATURE_NO_TITLE);
        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);
    setContentView(R.layout.lettore);
}
}

2番目のクラスになると、クラッシュします。xml は、画像を含む通常の線形レイアウトです。

Androidマニフェストが正しいと確信しています:

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

<uses-sdk android:minSdkVersion="10" />
<uses-permission android:name="android.permission.CAMERA"/>

<application android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@android:style/Theme.NoTitleBar">
    <activity android:name="Loading" 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="Lettore" android:screenOrientation="portrait" android:label="@string/app_name"></activity>
</application>

</manifest>

Lettore でアプリを起動すると、アプリがクラッシュします。問題は Lettore.java にあると思いますが、それはばかげています

誰かが私を助けることができますか?それは正常ではないことがわかりますか?

これは私のlogcatです:

06-28 13:41:25.322: D/dalvikvm(403): GC_EXTERNAL_ALLOC freed 51K, 53% free 2552K/5379K, external 716K/1038K, paused 61ms

06-28 13:41:29.353: D/AndroidRuntime(403): Shutting down VM

06-28 13:41:29.353: W/dalvikvm(403): threadid=1: thread exiting with uncaught exception (group=0x40015560)

06-28 13:41:29.363: E/AndroidRuntime(403): FATAL EXCEPTION: main

06-28 13:41:29.363: E/AndroidRuntime(403): android.app.SuperNotCalledException: Activity {it.mi.action.codmmunicator_2ddecoder/it.mi.action.codmmunicator_2ddecoder.Lettore} did not call through to super.onCreate()

06-28 13:41:29.363: E/AndroidRuntime(403):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1613)

06-28 13:41:29.363: E/AndroidRuntime(403):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663)

06-28 13:41:29.363: E/AndroidRuntime(403):  at android.app.ActivityThread.access$1500(ActivityThread.java:117)

06-28 13:41:29.363: E/AndroidRuntime(403):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931)

06-28 13:41:29.363: E/AndroidRuntime(403):  at android.os.Handler.dispatchMessage(Handler.java:99)

06-28 13:41:29.363: E/AndroidRuntime(403):  at android.os.Looper.loop(Looper.java:123)

06-28 13:41:29.363: E/AndroidRuntime(403):  at android.app.ActivityThread.main(ActivityThread.java:3683)

06-28 13:41:29.363: E/AndroidRuntime(403):  at java.lang.reflect.Method.invokeNative(Native Method)

06-28 13:41:29.363: E/AndroidRuntime(403):  at java.lang.reflect.Method.invoke(Method.java:507)

06-28 13:41:29.363: E/AndroidRuntime(403):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)

06-28 13:41:29.363: E/AndroidRuntime(403):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)

06-28 13:41:29.363: E/AndroidRuntime(403):  at dalvik.system.NativeStart.main(Native Method)

06-28 13:41:32.083: I/Process(403): Sending signal. PID: 403 SIG: 9

Androidマニフェストが正しいと確信しています:

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

<uses-sdk android:minSdkVersion="10" />
<uses-permission android:name="android.permission.CAMERA"/>

<application android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@android:style/Theme.NoTitleBar">
    <activity android:name="Loading" 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="Lettore" android:screenOrientation="portrait" android:label="@string/app_name"></activity>
</application>

</manifest>

Lettore でアプリを起動すると、アプリがクラッシュします。問題は Lettore.java にあると思いますが、それはばかげています

4

3 に答える 3

2

コードを次のように変更します:ブロックを
置き換えfinallyます:

finally{
                startActivity(new      Intent(Loading.this,Lettore.class));
                finish();
            }

   finally{
        Loading.this.runOnUiThread(new Runnable() {     
                 @Override
                 public void run() {
                  // TODO Auto-generated method stub
                  Loading.this.startActivity(new Intent(Loading.this,Lettore.class));
                  finish();
}
                });

        }

Lettore アクティビティを manifast.xml に次のように登録していることを確認します。

<Activity android:name=".Lettore" />

編集: super.onCreate(savedInstanceState); を追加します。Lettoe アクティビティで次のように:

package it.mi.action.codmmunicator_2ddecoder;

import android.app.Activity;
import android.os.Bundle;
import android.view.Window;
import android.view.WindowManager;

public class Lettore extends Activity {
@Override
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
    requestWindowFeature(Window.FEATURE_NO_TITLE);
        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);
    setContentView(R.layout.lettore);
}
}
于 2012-06-28T13:25:52.627 に答える
2

追加

super.onCreate( savedInstanceState );

あなたのコードに

于 2012-06-28T13:47:25.573 に答える
2
super.onCreate() is missing in Lettore class

..

public void onCreate(Bundle savedInstanceState){
      super.onCreate(); //<-----------------------------add this
    requestWindowFeature(Window.FEATURE_NO_TITLE);
        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);
    setContentView(R.layout.lettore);
}

1 - マニフェストに Lettore のエントリを配置したことを確認します。

于 2012-06-28T13:23:37.740 に答える