标签: fileprovider

运行 Android 10 的三星设备上 FileProvider 的 ClassNotFoundException

根据 Play 商店崩溃报告,该问题仅出现在运行 Android 10 的三星设备上,100% 在后台运行。我们发布了一个我们的客户在他们的应用程序中集成的库,我们或客户在我们自己的测试中都没有设法产生崩溃,并且没有其他客户报告过类似的情况。

我们的库中有一个自定义的 FileProvider 子类,我们的客户在上述设备上遇到了这个崩溃:

Unable to get provider com.getstream.sdk.chat.StreamFileProvider: java.lang.ClassNotFoundException: 
Didn't find class "com.getstream.sdk.chat.StreamFileProvider" on path: DexPathList[
Run Code Online (Sandbox Code Playgroud)

我们已经检查了客户端的 APK,提供者正确地列在他们的合并清单中,并且类在 classes.dex 文件中以及正确的字节码内容。

android kotlin fileprovider

8
推荐指数
0
解决办法
148
查看次数

警告:[XmlResourcesTransformer] 没有映射:android/support/FILE_PROVIDER_PATHS

在 gradle 同步时,出现错误:

WARNING: [XmlResourcesTransformer] No mapping for: android/support/FILE_PROVIDER_PATHS
Run Code Online (Sandbox Code Playgroud)
WARNING: [XmlResourcesTransformer] No mapping for: android/support/FILE_PROVIDER_PATHS
Run Code Online (Sandbox Code Playgroud)

提供者路径.xml

<?xml version="1.0" encoding="utf-8"?>
<paths>
    <external-files-path
        name="my_images"
        path="." />
</paths>
Run Code Online (Sandbox Code Playgroud)

怎么解决这个问题呢?

android gradle androidx fileprovider

8
推荐指数
1
解决办法
5388
查看次数

如何将文件提供程序添加到 MacOS Swift 应用程序?

在 iOS 上,有文件提供程序 API来创建“虚拟文件夹”(应用程序提供内容的文件夹)。我怎么能在 MacOS 上做类似的事情?如果您想知道我为什么要这样做,那只是因为我想了解云存储应用程序的工作原理。

PS:抱歉英语不好,我是法国人。

macos swift fileprovider-extension fileprovider

7
推荐指数
1
解决办法
375
查看次数

如何在 macOS 上的 File Provider 中实现“始终保留在此设备上”?

我正在macOS 上实现文件提供程序。我看到 OneDrive 有一个离线模式,其中包含 \xe2\x80\x98Always Keep on This Device\xe2\x80\x99 和 \xe2\x80\x98Free up Space\xe2\x80\x99 菜单:

\n

在此输入图像描述

\n

在 Windows 上,此功能由固定和取消固定文件属性以及 CfHydratePlaceholder() 和 CfDeHydratePlaceholder() Windows API 提供。如何在 macOS 上实现此功能?是否有任何特定属性或文件提供程序 API 来支持它?

\n

macos offline virtual-drive fileprovider

5
推荐指数
1
解决办法
320
查看次数

在 Razor (chtml) 中渲染动态视图,如何在 asp.net core 3.0 中将 FileProvider 添加到 razor?

我正在从 asp-net core 2.2 迁移到 asp-net core 3.0,我使用这个块来定义我的文件类提供程序,如你所知,它用于创建动态剃刀视图(动态 cshtml),我的问题是该段确实不行。

我已经实现了经典:

services.Configure<RazorViewEngineOptions>(opts =>
                opts.FileProviders.Add( 
                    new MyCostumizedFileProvider()
                )
            );
Run Code Online (Sandbox Code Playgroud)

在哪里:

  1. MyCostumizedFileProvider:是文件提供程序的实现。

  2. RazorViewEngineOptions:是在 aspnet core 2.0 中使用的 Razor 运行时编译器的处理程序。

在asp-net核心中我已经检查过

例如:

services.Configure<MvcRazorRuntimeCompilationOptions>(options => {
    options.FileProviders.Clear();
    options.FileProviders.Add(new MyCostumizedFileProvider());
});
Run Code Online (Sandbox Code Playgroud)

或者

  services.Configure<MvcRazorRuntimeCompilationOptions>(options => {
   options.FileProviders.Add(new MyCostumizedFileProvider());
  });
Run Code Online (Sandbox Code Playgroud)

错误总是:

/Pages/Shared/ViewListPerson_1b2b2019-aad9-4096-a3b7-ece5dfe586c1.cshtml
   at Microsoft.AspNetCore.Mvc.ViewEngines.ViewEngineResult.EnsureSuccessful(IEnumerable`1 originalLocations)
   at Microsoft.AspNetCore.Mvc.ViewFeatures.ViewResultExecutor.ExecuteAsync(ActionContext context, ViewResult result)
   at Microsoft.AspNetCore.Mvc.ViewResult.ExecuteResultAsync(ActionContext context)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeNextResultFilterAsync>g__Awaited|29_0[TFilter,TFilterAsync](ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Rethrow(ResultExecutedContextSealed context)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.ResultNext[TFilter,TFilterAsync](State& next, Scope& scope, Object& state, …
Run Code Online (Sandbox Code Playgroud)

c# razor fileprovider asp.net-core-3.0

2
推荐指数
1
解决办法
1999
查看次数

依赖项注入自定义文件提供程序以进行运行时编译

我正在尝试从数据库加载视图,正如文章中所建议的,人们可能想要添加一些缓存以防止每次都访问数据库。

ConfigureServices

services.AddHttpContextAccessor();
services.AddMemoryCache();

services.AddRazorPages()
    .AddRazorRuntimeCompilation(opt =>
    {
        opt.FileProviders.Add(new DatabaseFileProvider(Configuration["AppSettings:SQLConnectionString"]));
    });
Run Code Online (Sandbox Code Playgroud)

DatabaseFileProvider构造函数:

private string _connection;

public DatabaseFileProvider(string connection)
{
    _connection = connection;
}
Run Code Online (Sandbox Code Playgroud)

如何将 的实例依赖注入IMemoryCacheDatabaseFileProvider类中?就像使用单例一样:

ConfigureServices

services.AddSingleton<AppUtils>();
Run Code Online (Sandbox Code Playgroud)

AppUtils构造函数:

private static IMemoryCache _cache;

public AppUtils(IMemoryCache cache)
{
    _cache = cache;
}
Run Code Online (Sandbox Code Playgroud)

c# dependency-injection runtime-compilation fileprovider asp.net-core-5.0

1
推荐指数
1
解决办法
972
查看次数