GSAP implementation in Android WebView: Issue with removing non-JNI local reference resulting in thread dump

When using the Nexus5 emulator in Android Studio 1.4 with a 3D animation (x, y, rotationX, rotationY, rotationZ) using GSAP in the webview, the logcat keeps throwing out a repeated message:

Attempt to remove non-JNI local reference, dumping thread

Despite this message, my webapp's functionality does not seem to be affected much, except for some slight stuttering during the animations that trigger the message multiple times per second for animations lasting a few seconds.

Any thoughts on how to resolve this issue, or is it not a major concern?

UPDATE: The error does not occur when testing on my Samsung Galaxy S4 device, indicating that it might be specific to the emulator.

Answer №1

It appears that the webview you are utilizing does not have host GPU emulation.

The Google team has stated in their response:

"Do not expect WebView to work properly without host GPU emulation in the near future.

Furthermore, given that the emulator does not receive WebView updates, testing on it means that you are using an outdated version of WebView compared to most users, making it an unreliable representation of actual usage."

Refer to the full issue report here:

*https://code.google.com/p/android/issues/detail?id=189040

Similar questions

If you have not found the answer to your question or you are interested in this topic, then look at other similar questions below or use the search

Problem arising from apostrophe usage in Javascript OData request

In my current project, I have a text input field that passes a value through JS to fetch filtered data of names from a JSON file using OData query parameters. However, I've encountered an issue where if a name contains an apostrophe, it results in a ...

Retrieve the current global time accurately, utilizing an API to access internet-based time data within a React js framework

Seeking a way to retrieve current international time in React Js using internet const date = new Date(); The above code snippet retrieves the current device time, but I need an alternative solution. The issue is that when I change my device's time se ...

Error Alert - React Hooks: Calling Hook incorrectly

Being new to JS and React, I encountered this error message: Invalid Hook Call when attempting to show and hide a component upon clicking another one. Here is the code snippet that caused the issue: const RenderList = ({data}) => { return data.map(( ...

Leveraging the power of LocalStorage in Ionic 2

Trying to collect data from two text fields and store it using LocalStorage has proven tricky. Below is the code I have set up, but unfortunately it's not functioning as expected. Can you provide guidance on how to resolve this issue? In page1.html ...

Changing the Color of an Object3D Mesh in Three.js

Seeking advice on how to update the color of a Three.js Object3D. Initially created using MeshStandardMaterial, this object is later retrieved from the scene by its ID. Is it possible to change the color of the Mesh at this stage? If needing to replace th ...

Iterate through an array of objects using underscores, make alterations to specific objects, and eliminate other objects

Let's say I have an array of objects: [{"month":"03-2016","isLate":"N","transactionCount":4,"transactionAmount":8746455},{"month":"05-2016","isLate":"N","transactionCount":5,"transactionAmount":-40004952945.61},{"month":"06-2016","isLate":"N","transa ...

What is causing the element to automatically default to the maximum width setting?

While developing a chat app, I encountered an issue with CSS styling. I assigned a specific class to incoming messages and set a max-width limit for the container element. However, instead of the width adjusting based on the content within it, the message ...

Unable to execute Glide clear method in onDestroyFragment()

After noticing memory leaks in my Fragment, I took steps to address the issue. In onDestroyView, I set the views to null which helped reduce memory consumption slightly. However, I also wanted to clear Glide memory by adding this: @Override public void on ...

JQuery animations not functioning as expected

I've been attempting to create a functionality where list items can scroll up and down upon clicking a link. Unfortunately, I haven't been able to achieve the desired outcome. UPDATE: Included a JSFiddle jQuery Code: $(document).ready(function ...

Utilizing sinon on unit tests for MongoDB in Node.js

My latest project involved creating a model function for mongodb using node-mongodb-native: 'use strict'; const mongo = require('mongodb'); class BlacklistModel { constructor(db, tenant_id, logger) { this._db = db; ...

The final marker is consistently used by the click event

Currently exploring the Google Maps API for the first time and facing a challenge in Rails when trying to add a click event for each marker. I am looping through the team_locations model to extract latitude and longitude data in order to set up markers. ...

Change the content of an ion-card in Ionic2 dynamically

After fetching a list of books from the backend API provider, I am presented with sample data that looks like this: { "success":true, "books":[ { "id":1000, "book_code":"CC219102", "read_status":"completed", ...

Peruse the written content and implement it within a div element

If any of the words match, I want to highlight them in a different color on the website for the user to see. var main = document.getElementById("selectedItem").innerText; var opinionTargets = ["screen", "cover", "size", "waterproof", "voice", "light", "pr ...

A guide on using Jooq to retrieve entities using a composite key

Is it possible to query an entity in Jooq using a composite key? For example: UserAttempts org.jooq.impl.DAOImpl.findById(Record2<UInteger, String> id) How can the Record2<UInteger, String> be utilized when id is a composite key? ...

Guide to Retrieving 'req' in JavaScript within Node.js / Express Framework

I have a loaded page named tournament/:key, where a Tournament object is passed. The Jade template accesses variables from the Tournament using syntax like #{tournamentData.name} to display the data on the page. The list of matches is stored as an array wi ...

What is the purpose of sorting an object using the sequence defined in an array?

Have you ever wondered how the sortWeekFunction function can rearrange an object based on a predefined array order? It may seem complex at first glance, but let's break down how this code actually works. const weeksArr = ['sunday', ' ...

Steps for resetting data() on a route without parameters:

Having trouble restarting a route on a new editor I have a specific route /editor as well as /editor?_id=dasd448846acsca The /editor route consists of a simple form with empty inputs, while the /editor?_id=dasd448846acsca route has the same component bu ...

Creating a text area for printing

When attempting to print text from a JTextArea using a printer, the text does not appear in the print file, specifically the .xps file. bprint.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent ae) { try { ...

Exploring Serial Port Programming on Android Beagleboard

I am in the process of transferring a Linux program to Android, specifically for the Beagle Board platform. My program needs to interact with a serial port for sending and receiving data. Can I read and write to the serial port from my application withou ...

What is the method for retrieving a cell value randomly from an Excel file using the random function in Java?

I have a spreadsheet with 10 entries, spanning rows 0-9 and 0 columns. How can I use a random function to read a value from cell (5,0) (row, column)? Here is the code I have attempted: FileInputStream fis = new FileInputStream("C://Users//logasaravanan. ...