【发布时间】: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);