小编K. *_*ter的帖子

使用Intent打开时,Word文档始终为只读

我试图打开并编辑一个Word文档位于我的外部存储在我的Xamarin.Android应用程序与MS-Word中使用此代码:

File wordFile = new File(wordFilePath);
wordFile.SetWritable(true);

FileInfo fileInfo = new FileInfo(wordFilePath);
fileInfo.IsReadOnly = false;

Android.Net.Uri uri = FileProvider.GetUriForFile(Context, Context.PackageName + ".provider", wordFile);

Intent intent = new Intent();
intent.AddFlags(ActivityFlags.NewTask);
intent.AddFlags(ActivityFlags.GrantReadUriPermission);
intent.AddFlags(ActivityFlags.GrantWriteUriPermission);
intent.AddFlags(ActivityFlags.GrantPersistableUriPermission);
intent.SetAction(Intent.ActionView);

intent.SetData(uri);

Context.StartActivity(intent);
Run Code Online (Sandbox Code Playgroud)

问题是,该文件始终为只读。当我通过任何文件浏览器(例如File Manager Pro)打开文档时,它不是只读的,我可以编辑文件。

我是否缺少需要在应用程序或FileProvider中设置的任何权限?

编辑:

  • 我已使用Android Word应用程序中的Office帐户登录
  • 使用WPS Office可以很好地工作,因此MS-Word必须是一个特殊的问题
  • 使用intent.SetAction(Intent.ActionEdit);没有区别
  • 使用intent.SetDataAndType(uri, "application/msword");没有区别
  • 使用Google Docs的类似行为:使用FileExplorer,我可以打开和编辑文件。如果我通过我的应用程序使用Google Docs打开文件,则可以编辑文件,但是如果单击“保存”,应用程序会要求我“将文件更新为新的DOCX格式”。然后,我可以将文件保存到新目录。
  • 在文件资源管理器中使用的ActionView&组合SetDataAndType也不起作用

像这样 …

android ms-word android-intent xamarin.android android-internal-storage

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

如何在不使用强制转换的情况下选择要调用的方法的重载版本?

我对Java Overload Methods有疑问.

假设我有一个重载方法foo:

public static String foo(String x) {
    return "foo-String: " + x;
}

public static String foo(Object x) {
    return "foo-Object: " + x;
}
Run Code Online (Sandbox Code Playgroud)

我怎样才能实现像这样的功能

public static String useString() {
    return(foo("useString"));   
}
public static String useObject() {
    return(foo("useObject"));   
}
Run Code Online (Sandbox Code Playgroud)

其中一个使用重载的字符串方法,一个是重载的对象方法?

foo-Method的调用应该使用String输入.(这意味着我不想和演员一起工作

return(foo((Object)"useObject")); 
Run Code Online (Sandbox Code Playgroud)

也许你可以帮我解决这个问题

编辑:

上面,只是练习的一个例子.我试图更好地理解OverloadsDispatch,并且正在寻找用于调用(和选择)重载方法的替代解决方案.

java methods overloading dispatch

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