返回信息流assets文件夹下面有png图标:pause.png
(别讨论其他方法~~俺知道这是个麻烦的方法~~没办法项目需要)
try {
AssetManager am = context.getAssets();
InputStream ipause = am.open("pause.png");
Bitmap bpause =BitmapFactory.decodeStream(ipause);
dpause = new BitmapDrawable(bpause);
mStartButton.setBackgroundDrawable(bpause);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
但是在inputstream时候就catch到error了
提示文件没有找到,
log:
05-16 09:40:46.200: WARN/System.err(541): java.io.FileNotFoundException: pause.png
05-16 09:40:46.217: WARN/System.err(541): at android.content.res.AssetManager.openAsset(Native Method)
05-16 09:40:46.226: WARN/System.err(541): at android.content.res.AssetManager.open(AssetManager.java:313)
05-16 09:40:46.257: WARN/System.err(541): at android.content.res.AssetManager.open(AssetManager.java:287)
05-16 09:40:46.277: WARN/System.err(541): at PluginTest.test.VideoSurface.<init>(VideoSurface.java:120)
05-16 09:40:46.286: WARN/System.err(541): at PluginTest.test.PluginTest.onCreate(PluginTest.java:18)
05-16 09:40:46.306: WARN/System.err(541): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
05-16 09:40:46.306: WARN/System.err(541): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
05-16 09:40:46.339: WARN/System.err(541): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
05-16 09:40:46.347: WARN/System.err(541): at android.app.ActivityThread.access$2300(ActivityThread.java:125)
05-16 09:40:46.356: WARN/System.err(541): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
05-16 09:40:46.356: WARN/System.err(541): at android.os.Handler.dispatchMessage(Handler.java:99)
05-16 09:40:46.386: WARN/System.err(541): at android.os.Looper.loop(Looper.java:123)
05-16 09:40:46.386: WARN/System.err(541): at android.app.ActivityThread.main(ActivityThread.java:4627)
05-16 09:40:46.407: WARN/System.err(541): at java.lang.reflect.Method.invokeNative(Native Method)
05-16 09:40:46.407: WARN/System.err(541): at java.lang.reflect.Method.invoke(Method.java:521)
05-16 09:40:46.426: WARN/System.err(541): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
05-16 09:40:46.426: WARN/System.err(541): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
05-16 09:40:46.436: WARN/System.err(541): at dalvik.system.NativeStart.main(Native Method)
这是一条镜像帖。来源:北邮人论坛 / mobile-terminal-at / #3303同步于 2011/5/17
该镜像源已超过 30 天没有更新,可能在源站已被删除。
MobileTerminalAT机器人发帖
【android】求助一下assets文件夹下文件的读取
supertccy
2011/5/17镜像同步9 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
图片大小有没有超过1MB?
【 在 supertccy (DaYe) 的大作中提到: 】
: assets文件夹下面有png图标:pause.png
: (别讨论其他方法~~俺知道这是个麻烦的方法~~没办法项目需要)
: try {
: ...................
【 在 tv 的大作中提到: 】
: 图片大小有没有超过1MB?
: 【 在 supertccy (DaYe) 的大作中提到: 】
: : assets文件夹下面有png图标:pause.png
: ...................
没有 后面利用
dpause=Drawable.createFromPath("file:///android_asset/pause.png");
也是读不进来,很囧
额,我刚才还试了一下,可以读的啊
要不你用getResource().getAsset()
【 在 supertccy (DaYe) 的大作中提到: 】
: 没有 后面利用
: dpause=Drawable.createFromPath("file:///android_asset/pause.png");
: 也是读不进来,很囧
: ...................
【 在 tv 的大作中提到: 】
: 额,我刚才还试了一下,可以读的啊
: 要不你用getResource().getAsset()
: 【 在 supertccy (DaYe) 的大作中提到: 】
: ...................
按理说应该是可以的,但是我这个类继承的不是activity
VideoSurface extends LinearLayout implements SurfaceHolder.Callback
好像就不可以了
【 在 tv 的大作中提到: 】
: 额,我刚才还试了一下,可以读的啊
: 要不你用getResource().getAsset()
: 【 在 supertccy (DaYe) 的大作中提到: 】
: ...................
但是 dstop=Drawable.createFromPath("/sdcard/button/stop.png");
是可以的,不知道为什么
【 在 tv 的大作中提到: 】
: 哦,奇怪
: 【 在 supertccy (DaYe) 的大作中提到: 】
: : 按理说应该是可以的,但是我这个类继承的不是activity
: ...................
我怀疑是assets文件夹不存在,但是为啥不存在我就不懂了。。
不存在?你的意思是没打到apk中?
【 在 supertccy (DaYe) 的大作中提到: 】
: 我怀疑是assets文件夹不存在,但是为啥不存在我就不懂了。。
可能跟这个有关吧 你随意写个activity看看能不能拿到...
【 在 supertccy 的大作中提到: 】
: : 额,我刚才还试了一下,可以读的啊
: : 要不你用getResource().getAsset()
: : 【 在 supertccy (DaYe) 的大作中提到: 】
: ...................
【 在 tv 的大作中提到: 】
: 不存在?你的意思是没打到apk中?
: 【 在 supertccy (DaYe) 的大作中提到: 】
: : 我怀疑是assets文件夹不存在,但是为啥不存在我就不懂了。。
: ...................
我真心想骂人,
把代码自己试了个小工程没问题,
然后远工程重新跑一次就过了……
莫非得过一段时间久重启。。。