相关疑难解决方法(0)

从Assets文件夹设置通知声音

我将声音文件附加在资源文件夹中,以便在通知中播放声音,但我无法播放资源文件夹中的声音.

我有设置页面,用户可以从中设置通知声音,用户也可以播放声音.这部分完成了.我可以使用Media Player播放资源文件夹中的声音.我可以在通知创建时使用相同的逻辑,但是当用户点击通知时可能会发生问题,因为媒体播放器仍在播放声音.

我试过了

notification.sound = Uri.parse("file:///android_asset/Sound/Long/AlarmClock.mp3");
Run Code Online (Sandbox Code Playgroud)

也尝试过这样

notification.sound = Uri.parse("android_asset/Sound/Long/AlarmClock.mp3");
Run Code Online (Sandbox Code Playgroud)

但我的问题仍未解决.

有没有其他方法可以在资产目录中设置通知中的声音?

logcat的

01-10 09:57:01.509: ERROR/PlayerDriver(31): Command PLAYER_SET_DATA_SOURCE completed with an error or info PVMFErrNotSupported
01-10 09:57:01.509: ERROR/MediaPlayer(52): error (1, -4)
01-10 09:57:01.519: WARN/NotificationService(52): error loading sound for android_asset/Sound/Long/audio.mp3
01-10 09:57:01.519: WARN/NotificationService(52): java.io.IOException: Prepare failed.: status=0x1
01-10 09:57:01.519: WARN/NotificationService(52):     at android.media.MediaPlayer.prepare(Native Method)
01-10 09:57:01.519: WARN/NotificationService(52):     at android.media.AsyncPlayer.startSound(AsyncPlayer.java:64)
01-10 09:57:01.519: WARN/NotificationService(52):     at android.media.AsyncPlayer.access$200(AsyncPlayer.java:33)
01-10 09:57:01.519: WARN/NotificationService(52):     at android.media.AsyncPlayer$Thread.run(AsyncPlayer.java:99)
01-10 09:57:01.519: WARN/PlayerDriver(31): PVMFInfoErrorHandlingComplete
Run Code Online (Sandbox Code Playgroud)

或任何其他想法?请给我提示.

notifications android media-player android-assets android-resources

22
推荐指数
2
解决办法
2万
查看次数

在Fresco的SimpleDraweeView中加载可绘制的图像资源

我使用了Fresco 0.5.2:

dependencies {
   compile 'com.facebook.fresco:fresco:0.5.2'
}
Run Code Online (Sandbox Code Playgroud)

我想用来SimpleDraweeView加载一个gif图像drawable.这是我的代码:

String path = ContentResolver.SCHEME_ANDROID_RESOURCE + "://"+ getResources().getResourcePackageName(R.drawable.default_app) + "/"
+ getResources().getResourceTypeName(R.drawable.default_app) + "/"
+ getResources().getResourceEntryName(R.drawable.default_app);
Uri uri =  Uri.parse(path);
simpleDraweeView =(SimpleDraweeView)
this.findViewById(R.id.simple_drawee_view);
        ImageRequest imageRequest = ImageRequestBuilder.newBuilderWithSource(uri).build();
        DraweeController controller = Fresco.newDraweeControllerBuilder()
                .setImageRequest(imageRequest)
                .setAutoPlayAnimations(true)
                .build();
        simpleDraweeView.setController(controller);
Run Code Online (Sandbox Code Playgroud)

这default_app只是一个jpeg图像,它不起作用.

我用这个作为Fresco提到的文件.路径或代码有问题吗?

android fresco

19
推荐指数
3
解决办法
2万
查看次数

从drawable图像中获取URI

如何获取保存在drawable中的图像的URI.我尝试过以下格式,但每次都无法加载图像.

imageURI= Uri.parse("android.resource://" + getPackageName() + "/" + R.drawable.indoor_thumbnail1);
imageURI=Uri.parse("android.resource://"+getPackageName()+"/drawables/imageName");
 imageURI=Uri.parse("android.resource://"+getPackageName()+"/drawables/imageName.png");
imageURI = Uri.parse("android.resource://"+ getResources().getResourceTypeName(R.drawable.indoor_thumbnail1)+"/" +getResources().getResourceEntryName(R.drawable.indoor_thumbnail1)+".png" );
Run Code Online (Sandbox Code Playgroud)

不知道为什么我无法获取图像URI ..

android uri drawable

11
推荐指数
3
解决办法
3万
查看次数