Мои приложения Splashscreen не работает на Android 4.0 Ice Cream Sandwich - PullRequest
1 голос
/ 04 февраля 2012

В настоящее время у меня есть простое приложение на рынке, сейчас я попытался установить его на устройство Android 4.0.Но это не удается после закрытия моего Splashscreen.Я отправил раппорт и получил это в качестве отзыва:

Crash
java.lang.UnsupportedOperationException
Thread.stop()

и

java.lang.UnsupportedOperationException
at java.lang.Thread.stop(Thread.java:1076)
at java.lang.Thread.stop(Thread.java:1063)
at com.lars.PSVWebView.SplashScreen$1.run(SplashScreen.java:35)

это код с момента последнего редактирования:

package com.lars.DrinkRecOrder;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;

public class SplashScreen extends Activity {

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.splash);

        Handler handler = new Handler();
        handler.postDelayed(new Runnable() {
            public void run() {

                Intent intent = new Intent();
                intent.setClass(SplashScreen.this, DrinkRecOrderActivity.class);
                }{
                /* start the activity */
                startActivity(new Intent("com.lars.DrinkRecorder.splashscreen.DrinkRecorderActivity"));
            }
        }, 500);

    }
}

Так что этомой новый код ... без ошибок, но тоже не работает, мое приложение падает при запуске.Кстати ... тот же код заставки, другое приложение

Ответы [ 3 ]

2 голосов
/ 04 февраля 2012

Вы можете использовать этот метод:

Handler handler = new Handler();
        handler.postDelayed(new Runnable() {
            public void run() {

                Intent intent = new Intent();
                intent.setClass(SplashScreen.this, NextActivity.class);
                }
                /* start the activity */
                startActivity(intent);
            }
        }, SPLASH_SCREEN_TIME_IN_MILLISECONDS);

Я думаю, что это намного лучше и элегантнее, чем Thread.sleep()

1 голос
/ 04 февраля 2012

Прочтите документацию на Thread.stop().

Этот метод устарел. потому что остановка потока таким образом небезопасна и может привести к непредсказуемому состоянию приложения и виртуальной машины.

Броски UnsupportedOperationException.

0 голосов
/ 09 февраля 2012

Это был ответ!

package com.lars.DrinkRecOrder;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;

public class SplashScreen extends Activity {

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.splash);

        Handler handler = new Handler();
        handler.postDelayed(new Runnable() {
            public void run() {

                /* start the activity */
                startActivity(new Intent("com.lars.DrinkRecOrder.splashscreen.DrinkRecOrderActivity"));
            }
        }, 5000);

    }
}
...