【发布时间】:2019-12-02 04:29:27
【问题描述】:
我想从 xml 资源中获取字符串并将其作为字符串变量值,这是我的代码:
String defaultText = Resources.getSystem().getString(R.string.release_movie_message_now);
运行应用系统时提示错误:
E/AndroidRuntime: 致命异常: main 进程:com.erlanggakmoekasan.imovie,PID:26603 android.content.res.Resources$NotFoundException:字符串资源 ID #0x7f0e0049 在 android.content.res.Resources.getText(Resources.java:363) 在 android.content.res.Resources.getString(Resources.java:456) 在 com.erlanggakmoekasan.imovie.notifications.ReleaseTodayReceiver$1.onResponse(ReleaseTodayReceiver.java:68) 在 retrofit2.DefaultCallAdapterFactory$ExecutorCallbackCall$1$1.run(DefaultCallAdapterFactory.java:83) 在 android.os.Handler.handleCallback(Handler.java:873) 在 android.os.Handler.dispatchMessage(Handler.java:99) 在 android.os.Looper.loop(Looper.java:214) 在 android.app.ActivityThread.main(ActivityThread.java:7073) 在 java.lang.reflect.Method.invoke(本机方法) 在 com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493) 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:964)
我的string.xml如下:
<resources>
<string name="release_movie_message_now">telah rilis sekarang, cek dan lihat!</string>
</resources>
有什么办法吗??注意我在BroadcastReceiver 做。
【问题讨论】:
-
BroadcastReceiver在#onRecieve()中将上下文作为参数传递。所以你可以使用context.getResources()..