安卓:撤销权限

2023-12-08

再会 我正在尝试制作捕获图像然后将其显示在 gridview 中的应用程序 但是当我单击按钮开始捕获时出现此错误。

Logcat:

java.lang.SecurityException: Permission Denial: starting Intent {
act=android.media.action.IMAGE_CAPTURE flg=0x3
cmp=com.android.camera2/com.android.camera.CaptureActivity
clip={text/uri-list
U:file:///storage/emulated/0/Pictures/MyInvoice/IMG_20160223_032401.jpg}
(has extras) } from ProcessRecord{8f9b88f
1356:com.example.labon.invoicemanger/u0a62} (pid=1356, uid=10062) with
revoked permission android.permission.CAMERA
at android.os.Parcel.readException(Parcel.java:1599)

My Code:

    myLists = new ArrayList<Images>();
    adapter = new ImageListAdapter(getActivity(), R.layout.img_list_view, myLists);
    Button myButton = (Button) view.findViewById(R.id.camerabutton);
    myButton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
            fileUri = getOutputMediaFileUri(MEDIA_TYPE_IMAGE);// create a file to save the image
            intent.putExtra(MediaStore.EXTRA_OUTPUT, fileUri); // set the image file name
            startActivityForResult(intent, CAMERA_CAPTURE_IMAGE_REQUEST_CODE); // start the image capture Intent
        }
    });
    myGridView = (GridView) view.findViewById(R.id.gridView);
    myGridView.setAdapter(adapter);   /**
 * Create a file Uri for saving an image or video
 */
public Uri getOutputMediaFileUri(int type) {

    return Uri.fromFile(getOutputMediaFile(type));
}
/**
 * returning image /
 */
private static File getOutputMediaFile(int type) {

    // External sdcard location
    File mediaStorageDir = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES), IMAGE_DIRECTORY_NAME);

    // Create the storage directory if it does not exist
    if (!mediaStorageDir.exists()) {
        mediaStorageDir.mkdirs();
        // if (!mediaStorageDir.mkdirs()) {
        Log.d(IMAGE_DIRECTORY_NAME, "Oops! Failed create "
                + IMAGE_DIRECTORY_NAME + " directory");
        //return null;

    }

    // Create a media file name
    String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss",
            Locale.getDefault()).format(new Date());
    File mediaFile;
    if (type == MEDIA_TYPE_IMAGE) {
        mediaFile = new File(mediaStorageDir.getPath() + File.separator
                + "IMG_" + timeStamp + ".jpg");
    } else {
        return null;
    }


    return mediaFile;


}


@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);


    switch (requestCode) {
        case 1:
            if (resultCode == Activity.RESULT_OK) {
                Uri selectedImage = data.getData();
                String[] filePathColumn = {MediaStore.Images.Media.DATA};
                Cursor cursor = getActivity().getContentResolver().query(selectedImage, filePathColumn, null, null, null);
                cursor.moveToFirst();

                int columnIndex = cursor.getColumnIndex(filePathColumn[0]);
                //file path of captured image
                String filePath = cursor.getString(columnIndex);
                //file path of captured image
                File f = new File(filePath);
                String filename = f.getName();
                cursor.close();

                //Convert file path into bitmap image using below line.
                Bitmap yourSelectedImage = BitmapFactory.decodeFile(filePath);
                //put bitmapimage in your imageview
                ImageView imageView = (ImageView) view.findViewById(R.id.imageListView);
                imageView.setImageBitmap(BitmapFactory.decodeByteArray(images.getImageBlob(), 0, images.getImageBlob().length));
                //newImageView.setImageBitmap(yourSelectedImage);  }
    if (resultCode == getActivity().RESULT_CANCELED) {
        // user cancelled Image capture
        Toast.makeText(getActivity(), "User cancelled image capture", Toast.LENGTH_SHORT)
                .show();
    } else {
        // failed to capture image
        Toast.makeText(getActivity(), "Sorry! Failed to capture image", Toast.LENGTH_SHORT)
                .show();
    }
} }

