ANR con TagManagerService
Estoy enfrentando un problema que no puedo entender. Esta ANR aparece cuando vuelvo a pulsar en mi primera pantalla de actividad para ir a la ventana de inicio. Después de presionar, y luego intentar volver a la aplicación, una pantalla blanca aparece, y después de eso, una pantalla en negro. En uno o dos minutos, aparece el mensaje emergente del mensaje ANR.
Esa es mi gradle play-servicios relacionados
- Solicitud de inicio de sesión de GoogleIdToken devuelve null
- Alerta de seguridad: la aplicación contiene claves privadas incrustadas o archivos de almacén de claves
- Java.lang.IllegalAccessError: Method 'void android.support.v4.content
- Ubicación de Google Play No conectado. Llame a connect () y espere a que onConnected () se llame
- Android Excepción: LoadedApk: forgetServiceDispatcher: 888 {AdWorker # 2
def googlePlayServicesVersion = '9.0.2' compile "com.google.android.gms:play-services:$googlePlayServicesVersion" compile "com.google.android.gms:play-services-analytics:$googlePlayServicesVersion" compile "com.google.android.gms:play-services-auth:$googlePlayServicesVersion" compile "com.google.android.gms:play-services-vision:$googlePlayServicesVersion" Starting window AppWindowToken{44f94e90 token=Token{42a85dc8 ActivityRecord{430f4b70 u0 com.ioa***.****/com.******.****.activity.SignUpInTabActivity_ t84}}} timed out ANR in com.ioa***.**** PID: 24075 Reason: Executing service com.ioacom.ioa***.****/com.google.android.gms.tagmanager.TagManagerService Load: 4.49 / 4.91 / 5.12 CPU usage from 5972ms to 0ms ago: 1.3% 372/adbd: 0.1% user + 1.1% kernel / faults: 406 minor 1.1% 953/system_server: 0.6% user + 0.5% kernel / faults: 6 minor 0.1% 1//init: 0% user + 0.1% kernel / faults: 52 minor 0.3% 1053/com.android.systemui: 0.3% user + 0% kernel / faults: 2 minor 0.3% 18921/kworker/0:2: 0% user + 0.3% kernel 0.1% 3/ksoftirqd/0: 0% user + 0.1% kernel 0.1% 8/rcu_preempt: 0% user + 0.1% kernel 0.1% 144/mmcqd/0: 0% user + 0.1% kernel 0% 204/servicemanager: 0% user + 0% kernel 0% 224/mediaserver: 0% user + 0% kernel 0% 1097/wpa_supplicant: 0% user + 0% kernel 0.1% 1749/mpdecision: 0.1% user + 0% kernel 0% 17052/kworker/u8:7: 0% user + 0% kernel 0% 20159/kworker/0:3: 0% user + 0% kernel 0% 24075/com.ioa***.******: 0% user + 0% kernel 9.3% TOTAL: 2.8% user + 6.2% kernel + 0.1% iowait CPU usage from 2824ms to 3341ms later: 3.8% 953/system_server: 0% user + 3.8% kernel / faults: 1 minor 3.8% 967/ActivityManager: 0% user + 3.8% kernel 9% TOTAL: 0% user + 0% kernel + 9% iowait
Mi Actividad de Lanzador que debería aparecer sólo por primera vez que el usuario ingrese la aplicación:
public class FirstActivity extends AppCompatActivity { public void onCreate() { if (userDataAccess.getUserProfile() != null) { startDashBoardActivity(); finish(); } else if (!preferences.isFirstAccess().get()) { startLoginActivity(); } } }
Mi actividad de SignIn:
@EActivity(R.layout.activity_with_tabs_layout) public class SignUpInTabActivity extends AppCompatActivity { @ViewById(R.id.toolbar) Toolbar toolbar; @ViewById(R.id.tabs) TabLayout tabLayout; @ViewById(R.id.viewpager) ViewPager viewPager; private LoginFragment loginFragment; @AfterViews public void init(){ setSupportActionBar(toolbar); ViewCompat.setElevation(tabLayout, 4); if(getSupportActionBar() != null) { toolbar.setSubtitleTextColor(ContextCompat.getColor(this, android.R.color.white)); toolbar.setTitleTextColor(ContextCompat.getColor(this, android.R.color.white)); toolbar.setTitle(R.string.*****); toolbar.setSubtitle(R.string.flavor); } setupViewPager(); } @UiThread public void setupViewPager() { loginFragment = LoginFragment_.builder().build(); ViewPagerTabsAdapter adapter = new ViewPagerTabsAdapter(getSupportFragmentManager()); adapter.addFragment(loginFragment, getString(R.string.login).toUpperCase()); adapter.addFragment(SignUpFragment_.builder().build(), getString(R.string.register_user).toUpperCase()); viewPager.setAdapter(adapter); tabLayout.setupWithViewPager(viewPager); } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); loginFragment.onActivityResult(requestCode,resultCode,data); } }
- Obtenga los puntos de latitud y longitud cada 10 metros, entre las dos ubicaciones diferentes en android
- No se pudo administrar el error android.intent.package_ADDED y REMOVED al recuperar la ubicación mediante Fused Location API
- Los servicios de Google Play están desactualizados. Requiere 7571000 pero se encontró 6774470
- Android ActivityRecognition no llamando aHandleIntent
- Determinar que el juego se lanzó desde la aplicación Google Play Games
- ¿Debería conectarse y desconectarse de Google Play Services en cada actividad?
- ¿Qué significa RC_SIGN_IN en googleplus login?
- Cómo obtener información de google play store en mi aplicación android?
Parece ser un problema con play-services 9+.
Mi primera solución fue rollback play-services a 8.4.0, y todo funciona de nuevo.
Sigo buscando una solución, porque lo anterior no me satisface, y
Me pareció que el problema era el "servicios de juegos genéricos" con el específico, no entiendo por qué funciona en 8.4.0 y no en 9+.
Mi solución es quitar la línea inferior
compile "com.google.android.gms:play-services:9.0.2"
Y mantener sólo lo específico (esta es la mejor manera, independientemente del problema en cuestión)
compile "com.google.android.gms:play-services-analytics:9.0.2" compile "com.google.android.gms:play-services-auth:9.0.2" compile "com.google.android.gms:play-services-vision:9.0.2"
¡Y funciona!
Realmente quiero saber por qué el error fue un ANR.
- ¿Cómo implementar el evento de clic en el icono de la barra de herramientas?
- Android: Pasar un servicio a un manejador