存储提供商首次启动后如何强制 QueryRoots 在 Xamarin 应用程序上触发
How to force QueryRoots to fire on Xamarin app after first launch, storage provider
我正在尝试根据此处的示例实施 Xamarin 存储提供程序。
https://github.com/xamarin/monodroid-samples/tree/master/StorageProvider
问题是我希望用户在呈现根文件夹之前登录。
查询根的方法如下:
public override ICursor QueryRoots(string[] projection)
在应用程序首次启动时调用,但随后似乎不会调用。
如果我立即登录(硬编码凭据),这很好用。但是,如果我打开应用程序以便我可以手动添加一些登录详细信息,则不会再次调用它,因此不会重新呈现正确的根。
有没有人知道我如何强制 Android 再次重新调用此方法以刷新此列表?
您可以尝试调用以下方法来通知系统我们的根状态发生了变化
Activity.ContentResolver.NotifyChange (DocumentsContract.BuildRootsUri (AUTHORITY), null, false);
我正在尝试根据此处的示例实施 Xamarin 存储提供程序。
https://github.com/xamarin/monodroid-samples/tree/master/StorageProvider
问题是我希望用户在呈现根文件夹之前登录。
查询根的方法如下:
public override ICursor QueryRoots(string[] projection)
在应用程序首次启动时调用,但随后似乎不会调用。
如果我立即登录(硬编码凭据),这很好用。但是,如果我打开应用程序以便我可以手动添加一些登录详细信息,则不会再次调用它,因此不会重新呈现正确的根。
有没有人知道我如何强制 Android 再次重新调用此方法以刷新此列表?
您可以尝试调用以下方法来通知系统我们的根状态发生了变化
Activity.ContentResolver.NotifyChange (DocumentsContract.BuildRootsUri (AUTHORITY), null, false);