Как исправить проблему синхронизации FTP в Android Mobile, но она работает нормально в эмуляторе - PullRequest
0 голосов
/ 02 августа 2011

Я написал программу для загрузки XML-файла с ftp, она отлично работает в эмуляторе, но когда я установил это приложение на android (sony ericsson xperia) mobile, он выдает ошибку пакета приложения из-за того, что мне нужно сделать какие-либо настройки в мобильном телефоне или мы должны Установить любой API в моем мобильном телефоне может кто-нибудь, пожалуйста, помогите мне.

Заранее спасибо,

В Android Mobile сообщение об ошибке

Ответы [ 4 ]

0 голосов
/ 17 августа 2011
  Activitiy admin mainmenu(in application com.itwine)is not responding followed by two buttons 1.force close 2.wait



    imgBtnSyncQues  = (ImageButton) findViewById(R.id.imgBtnSyncQuestions);
            imgBtnSyncQues.setOnClickListener(new View.OnClickListener() {

                public void onClick(View v) {

                    viewOrders = new Runnable(){
                        public void run() {
                            ftpQuesSync();
                        }
                    };
                    Thread thread =  new Thread(null, viewOrders, "MagentoBackground");
                    thread.start();
                    m_ProgressDialog = ProgressDialog.show(AdminMainMenu.this,    
                            "Please wait...", "Syncing Questions ...", true);
                        }

            });


    private void ftpQuesSync()
        {
            FTPClient ObjFtpCon = new FTPClient();
            try
            {
                ObjFtpCon.connect(strIp);
                if (ObjFtpCon.login(strFtpUser, strFtpPwd))
                {
                    ObjFtpCon.enterLocalPassiveMode(); // important!
                    ObjFtpCon.cwd("/QIA/Questions/Hotel/");
                    String[] strArrQuesFiles=ObjFtpCon.listNames();
                    int intcnt=0;
                    boolean blnresult = false;
                    File objfile=new File(getFilesDir().getAbsolutePath()+ "/Questions");
                    if(!objfile.exists())objfile.mkdirs();
                    objfile=null;
                    for(intcnt=0;intcnt<strArrQuesFiles.length;intcnt++)
                    {
                        objfile=new File(getFilesDir().getAbsolutePath()+ File.separator + "/Questions/" + strArrQuesFiles[intcnt]);
                        objfile.createNewFile();
                        //ByteArrayInputStream in = new ByteArrayInputStream(data.getBytes());
                        FileOutputStream objFos=new FileOutputStream(objfile);
                        blnresult=ObjFtpCon.retrieveFile(strArrQuesFiles[intcnt] , objFos);
                        objFos.close();
                    }
                    ObjFtpCon.logout();
                    ObjFtpCon.disconnect();
                    if(blnresult) runOnUiThread(returnRes);return;
                    // boolean result = con.storeFile("/QIA/Response/test/Responses.xml", in);
                }
            }
            catch (Exception e)
            {
                e.printStackTrace();
                runOnUiThread(returnnone);
                return;
            }
            runOnUiThread(returnnone);
        }
0 голосов
/ 15 августа 2011

Раджкумар, не могли бы вы вставить небольшой фрагмент кода, который вы использовали для открытия ftp-соединения, которое работает на эмуляторе, чтобы получить файл XML?Я вообще не могу заставить работать ftp, и вы, кажется, разобрались с магическим заклинанием, см. Как сделать простой файл get ftp на Android на мой вопрос

0 голосов
/ 15 августа 2011

Activitiy admin mainmenu (в приложении com.itwine) не отвечает, за ним следуют две кнопки: 1. Принудительное закрытие 2. Ожидание

Скорее всего, это произойдет, если вы создадите какую-либо сеть в главном потоке деятельности, чего вы на самом деле не должны делать.

В эмуляторе, используя сеть ваших машин разработки, вы можете получить ответ достаточно быстро, чтобы его избежать; на устройстве, использующем мобильную сеть, вероятность превышения времени ожидания гораздо выше.

0 голосов
/ 02 августа 2011

Очистите и перестройте ваш проект в Eclipse / любом другом инструменте, который вы используете, а затем попробуйте перенести пакет заново.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...