IGDB.com - Video Games Database beta Community Report 📲 Google Pixel XL 2, Android 8.1.0

IGDB - Video Games Database beta

This beta app is all about games. It has a huge database where you can search and browse game details. I like the UI, it easy to navigate through the app. It is possible to add games to the list of favourites and rate them with a 0 to 100 scale. Usability wise it is done quite well in general. I would try to move actions from the floating button somewhere else to decrease an amount of taps the user has to perform (Not very important). It was very interesting to test this one and I also liked that this app contains links to the wiki pages and related twitter accounts.

Device: Samsung Galaxy Note 4, Android 6.0.1

Notes:

Some games in the database has an empty description. Search for “fifa” and open fifa 12. See the screenshot below.

There is no warning if device doesn’t have internet connection. In addition to that, the user can see “Server maintenance” message on app loading if he doesn’t have an internet connection.

Issues:

The user can see a short blink during the search hot loading.

  • Priority - low.
  • Steps - open app - press the search icon - type "fifa" - wait for the search results loading - type Space.
  • Expected - the user should see a short loading animation for hot loading events or the list of results should stay unchanged after the "Space" character entering b/c the list of new results will be the same.
  • Actual - the user can see a short blink during the search hot loading even if the list of results is the same.

The second Back button press doesn’t close the app if the settings menu was closed via back arrow

  • Priority - medium.
  • Steps - open app - open app drawer - open settings - press Back arrow icon at the top-left corner - press Back device button - see the toast message - press Back device button again
  • Expected - the app is closed as per Toast promise.
  • Actual - Settings activity is opened. It looks like the Back arrow icon starts a new main activity instead of resuming an old one which behaves badly.

Full description is opened by default on the game details page and “read more” button collapses it

  • Priority - medium.
  • Steps - open app - open any game - swipe right to the details page - scroll down - press “Read more”
  • Expected - Short description is opened by default and Read more button expands it to the full description. If it is intended to show a full description by default, the button should be changed to the “Show less”.
  • Actual - “read more” button shows a short description which is “less"

The details page tab opening crashes an app in case if the Main activity was recreated by the Settings activity

  • Priority - High.
  • Steps - open app - open app drawer - open settings - press Back arrow icon at the top-left corner - open any game - swipe right to the details page.
  • Expected - Settings activity shouldn’t spawn a new Main activity instance and the details page should be displayed.
  • Actual - App crashes. See logs.

10-21 23:35:36.880 3750 3750 E AndroidRuntime: FATAL EXCEPTION: main 10-21 23:35:36.880 3750 3750 E AndroidRuntime: Process: com.igdb.igdbmainapp, PID: 3750 10-21 23:35:36.880 3750 3750 E AndroidRuntime: java.lang.NullPointerException: null reference 10-21 23:35:36.880 3750 3750 E AndroidRuntime: at com.google.android.gms.common.internal.zzbp.zzu(Unknown Source) 10-21 23:35:36.880 3750 3750 E AndroidRuntime: at com.google.android.gms.internal.zzccw.zzdn(Unknown Source) 10-21 23:35:36.880 3750 3750 E AndroidRuntime: at com.google.firebase.analytics.FirebaseAnalytics.getInstance(Unknown Source) 10-21 23:35:36.880 3750 3750 E AndroidRuntime: at com.igdb.igdbcore.Events.<init>(Events.java:25) 10-21 23:35:36.880 3750 3750 E AndroidRuntime: at com.igdb.igdbmainapp.adapter.ArticleAdapter.<init>(ArticleAdapter.java:44) 10-21 23:35:36.880 3750 3750 E AndroidRuntime: at com.igdb.igdbmainapp.view.GameAboutFragment$5.onArticlesLoaded(GameAboutFragment.java:505) 10-21 23:35:36.880 3750 3750 E AndroidRuntime: at com.igdb.igdbmainapp.factory.ArticleFactory$1.onSuccess(ArticleFactory.java:46) 10-21 23:35:36.880 3750 3750 E AndroidRuntime: at com.igdb.api_android_java.model.APIWrapper$9.onSuccess(APIWrapper.java:185) 10-21 23:35:36.880 3750 3750 E AndroidRuntime: at com.igdb.api_android_java.model.APIWrapper$1.onResponse(APIWrapper.java:61) 10-21 23:35:36.880 3750 3750 E AndroidRuntime: at com.igdb.api_android_java.model.APIWrapper$1.onResponse(APIWrapper.java:58) 10-21 23:35:36.880 3750 3750 E AndroidRuntime: at com.android.volley.toolbox.JsonRequest.deliverResponse(JsonRequest.java:65) 10-21 23:35:36.880 3750 3750 E AndroidRuntime: at com.android.volley.ExecutorDelivery$ResponseDeliveryRunnable.run(ExecutorDelivery.java:99) 10-21 23:35:36.880 3750 3750 E AndroidRuntime: at android.os.Handler.handleCallback(Handler.java:739) 10-21 23:35:36.880 3750 3750 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:95) 10-21 23:35:36.880 3750 3750 E AndroidRuntime: at android.os.Looper.loop(Looper.java:158) 10-21 23:35:36.880 3750 3750 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:7225) 10-21 23:35:36.880 3750 3750 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method) 10-21 23:35:36.880 3750 3750 E AndroidRuntime: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230) 10-21 23:35:36.880 3750 3750 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120) 10-21 23:35:36.880 3936 3958 W ActivityManager: Force finishing activity com.igdb.igdbmainapp/.view.GamePageActivity


