2013-05-26 4 views
0

Я импортировал проект из eclipse в андроид-студию. Проект хорошо работал с Eclipse.ksoap2 error with android studio

Я использую SOAP для связи моего приложения Android с моим сервером с php. библиотека, которую я использую это ksoap2-андроид-сборочно-2.6.4-банка-с-dependencies.jar

приложения разбилось, когда приложение пытается вызвать класс из библиотеки.

1) здесь я ставлю метод моего коннекта и вернул jSON ARRAY.

2) Это параметры, которые содержат необходимые для связи.

public class Config { 
public static final String NAMESPACE = 
    "http://www.motelalpaso.cl/webservice/android/"; 
    public static final String BY_LOCATION = "obtener_por_location"; 
    public static final String BY_NAME = "find_autos_by_namek"; 
public static final String URL = 
"http://www.motelalpaso.cl/webservice/android/moteles.php"; 
    } 

3) Наконец ошибка, что я получил .. Я надеюсь, что вы найдете то, что я делаю неправильно ..

java.lang.RuntimeException: An error occured while executing doInBackground() 
    at android.os.AsyncTask$3.done(AsyncTask.java:200) 
    at java.util.concurrent.FutureTask$Sync.innerSetException(FutureTask.java:274) 
    at java.util.concurrent.FutureTask.setException(FutureTask.java:125) 
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:308) 
    at java.util.concurrent.FutureTask.run(FutureTask.java:138) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1088) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:581) 
    at java.lang.Thread.run(Thread.java:1019) 
    Caused by: java.lang.NoClassDefFoundError: org.ksoap2.serialization.SoapObject 
    at motelalpaso.negocio.ConexionSoap.get_json_array(ConexionSoap.java:18) 
    at motelalpaso.ui.BuscarNombre$1$1.doInBackground(BuscarNombre.java:55) 
    at motelalpaso.ui.BuscarNombre$1$1.doInBackground(BuscarNombre.java:40) 
    at android.os.AsyncTask$2.call(AsyncTask.java:185) 
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:306) 

ответ

6

Сначала поместите свою библиотеку в папку libs, затем щелкните ее правой кнопкой мыши и выберите «Добавить как библиотеку». Открыть файл build.gradle и добавить вашу библиотеку

dependencies { 
compile files('libs/android-support-v4.jar') 
compile files('libs/ksoap2-android-assembly-3.0.0-RC.4-jar-with-dependencies.jar') 
} 

Наконец перейти в корневую папку в терминале и запустить «./gralew очистить», восстановить и запустить приложение для Android.

+0

он работает отлично !!!! – funkeeiads

0

Вам нужно добавить «» на ваш звонок:

transporte.call("\"" + Config.NAMESPACE + "/" + method + "\"", envelope); //It should work fine 
0

добавить репозиторий в вашем приложении Gradle файл ...

repositories { 
    maven { url 'https://oss.sonatype.org/content/repositories/ksoap2-android-releases/' } 
} 

, а затем добавить компиляции зависимостей

dependencies { 
    compile 'com.google.code.ksoap2-android:ksoap2-android:3.6.1' 
}