- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我已经断断续续地尝试修复这个崩溃数周了,但我还没有发现问题。当我在 Libgdx 游戏中运行以下函数“GetAchievementsInformation()”时,应用程序崩溃并显示“当调用堆栈上存在非 native 帧时无法分离线程”
我在这里做错了什么吗?我的大多数其他 Facebook 请求都运行得很好(我有第二个请求也出现了相同的错误)
public FBRequest GetAchievementsRequest()
{
return new FBRequest(FBSession.getActiveSession(),"/"+ APP_ID + "/achievements", null,"GET");
}
FBRequestHandler GetAchievementsRequestHandler()
{
return new FBRequestHandler()
{
@Override
public void invoke(FBRequestConnection connection, NSObject data, NSError error)
{
if (error != null)
{
Gdx.app.log("error", error.toString());
logout();
return;
}
JSONArray achievements_data;
try {
achievements_data = NSObjectToJSONObject(data).getJSONArray("data");
for(int i=0;i<achievements_data.length();i++)
{
JSONObject achievement_data = achievements_data.getJSONObject(i);
JSONObject pointdata = achievement_data.getJSONObject("data");
String points_data = pointdata.get("points").toString();
int score = Integer.parseInt(points_data);
String url = achievement_data.get("url").toString();
JSONArray list = achievement_data.getJSONArray("image");
String image_url = list.getJSONObject(0).get("url").toString();
achievementManager.AddInformationToAchievement(url, score,image_url);
}
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Gdx.app.log("request", "get achieved achievements");
GetAchievedAchievementsRequest().start(GetAchievedAchievementRequestHandler());
}
};
}
public FBRequest GetAchievedAchievementsRequest()
{
return new FBRequest(FBSession.getActiveSession(),"/me/achievements", null, "GET");
}
FBRequestHandler GetAchievedAchievementRequestHandler()
{
return new FBRequestHandler()
{
@Override
public void invoke(FBRequestConnection connection, NSObject data,NSError error)
{
if (error != null)
{
Gdx.app.log("error", error.toString());
logout();
return;
}
JSONArray achievements_data;
try
{
achievements_data = NSObjectToJSONObject(data).getJSONArray("data");
for(int i=0;i<achievements_data.length();i++)
{
JSONObject achievement_data = achievements_data.getJSONObject(i).getJSONObject("data");
JSONObject achievement_sub_data = achievement_data.getJSONObject("achievement");
String url = achievement_sub_data.get("url").toString();
achievementManager.UnlockedAchievement(url);
}
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
achievementManager.SetupAchievementsFinished(); //finished loading after this
}
};
}
public void GetAchievementInformation()
{
Gdx.app.log("request", "Getting achievement information");
GetAchievementsRequest().start(GetAchievementsRequestHandler());
}
JSONObject NSObjectToJSONObject(NSObject object)
{
JSONObject json = null;
String jsonString64 = NSJSONSerialization.createJSONData(object, NSJSONWritingOptions.PrettyPrinted).toBase64EncodedString(NSDataBase64EncodingOptions.None);
String jsonString = Base64Coder.decodeString(jsonString64);
Gdx.app.log("json", "to json:" + jsonString);
try {
json = new JSONObject(jsonString);
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return json;
}
最佳答案
通过添加以下内容修复了内存泄漏:connection.dispose();
我不确定为什么这与我提出的其他请求无关。但在这里它导致了崩溃。
关于java - libgdx robovm 在调用堆栈上具有非 native 帧的分离线程上崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28150832/
首先,我非常感谢您对这里发布的疑问的支持和回应。 我正在开发一个需要访问图库和相机的应用程序,因为它有一个用户配置屏幕。 我相信我对如何使用 RoboVM 完成这样的事情有足够的研究,并发现: Wha
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。 关闭 4 年前。
每次运行使用 libgdx/robovm 构建的应用程序时,我都会遇到问题。构建成功,但每次打开应用程序时,我都会得到以下堆栈跟踪: java.lang.NoClassDefFoundError: o
我有一个使用 libGDX 开发并使用 robovm 移植到 iOS 的应用程序。这是完美的工作。然后我更新了我的配置文件以允许导出到另一台设备。执行此操作时,我现在得到 2 个在 robovm 中列
我正在尝试将我的 libgdx 游戏导出到 .ipa。首先我得到这样的错误: No signing identity found matching 'iPhone Distribution: Alon
我想在 roboVM 项目中定义一个观察者。为此,我使用键值观察器功能。这是我的代码: button.setTitle("Click me!", UIControlState.Normal);
我一直很感兴趣地关注用于 iOS 开发的 RoboVM。有人可以向我指出在 iOS 上运行时您的 JavaFX(或您使用的任何技术)的限制吗? 比如,你会用Spring吗?我想这永远不可能,因为 Ro
我想知道如何使用 RoboVM 在 Java 中检查手机是否正在充电。没什么好说的,问题很简单。 最佳答案 我自己找到了问题的答案。以下是在 RoboVM 中获取电池状态的方法: UIDeviceBa
我已经安装了 robowm 并创建了官方网站上提供的示例应用程序。 它在 3.5 英寸屏幕尺寸的模拟器上完美运行,但当我使用 4 英寸模拟器或 iPhone 5 测试时,屏幕顶部和底部出现黑条。 ro
如果我使用任何非空参数调用以下 RoboVM 方法: public static void runOnUiThread(final Runnable runnable) { System.ou
我希望这是问这个问题的正确地方: 我一直在尝试通过 RoboVM (libGDX) 让 chartboost 在 iOS 上工作我正在使用 RoboVM 的 Mobidevelop 分支,所以我现在唯
这是我的问题.. 直到今天早上我收到苹果支持团队的一封电子邮件说我有(预安装的)的 xcode 受到损害,所以为了缩短事情我不得不重新安装x代码。在这样做并更新 android studio 的 ro
我可以使用 LibGDX 0.9.9 和 RoboVM 0.0.7 编译和运行我的游戏 我已经能够为应用程序商店提交构建一个 ipa。使用 Application Loader 上传我的应用程序时,我
我正在尝试配置 RoboVM 来为 iOS 构建我的 LibGDX 项目。 在我的build.gradle project(":ios") { apply plugin: "java"
我搜索了一下,发现编辑 build.gradle 是这样的 project(":ios") { apply plugin: "robovm" ..... robovm {
我正在尝试将 Google Analytics RoboVM 绑定(bind)实现到我的项目中。 我尝试使用从 http://libgdx.badlogicgames.com/robovm-ios-b
我正在使用 Robovm 开发 ios 移动应用程序。我需要在我的应用程序中使用 Firebase。有没有办法在 Robovm 中使用 Firebase? 最佳答案 更新:我们已将 Firebase
我正在尝试使用 httpurlconnection 从 Facebook 下载头像图像。这在安卓上运行良好。如果我从非 SSL 服务器下载任意图像,它也可以在 iOS 上使用 robovm 运行。如果
我正在尝试导入 RoboVM 绑定(bind)以在我的项目中实现 mopub,但是当我尝试“构建模型”时遇到了问题。我尝试将其导入为 gradle 项目,但是当我构建它时,出现错误: "Error i
我有一款使用 LibGDX 的安卓游戏。在其中,我有一些用于在浏览器中打开 URL 的按钮: Intent intent = new Intent(Intent.ACTION_VIEW, Uri.pa
我是一名优秀的程序员,十分优秀!