Ver la Versión Completa : Mi aplicacion no funciona en android 4.1.2
LEAJIM_454
10/09/14, 17:05:20
Muy buenas, tengo desarrollada una app casi al 60% y va muy bien en mi Galaxy Ace pero trate de probarla en el mobil de mi primo y se corta en un dos por tres, no me da ningun error pero cada que abro una activity algunas funcionan y otras no, mi app consta de un timertaskl, animaciones en onGlobalLayoutListener, y TTS no se que pasa en mi movil Ace funciona bien, no digo de maravilla por que el TTS sale entrecortado pero eso no es para preocuparse por que creo que es normal por la gama, pero ¿por que tendria que estar fallando en un Galaxy X Cover 2 si en mi movil va bien? alguien podria darme una respuesta por favor, mil gracias de antemano.
Dexafree
10/09/14, 17:10:46
Para conocer mas detalles tendrias que tener el logcat del Galaxy X Cover cuando peta
Simplemente conectando el movil de tu primo al ordenador y ejecutando la aplicación desde el IDE que utilices es muy posible que puedas ver el logcat
LEAJIM_454
10/09/14, 17:17:55
Para conocer mas detalles tendrias que tener el logcat del Galaxy X Cover cuando peta Simplemente conectando el movil de tu primo al ordenador y ejecutando la aplicación desde el IDE que utilices es muy posible que puedas ver el logcat
Gracias por tu pronta respuesta, pero a mi primo lo veo muy rara vez, te describire el problema exacto, cada vez que pulso algun boton dentro mi app lo que pasa es que esta aplicacion se reinicia sin decir, hubo un error ni nada por el estilo, simplemente se tilda y no se que pasa.
kriogeN
10/09/14, 17:55:41
Como dice DexaFree, bienvenido a la fragmentación. Yo tuve que hacer una vez un módulo entero de una aplicación de nuevo porque en los móviles que usaba de pruebas (un LG Optimus 3D y un HTC One S) funcionaba bien, pero después lo probé en un S3 Mini y no iba ni a tiros. Luego lo probé en otros Samsung y ocurría el mismo fallo.
Al final resultó que en mi móvil funcionaba bien una cosa que en Google no recomiendan y que mejor usase otro sistema, lo cambié y funcionó en todos los móviles.
LEAJIM_454
10/09/14, 21:32:39
Muchas gracias por sus respuestas, me son de mucha ayuda, tengo aqui una de las actividades que da problemas al lanzarse en el mobil de mi primo por favor podrian decirme en que podria estar fallando?package com.JimSoft.Entertainment.Edu.LearnWithEnuma;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.speech.tts.TextToSpeech;
import android.speech.tts.TextToSpeech.OnInitListener;
import android.view.View;
import android.widget.Toast;
public class MenuEjerciciosActivity extends Activity implements OnInitListener{
private TextToSpeech TTSEjercicios;
private String StringEjercicios;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_menu_ejercicios);
TTSEjercicios = new TextToSpeech(this, this);
StringEjercicios = (String)getString(R.string.Mensaje_de_ejercicios);
}
private void ParametrosTTS (String str)
{
TTSEjercicios.speak( str, TextToSpeech.QUEUE_FLUSH, null );
TTSEjercicios.setSpeechRate( -2.0f );
TTSEjercicios.setPitch( 0.0f );
}
public void onInit(int status) {
ParametrosTTS( StringEjercicios.toString() );
if ( status == TextToSpeech.LANG_MISSING_DATA | status == TextToSpeech.LANG_NOT_SUPPORTED )
{
Toast.makeText( this, "ERROR LANG_MISSING_DATA | LANG_NOT_SUPPORTED", Toast.LENGTH_SHORT ).show();
}
}
public void ComenzarEjercicios (View v){
Intent Ejercicios = new Intent(this, EjercicioAActivity.class);
startActivity(Ejercicios);
}
@Override
public void onDestroy() {
super.onDestroy();
if ( TTSEjercicios != null )
{
TTSEjercicios.stop();
TTSEjercicios.shutdown();
}
super.onDestroy();
}
}
Y esta es la actividad siguiente que es una actividad con un generador de numeros aleatorios
package com.JimSoft.Entertainment.Edu.LearnWithEnuma;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
public class EjercicioAActivity extends Activity{
private int NumeroAleatorio;
private Intent Ejercicio1;
private Intent Ejercicio2;
private Intent Ejercicio3;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
NumeroAleatorio = (int) Math.floor(Math.random()*3+1);
Ejercicio1 = new Intent(this, EjercicioLetraVActivity.class);
Ejercicio2 = new Intent(this, EjercicioLetraGActivity.class);
Ejercicio3 = new Intent(this, EjercicioLetraAActivity.class);
if (NumeroAleatorio==1) {
startActivity(Ejercicio1);
finish();
}
if (NumeroAleatorio==2) {
startActivity(Ejercicio2);
finish();
}
if (NumeroAleatorio==3) {
startActivity(Ejercicio3);
finish();
}
}
}
Gracias por su ayuda.
Dexafree
11/09/14, 00:43:13
e describire el problema exacto, cada vez que pulso algun boton dentro mi app lo que pasa es que esta aplicacion se reinicia sin decir, hubo un error ni nada por el estilo, simplemente se tilda y no se que pasa.
En primer lugar, decirte que sin logcat es muy dificil saber por qué pasa eso.
Pulsar un botón puede iniciar una reacción en cadena de código enorme, así que por eso te hablaba del logcat, porque te dirá el punto exacto en que falla.
Después, en el código que comentas veo varias cosas....... raras
1.-
ParametrosTTS( StringEjercicios.toString() );
StringEjercicios ya es un String. String.toString()? :pensando:
2.-
NumeroAleatorio = (int) Math.floor(Math.random()*3+1);
Ejercicio1 = new Intent(this, EjercicioLetraVActivity.class);
Ejercicio2 = new Intent(this, EjercicioLetraGActivity.class);
Ejercicio3 = new Intent(this, EjercicioLetraAActivity.class);
if (NumeroAleatorio==1) {
startActivity(Ejercicio1);
finish();
}
if (NumeroAleatorio==2) {
startActivity(Ejercicio2);
finish();
}
if (NumeroAleatorio==3) {
startActivity(Ejercicio3);
finish();
}
Aparte de crear 3 nuevos Intent en memoria de los cuales sólo vas a usar uno (te recomiendo hacer la creación cuando sepas que se va a utilizar), deberías comprobar que el número generado siempre esta entre los valores esperados (con un switch-case te podrías ahorrar problemas, aunque dudo que el problema esté ahi)
3.-
@Override
public void onDestroy() {
super.onDestroy();
if ( TTSEjercicios != null )
{
TTSEjercicios.stop();
TTSEjercicios.shutdown();
}
super.onDestroy();
}
Llamas 2 veces a super.onDestroy() :pensando:
4.-
if ( status == TextToSpeech.LANG_MISSING_DATA | status == TextToSpeech.LANG_NOT_SUPPORTED )
{
Toast.makeText( this, "ERROR LANG_MISSING_DATA | LANG_NOT_SUPPORTED", Toast.LENGTH_SHORT ).show();
}
Esos códigos indican errores del TTS, quizás eso es lo que le pueda pasar a tu primo.
Yo pondría algún tipo de booleano que fuera algo como "hayError", y si no hay ningún error, iniciar la otra Activity
Asi a ojo y sin logcat es lo unico que se me ocurre
kriogeN
11/09/14, 01:08:27
Supongo que ComenzarEjercicios será un onClick que tendrás declarado en el Layout (nunca me ha gustado hacerlo así, prefiero hacerlo en el código, pero ese no es el problema, ambas formas son correctas)
Yo me inclino a que el problema está en los "Ejercicio...Activity", porque es lo único que veo en común en ambas Activity, una de ellas al pulsar el ComenzarEjercicios y la otra al iniciar la Activity y seleccionar al alzar uno de los Ejercicios
LEAJIM_454
11/09/14, 03:53:03
Bueno muchas gracias por sus respuestas, vere cuando pueda poner el logcat por que veo que sin eso estamos a ciegas, agradesco realmente toda la ayuda que me proporcionan.
LEAJIM_454
24/09/14, 18:17:24
Hola, se que paso un tiempo desde que dije que pondria el logcat de mi primo para saber que es lo que me aparece y en rojo lo unico que veo es "fatal signal 11" no se exactamente que es lo que significa aqui dejo el logcat que me muestra cuando mi aplicacion se ejecuta en el mobil de mi primo si alguien fuese tan amable de ayudarme estaria agradecido... muchas gracias de antemano.
09-24 00:07:37.676: I/dalvikvm(9889): at com.android.internal.policy.impl.PhoneLayoutInflat er.onCreateView(PhoneLayoutInflater.java:56)
09-24 00:07:37.676: I/dalvikvm(9889): at android.view.LayoutInflater.onCreateView(LayoutInf later.java:666)
09-24 00:07:37.676: I/dalvikvm(9889): at android.view.LayoutInflater.createViewFromTag(Layo utInflater.java:691)
09-24 00:07:37.676: I/dalvikvm(9889): at android.view.LayoutInflater.rInflate(LayoutInflate r.java:752)
09-24 00:07:37.676: I/dalvikvm(9889): at android.view.LayoutInflater.inflate(LayoutInflater .java:495)
09-24 00:07:37.676: I/dalvikvm(9889): at android.view.LayoutInflater.inflate(LayoutInflater .java:397)
09-24 00:07:37.676: I/dalvikvm(9889): at android.view.LayoutInflater.inflate(LayoutInflater .java:353)
09-24 00:07:37.676: I/dalvikvm(9889): at com.android.internal.policy.impl.PhoneWindow.setCo ntentView(PhoneWindow.java:318)
09-24 00:07:37.676: I/dalvikvm(9889): at android.app.Activity.setContentView(Activity.java: 1901)
09-24 00:07:37.676: I/dalvikvm(9889): at com.JimSoft.Entertainment.Edu.LearnWithEnuma.Cuent oHumoDeFelicidad_03Activity.onCreate(CuentoHumoDeF elicidad_03Activity.java:40)
09-24 00:07:37.676: I/dalvikvm(9889): at android.app.Activity.performCreate(Activity.java:5 047)
09-24 00:07:37.676: I/dalvikvm(9889): at android.app.Instrumentation.callActivityOnCreate(I nstrumentation.java:1094)
09-24 00:07:37.676: I/dalvikvm(9889): at android.app.ActivityThread.performLaunchActivity(A ctivityThread.java:2056)
09-24 00:07:37.676: I/dalvikvm(9889): at android.app.ActivityThread.handleLaunchActivity(Ac tivityThread.java:2117)
09-24 00:07:37.676: I/dalvikvm(9889): at android.app.ActivityThread.access$700(ActivityThre ad.java:134)
09-24 00:07:37.676: I/dalvikvm(9889): at android.app.ActivityThread$H.handleMessage(Activit yThread.java:1218)
09-24 00:07:37.676: I/dalvikvm(9889): at android.os.Handler.dispatchMessage(Handler.java:99 )
09-24 00:07:37.676: I/dalvikvm(9889): at android.os.Looper.loop(Looper.java:137)
09-24 00:07:37.676: I/dalvikvm(9889): at android.app.ActivityThread.main(ActivityThread.jav a:4867)
09-24 00:07:37.676: I/dalvikvm(9889): at java.lang.reflect.Method.invokeNative(Native Method)
09-24 00:07:37.676: I/dalvikvm(9889): at java.lang.reflect.Method.invoke(Method.java:511)
09-24 00:07:37.676: I/dalvikvm(9889): at com.android.internal.os.ZygoteInit$MethodAndArgsCa ller.run(ZygoteInit.java:1007)
09-24 00:07:37.676: I/dalvikvm(9889): at com.android.internal.os.ZygoteInit.main(ZygoteInit .java:774)
09-24 00:07:37.676: I/dalvikvm(9889): at dalvik.system.NativeStart.main(Native Method)
09-24 00:07:37.676: A/libc(9889): Fatal signal 11 (SIGSEGV) at 0x00000000 (code=1), thread 9889 (.LearnWithEnuma)
09-24 00:07:45.373: D/dalvikvm(10053): GC_CONCURRENT freed 181K, 11% free 9580K/10695K, paused 13ms+14ms, total 58ms
09-24 00:07:45.443: D/dalvikvm(10053): GC_FOR_ALLOC freed 42K, 10% free 9649K/10695K, paused 17ms, total 18ms
09-24 00:07:45.443: I/dalvikvm-heap(10053): Grow heap (frag case) to 11.458MB for 1220016-byte allocation
09-24 00:07:45.463: D/dalvikvm(10053): GC_CONCURRENT freed <1K, 9% free 10840K/11911K, paused 2ms+1ms, total 20ms
09-24 00:07:45.483: D/dalvikvm(10053): GC_FOR_ALLOC freed 0K, 9% free 10840K/11911K, paused 19ms, total 19ms
09-24 00:07:45.493: I/dalvikvm-heap(10053): Grow heap (frag case) to 14.077MB for 2748016-byte allocation
09-24 00:07:45.523: D/dalvikvm(10053): GC_CONCURRENT freed 0K, 8% free 13524K/14599K, paused 2ms+2ms, total 21ms
09-24 00:07:45.583: D/dalvikvm(10053): GC_FOR_ALLOC freed 1192K, 14% free 14287K/16583K, paused 20ms, total 21ms
09-24 00:07:45.603: I/dalvikvm-heap(10053): Grow heap (frag case) to 19.114MB for 4500016-byte allocation
09-24 00:07:45.653: D/dalvikvm(10053): GC_FOR_ALLOC freed <1K, 12% free 18681K/20999K, paused 21ms, total 21ms
09-24 00:07:45.753: D/dalvikvm(10053): GC_FOR_ALLOC freed 3439K, 21% free 20078K/25415K, paused 17ms, total 17ms
09-24 00:07:45.783: D/dalvikvm(10053): GC_CONCURRENT freed 1K, 14% free 22030K/25415K, paused 13ms+2ms, total 30ms
09-24 00:07:45.834: D/dalvikvm(10053): GC_FOR_ALLOC freed 0K, 14% free 22031K/25415K, paused 18ms, total 18ms
09-24 00:07:45.844: I/dalvikvm-heap(10053): Grow heap (frag case) to 26.676MB for 4500016-byte allocation
09-24 00:07:45.864: D/dalvikvm(10053): GC_CONCURRENT freed 0K, 12% free 26425K/29831K, paused 2ms+2ms, total 22ms
09-24 00:07:45.934: D/libEGL(10053): loaded /system/lib/egl/libEGL_mali.so
09-24 00:07:45.944: D/libEGL(10053): loaded /system/lib/egl/libGLESv1_CM_mali.so
09-24 00:07:45.944: D/libEGL(10053): loaded /system/lib/egl/libGLESv2_mali.so
09-24 00:07:45.964: D/OpenGLRenderer(10053): Enabling debug mode 0
kriogeN
24/09/14, 18:35:44
El fallo está aquí:
09-24 00:07:37.676: I/dalvikvm(9889): at com.JimSoft.Entertainment.Edu.LearnWithEnuma.Cuent oHumoDeFelicidad_03Activity.onCreate(CuentoHumoDeF elicidad_03Activity.java:40)
Línea 40 de CuentoHumoDeFelicidad_03Activity
El fallo tiene pinta de estar en el Layout, y creo que justo la línea que debería estar por encima de lo que has puesto es la que debe indicar el fallo exacto.
LEAJIM_454
24/09/14, 23:58:47
Gracias por tu respuesta kriogeN en este momento no puedo acceder de nuevo al mobil de mi primo y este error solo me da en este mobil... lo probé tambien en un experia z1 y va de maravilla pero justo con el Galaxy Xcover 2 se fastidia en cada momento, no veo ninguna falla en mi layout te lo dejo, por si le puedes hechar el ojo gracias de antemano y gracias por toda la ayuda que me has brindado.
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/LayoutContenedorGlobalCuentos"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.JimSoft.Entertainment.Edu.LearnWithEnuma.Cuent oHumoDeFelicidad_03Activity"
android:orientation="vertical"
android:background="@color/negro"
android:onClick="SiguienteEscena">
<ImageButton
android:id="@+id/ImagenDeEscena"
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight="4"
android:background="@drawable/cuento_humo_de_felicidad_escena_03"
android:onClick="SiguienteEscena"/>
<LinearLayout
android:id="@+id/ContenedorDelTexto"
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight="2.5"
android:background="@color/negro"
android:orientation="horizontal">
<TextView
android:id="@+id/TextoDeEscena"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:textColor="@color/blanco"
android:text="@string/cuento_humo_de_felicidad_escena_03"
android:gravity="center"/>
</LinearLayout>
</LinearLayout>
Dexafree
25/09/14, 10:27:44
Así a bote pronto solo se me ocurre que sea por algo de recursos
Recurres a @string/... tienes puestos todos los String en el values/strings.xml?
Tienes carpetas según los idiomas? (values-es, por ejemplo)
@color/negro lo tienes declarado?
LEAJIM_454
25/09/14, 18:47:38
Gracias por tu respuesta, todos los valores estan declarados y como dije esto solo pasa en un Xcover 2 con 4.1.2, lo probe en mi Ace s5830i con 2.3.6 y funciona bien, tambien en un z1 compact con kitkat y tambien va muy bien.
los colores estan en la carpeta values que viene por defecto
los strings están en values-es pero no los tengo declarados en los strings por defecto solo estan en values-es.
Será que tengo que rehacer todo de nuevo?
Dexafree
25/09/14, 19:14:13
los strings están en values-es pero no los tengo declarados en los strings por defecto solo estan en values-es.
Haz un copiar-pegar de esos strings de values-es y copia los que falten en el values/strings.xml
kriogeN
25/09/14, 19:29:43
Gracias por tu respuesta, todos los valores estan declarados y como dije esto solo pasa en un Xcover 2 con 4.1.2, lo probe en mi Ace s5830i con 2.3.6 y funciona bien, tambien en un z1 compact con kitkat y tambien va muy bien.
los colores estan en la carpeta values que viene por defecto
los strings están en values-es pero no los tengo declarados en los strings por defecto solo estan en values-es.
Será que tengo que rehacer todo de nuevo?
Si el móvil de tu primo está en inglés (o en otro idioma que no sea el español) la aplicación fallará, porque no encontrará los strings.
Si sólo vas a distribuir la aplicación en español no crees el values-es, crea simplemente values, para que si se la descarga alguien con el móvil en otro idioma por lo menos que diga "Que mierda, sólo está en español", no que diga, "Que mierda, esta aplicación nada mas iniciarse da un FC".
vBulletin® v3.8.1, Copyright ©2000-2025, Jelsoft Enterprises Ltd.