【问题标题】:Sharing text on libgdx android在 libgdx android 上共享文本
【发布时间】:2014-06-26 22:14:50
【问题描述】:

我正在尝试在 libgdx 游戏中创建共享按钮。我已经按照这个指南https://github.com/libgdx/libgdx/wiki/Interfacing-with-platform-specific-code,但是在调用接口方法时,我得到了这个错误:

06-26 23:57:31.594: W/System.err(27789): java.lang.NullPointerException
06-26 23:57:31.596: W/System.err(27789):    at android.app.Activity.startActivityForResult(Activity.java:3436)
06-26 23:57:31.597: W/System.err(27789):    at android.app.Activity.startActivityForResult(Activity.java:3393)
06-26 23:57:31.599: W/System.err(27789):    at android.app.Activity.startActivity(Activity.java:3644)
06-26 23:57:31.601: W/System.err(27789):    at android.app.Activity.startActivity(Activity.java:3607)
06-26 23:57:31.602: W/System.err(27789):    at com.mimostudios.utils.Share.shareScore(Share.java:18)
06-26 23:57:31.603: W/System.err(27789):    at com.mimostudios.policecarracing.android.AndroidShare.shareScore(AndroidShare.java:15)
06-26 23:57:31.604: W/System.err(27789):    at com.mimostudios.policecarracing.MenuScreen.render(MenuScreen.java:47)
06-26 23:57:31.605: W/System.err(27789):    at com.badlogic.gdx.Game.render(Game.java:46)
06-26 23:57:31.607: W/System.err(27789):    at com.badlogic.gdx.backends.android.AndroidGraphics.onDrawFrame(AndroidGraphics.java:414)
06-26 23:57:31.608: W/System.err(27789):    at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1523)
06-26 23:57:31.609: W/System.err(27789):    at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1240)

接口调用的方法是

12 public void shareScore(String title, String message) {
13  Intent share = new Intent(Intent.ACTION_SEND);
14  share.setType("text/plain");
15  share.putExtra(Intent.EXTRA_TEXT, message);
16  try {
17      Intent finalIntent = Intent.createChooser(share, title); 
18      startActivity(finalIntent); 
19  } catch (Exception e) {
20      System.out.println("error: " + e.getMessage());
21      e.printStackTrace();
22  }
23 }

我还在 manifest.xml 中添加了 Share Activity

<activity android:name="com.mimostudios.utils.Share"></activity>

有什么想法吗? 如果我遗漏了一些相关信息,请告诉我,这是我的第一个问题!

【问题讨论】:

  • 这是哪一行 - at com.mimostudios.utils.Share.shareScore(Share.java:18) ?
  • 对不起,我忘记了数字,我将编辑原始问题。无论如何,第 18 行是 startActivity(finalIntent);

标签: android libgdx


【解决方案1】:

我刚刚找到了解决方案,基于此:Start a new Activity from non Activity class

我尝试使用的类是从 Activity 扩展而来的,因为我认为这是类启动新 Activity 的唯一方法。 但是,如果将上下文传递给该类的构造函数,则可以从非 Activity 类启动 Activity。之后,您可以从上下文中调用方法 startActivity。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-05-16
    • 1970-01-01
    • 1970-01-01
    • 2012-03-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-10
    相关资源
    最近更新 更多