Android 从云服务器获取图像下载链接

Android 从云服务器获取图像下载链接,android,android-recyclerview,owncloud,Android,Android Recyclerview,Owncloud,对于新手来说,拥有云的信息并不多。。甚至在Stack Overflow中也没有提到,关于我试图实现的目标的一点背景是: -已经通过Gradle将我的项目同步到owncloud库。 -所提供的例子对我没有多大帮助,你会明白原因的 我使用这个库将图像URL流式传输到我应用程序中的一些ImageView,因为我在一个web服务器上,没有问题,但现在我移动到了owncloud,如果我为我的应用程序提供存储图像的“下载链接”,我也可以这样做 也就是说,我需要的是了解如何能够按名称选择自己的云存储图像(访问

对于新手来说,拥有云的信息并不多。。甚至在Stack Overflow中也没有提到,关于我试图实现的目标的一点背景是:

-已经通过Gradle将我的项目同步到owncloud库。 -所提供的例子对我没有多大帮助,你会明白原因的

我使用这个库将图像URL流式传输到我应用程序中的一些ImageView,因为我在一个web服务器上,没有问题,但现在我移动到了owncloud,如果我为我的应用程序提供存储图像的“下载链接”,我也可以这样做

也就是说,我需要的是了解如何能够按名称选择自己的云存储图像(访问共享文件夹并下载),或者从存储的位置读取下载链接

下面是在我的项目中使用glide库的方法

 String url = null;
        if (plato.getFoto_movil().equals("churrasco.jpg"))
        {
            url = "http://192.168.0.20/owncloud/index.php/s/EqX7LxLpUeBCzF4/download";
        }

        if (plato.getFoto_movil().equals("pizza.jpg"))
        {
            url = "http://192.168.0.20/owncloud/index.php/s/VGQJh6ii36PLGsN/download";
    }


        if (plato.getFoto_movil().equals("torta_chocolate.jpg"))
        {
            url = "http://192.168.0.20/owncloud/index.php/s/K0TaHRMPuMrs0Fx/download";
        }


        Glide.with(mContext).load(url).into(imageView);
这是令人伤心的,因为我必须手动从我的浏览器中获取这些URL,并且它不能处理来自任何其他设备的新添加的图像,所以我需要能够获取任何新图像并将其显示出来

我已经100%安装并实现了库,但是

      private void startDownload(String filePath, File targetDirectory) {
                DownloadRemoteFileOperation downloadOperation = new DownloadRemoteFileOperation(filePath, targetDirectory.getAbsolutePath());
                downloadOperation.addDatatransferProgressListener((OnDatatransferProgressListener) mContext);
                downloadOperation.execute( mClient, (OnRemoteOperationListener) mContext, mHandler);
            }

            @Override
            public void onTransferProgress(long l, long l1, long l2, String s) {
                mHandler.post( new Runnable() {
                    @Override
                    public void run() {
                        // do your UI updates about progress here
                    }
                });
            }

            @Override
            public void onRemoteOperationFinish(RemoteOperation remoteOperation, RemoteOperationResult remoteOperationResult) {
                if (remoteOperation instanceof DownloadRemoteFileOperation) {
                    if (remoteOperationResult.isSuccess()) {
                    }
                }
            }


got those and 

got also this two
            mClient = OwnCloudClientFactory.createOwnCloudClient(serverUri,mContext,true);
            mClient.setCredentials(OwnCloudCredentialsFactory.newBasicCredentials(username,password));
然后我调用这个方法

startDownload(plato.getFoto_movil(),downloadfolder);
当我调用startdownload方法时,应用程序在此崩溃 出现错误java.lang.ClassCastException:com.eidotab.eidotab.main无法将活动强制转换为com.owncloud.android.lib.common.network.OnDatatransferProgressListener

另一个相关信息是,我正在实现ownclod方法来 回收视图的视图持有者

public class VH extends RecyclerView.ViewHolder implements OnRemoteOperationListener, OnDatatransferProgressListener
但是如果需要的话,我可以切换到主要活动,可能会从那里开始工作,但即使它成功了,也不知道从哪里或如何获得下载链接,就像我说的,我需要从服务器中存储的每个图像中获得下载链接

这可能吗


提前感谢

我将owncloud库的实现更改为建议的主要活动(这是合乎逻辑的举动),一切都进展顺利。。在第一次尝试时工作,我知道它会,问题是我不想将图像存储在设备内存中,我想捕获下载链接,这是我主要关心的问题,但现在它正在工作,因为我直接从本地sd流图像到imageview,这应该给我更多的时间来进一步调查的问题与URL的事情


感谢cricket的评论

我将owncloud库的实现更改为建议的主要活动(这是合乎逻辑的举动),一切都进展顺利。。在第一次尝试时工作,我知道它会,问题是我不想将图像存储在设备内存中,我想捕获下载链接,这是我主要关心的问题,但现在它正在工作,因为我直接从本地sd流图像到imageview,这应该给我更多的时间来进一步调查的问题与URL的事情


感谢cricket的评论

main无法播放活动
。因此,在那里实现接口是的,我说过。。我可以在那里实现这些方法,但我担心的是如何获得链接。
MainActivity无法强制转换
。因此,在那里实现接口是的,我说过。。我可以在那里实现这些方法,但我担心的是如何获得链接。