WedX - журнал о программировании и компьютерных науках

Ошибка экспорта apk

Мой проект успешно запущен, но когда я экспортирую apk, он разбился в Prograd-project.txt

# To enable ProGuard in your project, edit project.properties
# to define the proguard.config property as described in that file.
#
# Add project specific ProGuard rules here.
# By default, the flags in this file are appended to flags specified
# in ${sdk.dir}/tools/proguard/proguard-android.txt
# You can edit the include path and order by changing the ProGuard
# include property in project.properties.
#
# For more details, see
#   https://developer.android.com/guide/developing/tools/proguard.html

# Add any project specific keep options here:

# If your project uses WebView with JS, uncomment the following
# and specify the fully qualified class name to the JavaScript interface
# class:
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
#   public *;
#}
-dontwarn twitter4j.internal.logging.**
-dontwarn org.apache.http.**
-dontwarn org.apache.poi.hssf.usermodel.HSSFWorkbook.**
-ignorewarnings 

Но ошибка

НЕИСПРАВНОЕ ИСКЛЮЧЕНИЕ: AsyncTask #1 java.lang.RuntimeException: произошла ошибка при выполнении doInBackground() в android.os.AsyncTask$3.done(AsyncTask.java:299) в java.util.concurrent.FutureTask.finishCompletion(FutureTask.java :352) в java.util.concurrent.FutureTask.setException(FutureTask.java:219) в java.util.concurrent.FutureTask.run(FutureTask.java:239) в android.os.AsyncTask$SerialExecutor$1.run(AsyncTask .java:230) в java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080) в java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573) в java.lang.Thread.run( Thread.java:856) Вызвано: java.lang.ExceptionInInitializerError в org.apache.poi.hssf.usermodel.HSSFWorkbook.(Неизвестный источник) в org.apache.poi.hssf.usermodel.HSSFWorkbook.(Неизвестный источник) в org. .apache.poi.hssf.usermodel.HSSFWorkbook.(Неизвестный источник) на org.apache.po i.hssf.usermodel.HSSFWorkbook.(Неизвестный источник) на com.student.HTMLCSS.splash_screen.a(Неизвестный источник) на com.student.HTMLCSS.za(Неизвестный источник) на com.student.HTMLCSS.z.doInBackground(Неизвестный Источник) на android.os.AsyncTask$2.call(AsyncTask.java:287) на java.util.concurrent.FutureTask.run(FutureTask.java:234) Еще 4 Причина: org.apache.poi.hssf.b. сделать: невозможно определить типы записей в org.apache.poi.hssf.b.di.a (неизвестный источник) в org.apache.poi.hssf.b.di.(неизвестный источник)

Код

 setContentView(R.layout.splash_screen);
       progress = (ImageView) findViewById(R.id.imgprogress);
    FontHelper.applyFont(this, findViewById(R.id.RelativeLayout1),
            "helveticaneueltstdlt.ttf");
    helper = new MyDBHelper(this);

   final Integer[] mThumbIds = {

    R.drawable.frame1, R.drawable.frame2, R.drawable.frame3,
            R.drawable.frame4,

    };