你在棉花糖上运行这个吗?因为如果是的话,权限结构就已经改变了。你应该阅读文档@http://developer.android.com/training/permissions/index.html .

用户必须明确授予该权限。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

安卓:撤销权限 的相关文章

  • 将 Firebase 云消息传递与 Windows 应用程序结合使用

    我在 Android 和 iOS 应用程序中使用 Firebase Cloud Messaging 但是我还有此应用程序的 Windows Mac OS 版本 我想保留相同的逻辑 我知道 Firebase Cloud Messaging 可
  • Javafx过滤表视图

    我正在尝试使用文本字段来过滤表视图 我想要一个文本字段 txtSearch 来搜索 nhs 号码 名字 姓氏 和 分类类别 我尝试过在线实施各种解决方案 但没有运气 我对这一切仍然很陌生 所以如果问得不好 我深表歉意 任何帮助将不胜感激 我
  • IntelliJ - 调试模式 - 在程序内存中搜索文本

    我正在与无证的第三方库合作 我知道有一定的String存储在库深处的某个字段中的某处 我可以预测的动态值 但我想从库的 API 中获取它 有没有一种方法可以通过以下方式进行搜索 类似于全文搜索 full程序内存处于调试模式并在某个断点处停止
  • 有没有一种快速方法可以从 Jar/war 中删除文件,而无需提取 jar 并重新创建它?

    所以我需要从 jar war 文件中删除一个文件 我希望有类似 jar d myjar jar file I donot need txt 的内容 但现在我能看到从 Linux 命令行执行此操作的唯一方法 不使用 WinRAR Winzip
  • Java整数双除法混淆[重复]

    这个问题在这里已经有答案了 方案1 int sum 30 double avg sum 4 result is 7 0 not 7 5 VS 方案2 int sum 30 double avg sum 4 0 Prints lns 7 5
  • 有关 ListView 自定义行布局项目上的 onClick() 事件的帮助

    我有一个 ListView 其行由我格式化 每行都有 ImageView 和 TextView 的混合 我还实现了自己的适配器 并且能够通过它绘制每一行 现在 我想要这样的东西 用户单击 ImageView 不是行上的其他任何位置 但只有此
  • 按钮 - 单击时更改背景颜色

    我的活动中有 8 个按钮 我正在寻找的是 按钮具有默认背景 单击按钮时 背景颜色应更改为其他颜色 这部分非常简单 但是 当我单击任何其他按钮时 第一个按钮的背景颜色应该变回默认颜色 我知道这将使用 选择器状态 来完成 但我不太确定如何实现它
  • 模块中的类无法加载

    我正在开发一个 2D Unity android 游戏 其中我最近添加了 Firebase Beta SDK 但添加后FirebaseAnalytics unitypackage我面临的错误是 无法加载模块中的类 当我删除文件夹时Fireb
  • 将 Azure AD 高级自定义角色与 Spring Security 结合使用以进行基于角色的访问

    我创建了一个演示 Spring Boot 应用程序 我想在其中使用 AD 身份验证和授权 并使用 AD 和 Spring Security 查看 Azure 文档 我执行了以下操作 package com myapp contactdb c
  • 错误:无法创建新会话,因为找不到需要 HttpClient、InputStream 和 long 的“createSession”

    我正在尝试自动化 Android 混合应用程序 但出现以下错误 1 线程 main org openqa selenium WebDriverException中出现异常 无法创建新会话 因为未找到需要 HttpClient InputSt
  • Android 中循环事件的星期几和时间选择器

    我想创建一个控件 允许用户在我的 Android 活动中选择一周中的某一天 星期一 和一天中的某个时间 下午 1 00 找不到任何关于此的好帖子 好吧 我想我已经明白了 我只是不喜欢这个解决方案 因为我在一周中的某一天使用的微调器与时间选择
  • Java中的Object类是什么?

    什么是或什么类型private Object obj Object http download oracle com javase 6 docs api java lang Object html是Java继承层次结构中每个类的最终祖先 从
  • 为什么C++代码执行速度比java慢?

    我最近用 Java 编写了一个计算密集型算法 然后将其翻译为 C 令我惊讶的是 C 的执行速度要慢得多 我现在已经编写了一个更短的 Java 测试程序和一个相应的 C 程序 见下文 我的原始代码具有大量数组访问功能 测试代码也是如此 C 的
  • 获取其他指针的MotionEvent.getRawX/getRawY

    我可以获取其他指针的MotionEvent getRawX getRawY 值吗 MotionEvent getRawX API 参考 http developer android com reference android view Mo
  • 尝试将 SQLite DB 从数据复制到 SD 卡

    我正在使用以下代码 该代码发布在 Stack Overflow 上的某个位置 并根据我的目的进行了修改 try File sd Environment getExternalStorageDirectory File data Enviro
  • ServletContainer 类未找到异常

    我无法再编译我的球衣项目 并且出现以下异常 GRAVE Servlet Project API threw load exception java lang ClassNotFoundException com sun jersey spi
  • Android应用程序可以像旧的普通java小程序一样嵌入到网页中吗?

    我对 android 平台一无所知 也无法在互联网上找到这个基本问题的答案 更新 好的 我本身无法嵌入 Android 应用程序 但是我可以在 Android Webbrowser 中嵌入 Java 的东西吗 不可以 您无法将 Androi
  • 如何从 Maven 存储库引用本机 DLL?

    如果 JAR 附带 Maven 存储库中的本机 DLL 我需要在 pom xml 中放入什么才能将该 DLL 放入打包中 更具体地举个例子Jacob http search maven org artifactdetails 7Cnet s
  • Android 中带有组的列表视图

    我有一个列表视图 每行都有一些日期和文本 我可以像 iPhone 中那样将这个 listView 分组 组之间有标题吗 在 android 中是否可能 请帮忙 即 我需要在 Listview 行之间有标题栏 以便如果我使用日期对其进行分组
  • 如何在片段中实现 onBackPressed() 和意图?

    我知道 onBackPressed 是活动中的一种方法 但是 我想在片段中使用该功能 以便当按下后退按钮时 它会通过 Intent 重定向到另一个活动 有什么办法解决这个问题吗 public class News Events fragme

