Spanish Alguien ha tenido problemas con la compatibilidad de ICS ?

psdos

Active Member
Licensed User
Longtime User
Buenos dias, llevo ya algun tiempo desarrollando una aplicacion con base de datos SQL y para varios dispositivos, incluidos 2 modelos de tablets. El problema me ha surgido a raiz de la salida de ICS (Android 4.0). Mi aplicacion en una tablet asus transformer se me cierra cuando quiere, dando un error antes de cerrar que indica que no puede continuar. Es un error del sistema operativo, no del programa, el programa esta mas que probado en terminales que van desde android 2.3.3 a 2.3.6 y va sin problemas.

Alguien sabe algo sobre este aspecto de compatibilidad? Es por algun tema referente a actualizar las librerias para que sean 100% compatibles con ICS?

Os agradeceria que arrojaseis alguna luz sobre el tema si alguien tiene información adicional.

Un saludo y muchas gracias.
 

NJDude

Expert
Licensed User
Longtime User
Una pregunta:

- Que SDK version estas utilizando para compilar?

Te pregunto esto porque puede ser que hay algo que a ICS no le gusta, yo he escrito varios apps y estan intaladas en casi todas las versiones de Android y ningun problema, yo siempre instalo la ultima version de Android de esta manera devices con ICS o Froyo o cualquier otra no tiene problemas ya que Android is backwards compatible.
 

psdos

Active Member
Licensed User
Longtime User
Yo tengo el SDK instalado con todos los API descargados, pero realmente no se como elegir entre uno y otro a la hora de compilar. La pregunta viene al hilo de que esta aplicacion que estoy haciendo le iba bien en una tablet Asus transformer mientras tenia android 3.0, y todo ha sido actualizar a 4.0 y de vez en cuando avisa que tiene que cerrarse. Si me podeis orientar un poco como compilar mi aplicacion en android ICS, podria ver cual es el problema.

Un saludo y mil gracias.

PD: Ultimamente me contesto y todo ya jaja, pues cambiando en la configuracion a la ruta de la API que corresponde a ICS (Tools, Configure paths, en android.jar, poner la ruta del ICS, C:\Android\android-sdk\platforms\android-15\android.jar, en mi caso).
 
Last edited:

NJDude

Expert
Licensed User
Longtime User
No es necesario tener todos los API a menos que escribas un app ESPECIFICAMENTE para una version, en mi opinion, borra todos y solo instala la version mas reciente, como repito, eso es lo que yo hago y no he tenido ningun problema.
 

psdos

Active Member
Licensed User
Longtime User
Bueno, pues con la salida de ICS 4.0.3 para Galaxy S2, actualice el terminal y la aplicacion se me congela. No al abrir, si no al picar en un ListView. He probado con todas las APIs y en 2.3.3, 2.3.4 y 2.3.6 perfecto. En cuanto cargo la aplicacion en android 4, aunque la compile con su API, me falla y se cierra. Alguna idea? Ya no se que hacerle, por que la aplicacion esta bien hecha.

Un saludo y gracias.

PD: Pues si, definitivamente solo se cuelga al picar en un elemento del ListView, si te mueves por el nada, sin problemas, en cuanto seleccionas un elemento, se bloquea y se cierra. Revisare el codigo a ver que es lo que no le gusta a ICS y cuando lo averigue lo compartire con vosotros.

PD2: Pues para que funcione he tenido que quitar el "DoEvents".

B4X:
Sub ListView1_ItemClick (Position As Int, Value As Object)
   
   Try
         Value2 = Value
         For I = 0 To xCursor.RowCount - 1
         'DoEvents
         xCursor.Position = I
         If ElementoList.Get(I) = Value Then
         texto_voz = ElementoList.Get(I) & ",,,," & DescripcionList.Get(I)
         Hablar
         ReadBlob
         Label6.text = DescripcionList.Get(I)
         EditText1.text = Value
         Counter = I
         End If
         Next
   Catch
         Label7.text = "Error " & LastException
   End Try
   
End Sub
 
Last edited:

NJDude

Expert
Licensed User
Longtime User
Tienes esta linea:
B4X:
For I = 0 To xCursor.RowCount - 1

Pero no tienes la linea con el SELECT Query y tampoco la que coge los fields del database como por ejemplo:
B4X:
MyInfo = xCursor.GetString("MYField")
 

psdos

Active Member
Licensed User
Longtime User
Tienes esta linea:
B4X:
For I = 0 To xCursor.RowCount - 1

Pero no tienes la linea con el SELECT Query y tampoco la que coge los fields del database como por ejemplo:
B4X:
MyInfo = xCursor.GetString("MYField")

Bueno la segunda linea que me comentas si la tengo en la rutina "ReadBlob". Mi programa es que lee de una base de datos SQL todos los elementos de una tabla y los muestra en la ListView y una vez picas en el que quieres, carga una imagen de la base de datos SQL. A mi me funciona ya todo, el problema era el "DoEvents", que alguien vi que recomendaba poner si eran muchos elementos la base de datos, y la bia llegara a mas de 2000 equipos. Por cierto en la primera linea que me pones, que error ves? por que a mi me funciona bien.

Un saludo.
 
Top