if (getLoginPreferences()) { 
  try {
        r = new Runnable() {
            public void run() {
                            progress.setBackgroundResource(mThumbIds[i]);
            i++;
        if (i >= mThumbIds.length) {
            i = 0;
        }
        progress.postDelayed(r, 300); // set to go off again in
        }
    };
    progress.postDelayed(r, 300);
}
    catch (Exception e) 
    {
    }
    Handler mHandler = new Handler();
mHandler.postDelayed(new Runnable() {

        @Override
    public void run() {
            setLoginPreferences("1");
            startActivity(new Intent(splash_screen.this,
                            category_screen.class));
            finish();

        } 
}, 2000);
}
    else
    { 
        start = true;


    try {

            r = new Runnable() {
          public void run() {
            progress.setBackgroundResource(mThumbIds[i]);
            i++;
            if (i >= mThumbIds.length) {
                    i = 0;
            }
            progress.postDelayed(r, 3000); // set to go off again in
                            // 3 seconds.
            }
        };
         progress.postDelayed(r, 3000); 
    }

            catch (Exception e) {
            }
        new data().execute();
    } 
}

    void getData() {

        if (!getLoginPreferences()) {   
    try {
                InputStream is = getResources().getAssets().open(
                        "education.xls");
                HSSFWorkbook workbook = new HSSFWorkbook(is);

                // Get first sheet from the workbook
                System.out.println("number of sheet="
                        + workbook.getNumberOfSheets());

                for (int sheetno = 0; sheetno <= 7; sheetno++) {

                    HSSFSheet sheet = workbook.getSheetAt(sheetno);

                    if (sheetno == 0 || sheetno == 2 || sheetno == 4
                            || sheetno == 6) {
                        Row row;
                        Cell cell;

                        // Iterate through each rows from first sheet
                        Iterator<Row> rowIterator = sheet.iterator();

                        while (rowIterator.hasNext()) {
                            flag = 1;
                            row = rowIterator.next();

                            // For each row, iterate through each columns
                            Iterator<Cell> cellIterator = row.cellIterator();

                            while (cellIterator.hasNext()) {
                                cell = cellIterator.next();
                                System.out.println("row index="
                                        + cell.getRowIndex());
                                if (cell.getRowIndex() > 0) {
                                    flag = 0;
                                    switch (cell.getCellType()) {

                                    case Cell.CELL_TYPE_BOOLEAN:
                                        System.out.println("bool="
                                                + cell.getBooleanCellValue());
                                        break;

                                    case Cell.CELL_TYPE_NUMERIC:
                                        id = (int) cell.getNumericCellValue();
                                        System.out.println("number="
                                                + cell.getNumericCellValue());
                                        break;

                                    case Cell.CELL_TYPE_STRING:
                                        System.out.println("col number="
                                                + cell.getColumnIndex());

                                        System.out.println("string="
                                                + cell.getStringCellValue());

                                        if (cell.getColumnIndex() == 1) {
                                            name = cell.getStringCellValue();
                                        } else if (cell.getColumnIndex() == 2) {
                                            uses = cell.getStringCellValue();
                                        } else if (cell.getColumnIndex() == 3) {
                                            example = cell.getStringCellValue();
                                        }

                                        break;

                                    case Cell.CELL_TYPE_BLANK:
                                        System.out.println(" ");
                                        break;

                                    default:
                                        System.out.println(cell);

                                    }

                                }

                            }
                            if (flag == 0) {
                                System.out.println(id + "  " + name + "  "
                                        + uses + "  " + example);
                                if (sheetno == 0)
                                    helper.addContact(0, new Contact(id, name,
                                            uses, example));

                                if (sheetno == 2)
                                    helper.addContact(2, new Contact(id, name,
                                            uses, example));
                                if (sheetno == 4)
                                    helper.addContact(4, new Contact(id, name,
                                            uses, example));
                                if (sheetno == 6)
                                    helper.addContact(6, new Contact(id, name,
                                            uses, example));

                                name = "";
                                uses = "";
                                example = "";
                            }

                        }
                    } else {

                        Row row;
                        Cell cell;
                        flag = 1;
                        // Iterate through each rows from first sheet
                        Iterator<Row> rowIterator = sheet.iterator();

                        while (rowIterator.hasNext()) {
                            flag = 1;
                            row = rowIterator.next();

                            // For each row, iterate through each columns
                            Iterator<Cell> cellIterator = row.cellIterator();

                            while (cellIterator.hasNext()) {
                                cell = cellIterator.next();
                                System.out.println("row index="
                                        + cell.getRowIndex());
                                if (cell.getRowIndex() > 0) {
                                    flag = 0;
                                    switch (cell.getCellType()) {

                                    case Cell.CELL_TYPE_BOOLEAN:
                                        System.out.println("bool="
                                                + cell.getBooleanCellValue());
                                        break;

                                    case Cell.CELL_TYPE_NUMERIC:
                                        if (cell.getColumnIndex() == 0)
                                            ha_id = (int) cell
                                                    .getNumericCellValue();
                                        else if (cell.getColumnIndex() == 1)
                                            id = (int) cell
                                                    .getNumericCellValue();

                                        System.out.println("number="
                                                + cell.getNumericCellValue());
                                        break;

                                    case Cell.CELL_TYPE_STRING:
                                        System.out.println("col number="
                                                + cell.getColumnIndex());

                                        System.out.println("string="
                                                + cell.getStringCellValue());

                                        if (cell.getColumnIndex() == 2) {
                                            name = cell.getStringCellValue();
                                        } else if (cell.getColumnIndex() == 3) {
                                            uses = cell.getStringCellValue();
                                        } else if (cell.getColumnIndex() == 4) {
                                            example = cell.getStringCellValue();
                                        }

                                        break;

                                    case Cell.CELL_TYPE_BLANK:
                                        System.out.println(" ");
                                        break;

                                    default:
                                        System.out.println(cell);

                                    }

                                }

                            }
                            if (flag == 0) {
                                System.out.println(id + "  " + name + "  "
                                        + uses + "  " + example);
                                if (sheetno == 1)
                                    helper.addAttribute(1, new Contact(ha_id,
                                            id, name, uses, example));
                                if (sheetno == 3)
                                    helper.addAttribute(3, new Contact(ha_id,
                                            id, name, uses, example));
                                if (sheetno == 5)
                                    helper.addAttribute(5, new Contact(ha_id,
                                            id, name, uses, example));
                                if (sheetno == 7)
                                    helper.addAttribute(7, new Contact(ha_id,
                                            id, name, uses, example));

                                name = "";
                                uses = "";
                                example = "";

                            }

                        }

                    }
                }

            } catch (FileNotFoundException e) {
            Toast.makeText(getApplicationContext(), e.getMessage(),
                        Toast.LENGTH_LONG).show();
                e.printStackTrace();    
             }          
        catch (IOException e) {
                // TODO Auto-generated catch block
                Toast.makeText(getApplicationContext(), e.getMessage(),
                        Toast.LENGTH_LONG).show();

                e.printStackTrace();
        }   
      } 
        start = false; 
}