随机推荐

  • 带有 .js 扩展名的 Webpack/ts-loader 导入无法解析

    我的目录结构如下 projectRoot project server src pom xml project ui tsconfig json src file ts imports file js 我的问题是project server
  • 错误:ORA-00907:缺少右括号 - 您能帮助解决问题吗

    select regexp substr replace replace replace CA CO IL KS chr 40 chr 41 chr 39 1 level as division from dual connect by l
  • 使用 Node.js 自动将文本写入控制台

    我需要使用 SSH 和 Node js 脚本克隆 GitHub 存储库 var exec require child process exec exec git clone email protected jquery jquery git
  • 如何仅对具有特定属性集的元素使用 querySelectorAll?

    我正在尝试使用document querySelectorAll对于所有具有value属性集 页面上还有其他复选框没有value设置 并且每个复选框的值都不同 但 ID 和名称并不唯一 例子
  • HtmlUnit 按钮单击

    我正在尝试在 www meetme com 上发送消息 但不知道该怎么做 我可以在评论区域中输入消息 但单击 发送 按钮不会执行任何操作 我究竟做错了什么 当我登录并按登录按钮时 页面确实发生了变化 一切都很好 有人有任何想法或线索吗 Ht
  • 什么是对象/关系不匹配

    我是java新手 正在阅读有关对象关系映射的内容 我在此链接上发现了术语 对象 关系不匹配 休眠 谁能用 Java 解释一下什么是对象 关系不匹配 我也读到过黑客攻击网站但无法正确获得它 用示例进行解释将是值得赞赏的 Hibernate 是
  • Heroku 应用程序坚持使用 HTTPS - 为什么?

    我有一个有趣的小问题 Heroku 上的一个应用程序被配置为使用Heroku SSL 测试版 但无论我做什么 它似乎都想使用 HTTPS 浏览器错误 I have redirect to protocol gt http status gt
  • 如何使用 oozie 安排 sqoop 操作

    我是 Oozie 的新手 只是想知道 如何使用 Oozie 安排 sqoop 作业 我知道 sqoop 操作可以添加为 Oozie 工作流程的一部分 但是我如何安排 sqoop 操作并让它每隔 2 分钟或每天晚上 8 点自动运行一次 只是一
  • JDBC-JTDS 错误?对于日期和时间 (x) 类型的列

    当我尝试从中获取列类型时ResultSetMetaData用方法getColumnTypeName对于类型date and time x 我越来越nvarchar 对于其他类型似乎效果很好 这是一个错误吗 和ResultSet getStr
  • 为什么Golang创建切片时会有CAPACITY参数

    这是一个非常简单的问题 If the capacityGolang中的一个切片的容量是可以被超出的 为什么首先要有一个容量参数呢 我认为这与内存管理 某种 知道在内存中分配切片的位置 但我不确切知道 If the capacityGolan
  • MSChart 轴线

    如何显示图表中每个条形的轴线 我只有第二个 第四个 替代文本 http img35 imageshack us img35 6106 chartiu png 我找到了答案 chartArea AxisX MajorGrid Interval
  • 控制 ggparcoord 中的颜色(来自 GGally 包)

    我正在尝试对特定 ggparcoord 图硬编码所需的线条颜色 例如 当我创建下面的 ggparcoord 图时 library GGally x data frame a runif 100 0 1 b runif 100 0 1 c r
  • Bash - 查找匹配的文件对[重复]

    这个问题在这里已经有答案了 我的文件夹中有很多文件 Filename1 mp4 Filename2 mp4 Filename3 mp4 Etc 以及许多名称添加后缀的文件 Filename1 x264 mp4 Filename2 x264
  • 脚本无法正确接收 url

    我正在使用组合的批处理和java脚本 我发现使用批处理文件从网站检索html 而我们解决的一个问题是没有返回所需的输出 就像我在firefox中使用url时出现的那样 我用来拉取 html 的脚本是 if This IsBatch then
  • 我应该如何循环遍历依赖于前一个循环值的异步函数?

    我试图在 node js 中执行的操作的同步版本 为了可读性而简化 var value null var allValues do value getValue value load the next value if value allV
  • iframe 中的在新窗口中打开链接

    我的页面上有一个 iframe 并且有一个链接 在同一域上 我想在新的物理窗口中打开 当我使用 target blank 时 它只是使用新的 iframe 重新加载页面 我还尝试了这个 JavaScript jQuery 代码 docume
  • 带有用户单击所选组件的动态选项卡

    我正在尝试设置一个选项卡系统 允许组件自行注册 带有标题 第一个选项卡就像一个收件箱 有很多操作 链接项可供用户选择 并且每次单击都应该能够在单击时实例化一个新组件 操作 链接来自 JSON 然后 实例化的组件会将其自身注册为新选项卡 我不
  • Swagger 多个示例未显示

    当我将示例添加到我的 swagger 文档中并在 swagger 编辑器上测试它时 它永远不会显示在任何地方 有人能给我一个例子 说明多个示例实际上在任何地方显示吗 Here is an example of how multiple ex
  • 我想设置每天不同时间触发的重复闹钟

    我需要每天日出时触发闹钟 我得到的日出时间是这样的 06 55 Location location new Location latitude longitude SunriseSunsetCalculator calculator new
  • 安卓:撤销权限

    再会 我正在尝试制作捕获图像然后将其显示在 gridview 中的应用程序 但是当我单击按钮开始捕获时出现此错误 Logcat java lang SecurityException Permission Denial starting I