Android 如何使用湿壁画阅读任何包装';将gif图像保存在资产目录中

Android 如何使用湿壁画阅读任何包装';将gif图像保存在资产目录中,android,gif,fresco,Android,Gif,Fresco,我知道如何读取本地包资产目录中的gif图像。但现在我需要读取其他软件包资产中的其他gif图像。例如,主应用程序com.aaa.APP可以读取资产中的com.bbb.APP gif。我知道它的用途 try { context = this.createPackageContext("com.bbb.app", Context.CONTEXT_IGNORE_SECURITY); } catch (PackageManager.NameNotFoundException e)

我知道如何读取本地包资产目录中的gif图像。但现在我需要读取其他软件包资产中的其他gif图像。例如,主应用程序com.aaa.APP可以读取资产中的com.bbb.APP gif。我知道它的用途

try {
    context = this.createPackageContext("com.bbb.app",
         Context.CONTEXT_IGNORE_SECURITY);
} catch (PackageManager.NameNotFoundException e) {
    e.printStackTrace();
}

AssetManager am = context.getResources().getAssets();  
try {  
    InputStream is = am.open(fileName);  
    image = BitmapFactory.decodeStream(is);  
    is.close();  
} catch (IOException e) {  
    e.printStackTrace();  
} 

要阅读jpg/png,但我想使用湿壁画库阅读gif。有人知道怎么做吗?

目前,Fresco支持以下内容:

Uri uri = Uri.parse("asset:///image.png");
这可以转化为:

AssetManager.openFd("image.png");

目前,Fresco支持以下内容:

Uri uri = Uri.parse("asset:///image.png");
这可以转化为:

AssetManager.openFd("image.png");

一旦你有了gif的uri,就可以用fresco加载它

SimpleDraweeView simpleDraweeView = (SimpleDraweeView) findViewById(R.id.imageview);
ImageRequest imageRequest = ImageRequestBuilder.newBuilderWithResourceId(R.raw.sample_gif).build();
DraweeController controller = Fresco.newDraweeControllerBuilder()
.setUri(imageRequest.getSourceUri())
.setAutoPlayAnimations(true)
.build();
simpleDraweeView.setController(controller);

一旦你有了gif的uri,就可以用fresco加载它

SimpleDraweeView simpleDraweeView = (SimpleDraweeView) findViewById(R.id.imageview);
ImageRequest imageRequest = ImageRequestBuilder.newBuilderWithResourceId(R.raw.sample_gif).build();
DraweeController controller = Fresco.newDraweeControllerBuilder()
.setUri(imageRequest.getSourceUri())
.setAutoPlayAnimations(true)
.build();
simpleDraweeView.setController(controller);

不要忘记将此添加到您的
build.gradle

compile 'com.facebook.fresco:animated-gif:0.12.0'

不要忘记将此添加到您的
build.gradle

compile 'com.facebook.fresco:animated-gif:0.12.0'