Removing from the favourites crashes the app

  • Priority - high.
  • Steps - open app - sign in - open any app - tap on the floating button - Press on the Add to Want List - see “error adding” toast message - tap on the floating button again - press on the Remove from Want List.
  • Expected - the user can add and remove games from the Want list without any errors.
  • Actual - The user receives a server error during adding any game to the Want list (The same operation works normally without an internet). The game was marked as “added” on the app level and the user can remove it from the list. This operation causes a crash. See logs.

10-21 23:59:17.725 16035 16293 E AndroidRuntime: Process: com.igdb.igdbmainapp, PID: 16035 10-21 23:59:17.725 16035 16293 E AndroidRuntime: java.lang.NullPointerException: Attempt to invoke virtual method 'int java.lang.Integer.intValue()' on a null object reference 10-21 23:59:17.725 16035 16293 E AndroidRuntime: at com.igdb.igdbmainapp.view.GamePageActivity$11.run(GamePageActivity.java:380) 10-21 23:59:17.725 16035 16293 E AndroidRuntime: at java.lang.Thread.run(Thread.java:818) 10-21 23:59:17.725 3936 4569 W ActivityManager: Force finishing activity com.igdb.igdbmainapp/.view.GamePageActivity


The monkey script test crashes the app with a high chance

  • Priority - medium.
  • Steps - run "adb shell monkey -p com.igdb.igdbmainapp -v --pct-syskeys 0 1000” script
  • Expected - test passes successfully
  • Actual - app crashed 4 out of 5 tries. See logs.

This stack trace is the same as the first one so it might be that this issue can happen in other places. However, I didn't find the way to reproduce it manually.


