【问题标题】:The application may be doing too much work on its main thread......Skipped 96 frames应用程序可能在其主线程上做了太多工作......跳过了 96 帧
【发布时间】:2014-04-07 12:29:23
【问题描述】:

我是 Android 开发新手。 我最近创建了一个幻灯片动态壁纸,它会根据用户的选择每隔几秒钟更改一次图像。我还添加了登录、创建密码等作为学习目的。

在我刚刚更新了 Eclipse 之前,我还没有看到这条消息。如果它与 Eclipse 或我的代码有关,我不是。 这个应用程序有时会在我的 Galaxy Note 2 上崩溃。代码肯定有问题,但我不知道是什么原因造成的......

我阅读了有关 Asyntask 的信息,但我不知道如何处理它。

有人可以帮我解决这个问题吗?

谢谢。

首选类:

public class prefs extends PreferenceActivity implements
SharedPreferences.OnSharedPreferenceChangeListener {

private SharedPreferences mSharedPreferences;
private CheckBoxPreference pref_checkbox;
protected static final String TAG = null;

@SuppressWarnings("deprecation")
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    getPreferenceManager().setSharedPreferencesName(main_activity.SHARED_PREFS_NAME);
    addPreferencesFromResource(R.xml.wallpaper_settings);

    getPreferenceManager().getSharedPreferences()
            .registerOnSharedPreferenceChangeListener(this);

我在上面的 Oncreate 正下方有一堆用于不同按钮的代码。 是跳帧问题的原因还是有什么问题?

  Preference button1 = (Preference)findPreference("button1");
  button.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
            @Override
            public boolean onPreferenceClick(Preference arg0) { 
                //code for login_password   
                return true;
            }
        });


  Preference button2 = (Preference)findPreference("button2");
  button.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
            @Override
            public boolean onPreferenceClick(Preference arg0) { 
                //code for create_password   
                return true;
            }
        });



  Preference button3 = (Preference)findPreference("button3");
  button.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
            @Override
            public boolean onPreferenceClick(Preference arg0) { 
                //code for reset_password   
                return true;
            }
        });

等等……

编辑:修复错误。

【问题讨论】:

    标签: android android-layout android-asynctask oncreate live-wallpaper


    【解决方案1】:

    当我开始进行 Android 开发时,我遇到了类似的问题。每次我调用 drawBitmap 或旋转图像时,应用程序都会崩溃。我不得不将所有处理图像的东西都移到异步任务中,之后该应用程序运行良好。也许这也是您的解决方案?

    【讨论】:

    • 我不确定,但我认为 asyntask 是解决方案。问题是我不知道如何将 asyntask 应用于我的代码。请您或其他人给我一些例子吗?谢谢
    • Android 开发者网站上有一个关于如何使用 asynctask 处理位图的示例。希望这对您有所帮助。 developer.android.com/training/displaying-bitmaps/…
    • 感谢您的链接。不幸的是,我仍然不知道如何将这些代码放入我的应用程序中:-(
    猜你喜欢
    • 2013-06-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-02
    • 1970-01-01
    • 2021-12-31
    相关资源
    最近更新 更多