1

ローカル パッケージ アセット ディレクトリにある gif 画像を読み取る方法を知っています。しかし、今は他のパッケージ アセットの他の gif 画像を読み取る必要があります。たとえば、アセット内の com.bbb.app gif を読み取るためのメイン APP com.aaa.app です。私は使用を知っています

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 libを使ってます。誰でもそれを行う方法を知っていますか?

4

3 に答える 3

5

GIFのURIを取得したら、これを実行してフレスコでロードします

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);
于 2016-01-20T06:03:01.860 に答える
2

現在、Fresco は以下をサポートしています。

Uri uri = Uri.parse("asset:///image.png");

これは次のように翻訳されます:

AssetManager.openFd("image.png");
于 2015-07-08T13:42:15.837 に答える