:Monkey: seed=1508705077193 count=3000 :AllowPackage: com.igdb.igdbmainapp :IncludeCategory: android.intent.category.LAUNCHER :IncludeCategory: android.intent.category.MONKEY // Event percentages: // 0: 15.306122% // 1: 10.204082% // 2: 2.0408163% // 3: 15.306122% // 4: -0.0% // 5: -0.0% // 6: 25.510204% // 7: 15.306122% // 8: -0.0% // 9: 2.0408163% // 10: 1.0204082% // 11: 13.265306% :Switch: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER; launchFlags=0x10200000;component=com.igdb.igdbmainapp/.view.SplashscreenActivity;end // Allowing start of Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.igdb.igdbmainapp/.view.SplashscreenActivity } in package com.igdb.igdbmainapp :Sending Touch (ACTION_DOWN): 0:(698.0,28.0) :Sending Touch (ACTION_UP): 0:(697.3132,36.741165) :Sending Touch (ACTION_DOWN): 0:(440.0,978.0) :Sending Touch (ACTION_UP): 0:(439.72003,982.6345) :Sending Touch (ACTION_DOWN): 0:(967.0,1356.0) :Sending Touch (ACTION_UP): 0:(975.05835,1358.3226) // Allowing start of Intent { cmp=com.igdb.igdbmainapp/.view.GamePageActivity } in package com.igdb.igdbmainapp // Allowing start of Intent { cmp=com.igdb.igdbmainapp/.view.GamePageActivity } in package com.igdb.igdbmainapp // Allowing start of Intent { cmp=com.igdb.igdbmainapp/.view.GamePageActivity } in package com.igdb.igdbmainapp // Injection Failed :Sending Touch (ACTION_DOWN): 0:(1354.0,1695.0) :Sending Touch (ACTION_UP): 0:(1414.404,1793.5382) :Sending Trackball (ACTION_MOVE): 0:(3.0,0.0) :Sending Trackball (ACTION_MOVE): 0:(1.0,2.0) :Sending Touch (ACTION_DOWN): 0:(150.0,2453.0) :Sending Touch (ACTION_UP): 0:(235.53381,2560.0) :Sending Touch (ACTION_DOWN): 0:(1194.0,2010.0) :Sending Touch (ACTION_UP): 0:(1193.4337,2021.1672) :Sending Trackball (ACTION_MOVE): 0:(0.0,-4.0) :Sending Touch (ACTION_DOWN): 0:(1161.0,1912.0) :Sending Touch (ACTION_UP): 0:(1167.8591,1910.0824) :Sending Trackball (ACTION_MOVE): 0:(2.0,1.0) :Sending Trackball (ACTION_MOVE): 0:(2.0,-5.0) //[calendar_time:2017-10-22 00:25:18.477 system_uptime:276811714] // Sending event #100 // CRASH: com.igdb.igdbmainapp (pid 2668) // Short Msg: java.lang.NullPointerException // Long Msg: java.lang.NullPointerException: null reference // Build Label: samsung/treltexx/trelte:6.0.1/MMB29K/N910CXXS2DQHB:user/release-keys // Build Changelist: N910CXXS2DQHB // Build Time: 1502430430000 // java.lang.NullPointerException: null reference // at com.google.android.gms.common.internal.zzbp.zzu(Unknown Source) // at com.google.android.gms.internal.zzccw.zzdn(Unknown Source) // at com.google.firebase.analytics.FirebaseAnalytics.getInstance(Unknown Source) // at com.igdb.igdbcore.Events.<init>(Events.java:25) // at com.igdb.igdbmainapp.adapter.ArticleAdapter.<init>(ArticleAdapter.java:44) // at com.igdb.igdbmainapp.view.GameAboutFragment$5.onArticlesLoaded(GameAboutFragment.java:505) // at com.igdb.igdbmainapp.factory.ArticleFactory$1.onSuccess(ArticleFactory.java:46) // at com.igdb.api_android_java.model.APIWrapper$9.onSuccess(APIWrapper.java:185) // at com.igdb.api_android_java.model.APIWrapper$1.onResponse(APIWrapper.java:61) // at com.igdb.api_android_java.model.APIWrapper$1.onResponse(APIWrapper.java:58) // at com.android.volley.toolbox.JsonRequest.deliverResponse(JsonRequest.java:65) // at com.android.volley.ExecutorDelivery$ResponseDeliveryRunnable.run(ExecutorDelivery.java:99) // at android.os.Handler.handleCallback(Handler.java:739) // at android.os.Handler.dispatchMessage(Handler.java:95) // at android.os.Looper.loop(Looper.java:158) // at android.app.ActivityThread.main(ActivityThread.java:7225) // at java.lang.reflect.Method.invoke(Native Method) // at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230) // at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120) // ** Monkey aborted due to error. Events injected: 110 :Sending rotation degree=0, persist=false :Dropped: keys=1 pointers=0 trackballs=0 flips=0 rotations=0 :Network stats: elapsed time=1637ms (0ms mobile, 0ms wifi, 1637ms not connected) :System appears to have crashed at event 110 of 3000 using seed 1508705077193


Happy Testing!

  • The biggest gaming database in the universe with over 75 000 games!
Tip us ⚡️ with any news about features you discovered in the app, to share them with the Community of beta testers. Are you looking for more insights? Check our daily Community Reports on TestingCatalog.
About authors:
We are a team of Android enthusiasts exploring top beta apps on daily basis. You can always find more info on Alexey's profile page.