private boolean getLoginPreferences() {
    boolean isLogin = false;
    String strUsername = "";

    // try {
    SharedPreferences preferences = getSharedPreferences("LOGIN",
            MODE_WORLD_READABLE);
    strUsername = preferences.getString("TABLE_EXITS", "");

    if (!strUsername.trim().equals("")) {

        isLogin = true;
    } else {
        isLogin = false;
    }

    System.out.println("value in  " + strUsername);
    /*
     * } catch (Exception e) { // TODO: handle exception
     * System.out.println("Error at Get login : " + e.toString()); }
     */

    return isLogin;
}

private void setLoginPreferences(String strUsername) {
    try {
        SharedPreferences preferences = getSharedPreferences("LOGIN",
                MODE_WORLD_WRITEABLE);
        SharedPreferences.Editor editor = preferences.edit();
        editor.putString("TABLE_EXITS", strUsername.trim());
        editor.commit();
        System.out.println("sign-up prefrences:" + strUsername);
    } catch (Exception e) {
        // TODO: handle exception
        System.out.println("Error at Set login : " + e.toString());
    }
}

public class data extends AsyncTask<Void, Void, Void> {
    @Override
    protected void onPreExecute() {
        // TODO Auto-generated method stub
        super.onPreExecute();
    }

    @Override
    protected Void doInBackground(Void... params) {
        // TODO Auto-generated method stub
        getData();
        return null;
    }

    @Override
    protected void onPostExecute(Void result) {
        // TODO Auto-generated method stub
        super.onPostExecute(result);

        setLoginPreferences("1");
    startActivity(new Intent(splash_screen.this, category_screen.class));
        finish();

    }
}

Пожалуйста, дайте мне решение для этого.

11.06.2014

  • Предоставьте свой блок кода? 11.06.2014
  • В какой именно строке вы получаете ошибку? Также отформатируйте код. 11.06.2014
  • Вы получаете сообщение об ошибке при запуске вашего приложения на устройстве? 11.06.2014
  • Мой код работает отлично, но после запуска экспортированного apk отображается ошибка (эта ошибка отображается перед кодом), т.е. в asytask работает. когда я запускаю getdata(), возникает ошибка 11.06.2014
  • @BhoomiDesai О, вы имеете в виду, что без экспорта apk вы запускаете его непосредственно на устройстве, а затем отлично работаете, а когда экспортируете свой apk и запускаете экспортированный apk, вы получаете ошибку. 11.06.2014
  • да, однозначно. поэтому я не могу понять эту проблему. 11.06.2014
  • @BhoomiDesai Но не могли бы вы отформатировать приведенный выше код слишком сложно для чтения. И да, ты принадлежишь amd? 11.06.2014
  • @BhoomiDesai Если вы знаете гуджарати, то очень легко объясните мне 11.06.2014
  • Я думаю, вы можете понять этот код. я не могу понять, почему эта ошибка возникает, когда я экспортирую apk 11.06.2014
  • @BhoomiDesai Просто зайдите в мой профиль, оттуда вы можете получить мой идентификатор. 11.06.2014

Новые материалы

Как проанализировать работу вашего классификатора?
Не всегда просто знать, какие показатели использовать С развитием глубокого обучения все больше и больше людей учатся обучать свой первый классификатор. Но как только вы закончите..

Работа с цепями Маркова, часть 4 (Машинное обучение)
Нелинейные цепи Маркова с агрегатором и их приложения (arXiv) Автор : Бар Лайт Аннотация: Изучаются свойства подкласса случайных процессов, называемых дискретными нелинейными цепями Маркова..

Crazy Laravel Livewire упростил мне создание электронной коммерции (панель администратора и API) [Часть 3]
Как вы сегодня, ребята? В этой части мы создадим CRUD для данных о продукте. Думаю, в этой части я не буду слишком много делиться теорией, но чаще буду делиться своим кодом. Потому что..

Использование машинного обучения и Python для классификации 1000 сезонов новичков MLB Hitter
Чему может научиться машина, глядя на сезоны новичков 1000 игроков MLB? Это то, что исследует это приложение. В этом процессе мы будем использовать неконтролируемое обучение, чтобы..

Учебные заметки: создание моего первого пакета Node.js
Это мои обучающие заметки, когда я научился создавать свой самый первый пакет Node.js, распространяемый через npm. Оглавление Глоссарий I. Новый пакет 1.1 советы по инициализации..

Забудьте о Matplotlib: улучшите визуализацию данных с помощью умопомрачительных функций Seaborn!
Примечание. Эта запись в блоге предполагает базовое знакомство с Python и концепциями анализа данных. Привет, энтузиасты данных! Добро пожаловать в мой блог, где я расскажу о невероятных..

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


Для любых предложений по сайту: [email protected]