这是我的清单文件代码
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<provider
android:name="android.support.v4.content.FileProvider"
android:authorities="${applicationId}.provider"
android:grantUriPermissions="true"
android:exported="false">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/provider_paths" />
</provider>
</activity>
我的新资源xml文件的代码是
<?xml version="1.0" encoding="utf-8"?>
<paths xmlns:android="http://schemas.android.com/apk/res/android">
<external-path name="external_files" path="."/>
</paths>
我的主要活动代码是
public class MainActivity extends Activity {
private ImageView image;
private final int CameraKey = 1;
Context context = this;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button click_button = (Button) findViewById(R.id.button);
image = (ImageView) findViewById(R.id.imageView3);
click_button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
File file = getFile();
Uri apkURI = FileProvider.getUriForFile(
context,
context.getApplicationContext()
.getPackageName() + ".provider", file);
intent.putExtra(MediaStore.EXTRA_OUTPUT, apkURI);
startActivityForResult(intent, CameraKey);
}
});
}
private File getFile(){
File store = new File("sdcard/Digiwrite");
if(store.exists()){
store.mkdir();
}
File image = new File(store,"Images.jpg");
return image;
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if(requestCode == CameraKey && resultCode == RESULT_OK){
String path = "sdcard/Digiwrite/Images.jpg";
image.setImageDrawable(Drawable.createFromPath(path));
}
}
我不断地发现这个错误:
致命异常:主进程:com。穆克什。Androiddigiwrite,PID:30365 java。lang.NullPointerException:尝试调用虚拟方法“android”。所容纳之物res.XmlResourceParser。所容纳之物下午。ProviderInfo。在android上的空对象引用上加载XmlMetadata(android.content.pm.PackageManager,java.lang.String)。支持v4。所容纳之物文件提供者。android上的parsePathStrategy(FileProvider.java:583)。支持v4。所容纳之物文件提供者。android上的getPathStrategy(FileProvider.java:557)。支持v4。所容纳之物文件提供者。com上的getUriForFile(FileProvider.java:399)。穆克什。Android数码书写。主要活动1美元。android上的onClick(MainActivity.java:37)。看法看法android上的performClick(View.java:5637)。看法查看$PerformClick。在android上运行(View.java:22433)。操作系统。处理程序。android上的handleCallback(Handler.java:751)。操作系统。处理程序。android上的dispatchMessage(Handler.java:95)。操作系统。活套。android上的loop(Looper.java:154)。应用程序。活动线程。java上的main(ActivityThread.java:6186)。朗。反思。方法在com上调用(本机方法)。Android内部的操作系统。ZygoteInit$MethodandArgscaler。在com上运行(ZygoteInit.java:889)。Android内部的操作系统。合子体。main(ZygoteInit.java:779)
我对Android Studio完全陌生。我尝试了各种可用的方法,但我不知道如何使文件提供程序工作。我能知道我哪里出错了吗?
我尝试使用文件在较低版本上运行此代码。getUri()方法,它工作正常。为了让它在更高版本上运行,我一直在尝试将其转换为使用文件提供程序。但是我被卡住了。请帮帮我。
指定XML的路径需要包含路径
而不是路径
。将其更改为:
<?xml version="1.0" encoding="utf-8"?>
<path xmlns:android="http://schemas.android.com/apk/res/android">
<external-path name="external_files" path="."/>
</path>
在xml文件中使用此权限。
<代码>
manifest.xml提供商 资源文件 使用fileprovider 参考:此处 描述:我无法使用此文件提供程序打开图像、文本文件、pdf。当我打开文件文本文件时,它的give me ERR\u UNKNOWN\u URL\u方案。如果我打开图片或pdf,它什么都不显示
当我在中包含LoginViewModelProviderModule时,我无法使用LoginViewModelProviderModule提供LoginViewModel,但当我在ActivityBuilderModule类的@Module注释中包含它时,它可以工作。 BaseApplicationComponent ActivityBuilderModule LoginViewModelProv
本文向大家介绍F# 使用CSV类型提供程序,包括了F# 使用CSV类型提供程序的使用技巧和注意事项,需要的朋友参考一下 示例 给定以下CSV文件: 您可以使用以下脚本读取数据:
问题内容: 我正在为Jira编写一个插件,其中涉及XML文档的解析。我正在使用JAXB来做到这一点(将XML转换为pojos,反之亦然),所以有一个使用JAXB从pojos生成XML的类。看起来像… 提到的软件包将随JDK发行版(rt.jar)一起提供。因此,我没有继续进行其他任何课程。 当我使用“ java”从命令行启动它时,它工作正常。但是,当我将其打包为jar并将其作为插件放入Jira时,它
代码如下: 这是我面临的错误: