当前位置: 首页 > news >正文

手机如何建免费网站WordPress开发微信支付

手机如何建免费网站,WordPress开发微信支付,求个没封的a站yw1129cm,网站设计集团Android Q升级了文件系统#xff0c;访问文件不仅仅是说动态权限了#xff0c;有各种限制。权限什么的就不赘述了#xff0c;下面介绍一下在10以上的系统中访问文件。 首先是打开文件管理器 /*** 打开文件管理器 存储卡和外接U盘都可以访问*/public void openFileManager()…Android Q升级了文件系统访问文件不仅仅是说动态权限了有各种限制。权限什么的就不赘述了下面介绍一下在10以上的系统中访问文件。 首先是打开文件管理器 /*** 打开文件管理器 存储卡和外接U盘都可以访问*/public void openFileManager() {Intent intent new Intent(Intent.ACTION_OPEN_DOCUMENT);intent.addCategory(Intent.CATEGORY_OPENABLE);intent.setType(text/*);startActivityForResult(intent, REQUEST_CODE_FILE);} 这个setType可以根据自己的需要设置MIME类型设置要访问什么类型的文件。具体MIME可以参考MIME类型-CSDN博客 然后会打开文件管理器这里面可以访问手机存储的文件或者外插U盘内的文件就根据自己需求选择文件就可以了。 选中的文件会在onActivityResult中返回 Overrideprotected void onActivityResult(int requestCode, int resultCode, Nullable Intent data) {super.onActivityResult(requestCode, resultCode, data);if (resultCode RESULT_OK requestCode REQUEST_CODE_FILE){//拿到需要解析的文件Uri uri data.getData();String filePath FileHelper.getFileAbsolutePath(this,uri);if (!TextUtils.isEmpty(filePath)){parseFile new File(filePath);binding.tvFileName.setText(parseFile.getName());readFile();}}} 这里关键的一点就是把拿到的uri转换成filePath了转换成路径之后就可以读文件根据需求进行操作了。这个FileHelper转自Android打开系统文件管理器并获取选中文件的路径适配Android10及以上无法获取路径_intent.settype获取文件-CSDN博客 package com.......utils;import android.content.ContentResolver; import android.content.ContentUris; import android.content.Context; import android.database.Cursor; import android.net.Uri; import android.os.Build; import android.os.Environment; import android.os.FileUtils; import android.provider.DocumentsContract; import android.provider.MediaStore; import android.provider.OpenableColumns;import androidx.annotation.RequiresApi;import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream;/*** * Description:通过uri获取本地文件的绝对路径* p* */ public class FileHelper {/*** 根据Uri获取文件绝对路径解决Android4.4以上版本Uri转换** param context* param imageUri*/public static String getFileAbsolutePath(Context context, Uri imageUri) {if (context null || imageUri null) {return null;}if (android.os.Build.VERSION.SDK_INT android.os.Build.VERSION_CODES.KITKAT) {return getRealFilePath(context, imageUri);}if (android.os.Build.VERSION.SDK_INT android.os.Build.VERSION_CODES.KITKAT android.os.Build.VERSION.SDK_INT Build.VERSION_CODES.Q DocumentsContract.isDocumentUri(context, imageUri)) {if (isExternalStorageDocument(imageUri)) {String docId DocumentsContract.getDocumentId(imageUri);String[] split docId.split(:);String type split[0];if (primary.equalsIgnoreCase(type)) {return Environment.getExternalStorageDirectory() / split[1];}} else if (isDownloadsDocument(imageUri)) {String id DocumentsContract.getDocumentId(imageUri);Uri contentUri ContentUris.withAppendedId(Uri.parse(content://downloads/public_downloads), Long.valueOf(id));return getDataColumn(context, contentUri, null, null);} else if (isMediaDocument(imageUri)) {String docId DocumentsContract.getDocumentId(imageUri);String[] split docId.split(:);String type split[0];Uri contentUri null;if (image.equals(type)) {contentUri MediaStore.Images.Media.EXTERNAL_CONTENT_URI;} else if (video.equals(type)) {contentUri MediaStore.Video.Media.EXTERNAL_CONTENT_URI;} else if (audio.equals(type)) {contentUri MediaStore.Audio.Media.EXTERNAL_CONTENT_URI;}String selection MediaStore.Images.Media._ID ?;String[] selectionArgs new String[]{split[1]};return getDataColumn(context, contentUri, selection, selectionArgs);}} // MediaStore (and general)if (android.os.Build.VERSION.SDK_INT Build.VERSION_CODES.Q){return uriToFileApiQ(context,imageUri);}else if (content.equalsIgnoreCase(imageUri.getScheme())) {// Return the remote addressif (isGooglePhotosUri(imageUri)) {return imageUri.getLastPathSegment();}return getDataColumn(context, imageUri, null, null);}// Fileelse if (file.equalsIgnoreCase(imageUri.getScheme())) {return imageUri.getPath();}return null;}//此方法 只能用于4.4以下的版本private static String getRealFilePath(final Context context, final Uri uri) {if (null uri) {return null;}final String scheme uri.getScheme();String data null;if (scheme null) {data uri.getPath();} else if (ContentResolver.SCHEME_FILE.equals(scheme)) {data uri.getPath();} else if (ContentResolver.SCHEME_CONTENT.equals(scheme)) {String[] projection {MediaStore.Images.ImageColumns.DATA};Cursor cursor context.getContentResolver().query(uri, projection, null, null, null);// Cursor cursor context.getContentResolver().query(uri, new String[]{MediaStore.Images.ImageColumns.DATA}, null, null, null);if (null ! cursor) {if (cursor.moveToFirst()) {int index cursor.getColumnIndex(MediaStore.Images.ImageColumns.DATA);if (index -1) {data cursor.getString(index);}}cursor.close();}}return data;}/*** param uri The Uri to check.* return Whether the Uri authority is ExternalStorageProvider.*/private static boolean isExternalStorageDocument(Uri uri) {return com.android.externalstorage.documents.equals(uri.getAuthority());}/*** param uri The Uri to check.* return Whether the Uri authority is DownloadsProvider.*/private static boolean isDownloadsDocument(Uri uri) {return com.android.providers.downloads.documents.equals(uri.getAuthority());}private static String getDataColumn(Context context, Uri uri, String selection, String[] selectionArgs) {Cursor cursor null;String column MediaStore.Images.Media.DATA;String[] projection {column};try {cursor context.getContentResolver().query(uri, projection, selection, selectionArgs, null);if (cursor ! null cursor.moveToFirst()) {int index cursor.getColumnIndexOrThrow(column);return cursor.getString(index);}} finally {if (cursor ! null) {cursor.close();}}return null;}/*** param uri The Uri to check.* return Whether the Uri authority is MediaProvider.*/private static boolean isMediaDocument(Uri uri) {return com.android.providers.media.documents.equals(uri.getAuthority());}/*** param uri The Uri to check.* return Whether the Uri authority is Google Photos.*/private static boolean isGooglePhotosUri(Uri uri) {return com.google.android.apps.photos.content.equals(uri.getAuthority());}/*** Android 10 以上适配 另一种写法* param context* param uri* return*/public static String getFileFromContentUri(Context context, Uri uri) {if (uri null) {return null;}String filePath;String[] filePathColumn {MediaStore.MediaColumns.DATA, MediaStore.MediaColumns.DISPLAY_NAME};ContentResolver contentResolver context.getContentResolver();Cursor cursor contentResolver.query(uri, filePathColumn, null,null, null);if (cursor ! null) {cursor.moveToFirst();try {filePath cursor.getString(cursor.getColumnIndex(filePathColumn[0]));return filePath;} catch (Exception e) {} finally {cursor.close();}}return ;}/*** Android 10 以上适配* param context* param uri* return*/RequiresApi(api Build.VERSION_CODES.Q)private static String uriToFileApiQ(Context context, Uri uri) {File file null;//android10以上转换if (uri.getScheme().equals(ContentResolver.SCHEME_FILE)) {file new File(uri.getPath());} else if (uri.getScheme().equals(ContentResolver.SCHEME_CONTENT)) {//把文件复制到沙盒目录ContentResolver contentResolver context.getContentResolver();Cursor cursor contentResolver.query(uri, null, null, null, null);if (cursor.moveToFirst()) {String displayName cursor.getString(cursor.getColumnIndex(OpenableColumns.DISPLAY_NAME));try {InputStream is contentResolver.openInputStream(uri);File cache new File(context.getExternalCacheDir().getAbsolutePath(), Math.round((Math.random() 1) * 1000) displayName);FileOutputStream fos new FileOutputStream(cache);FileUtils.copy(is, fos);file cache;fos.close();is.close();} catch (IOException e) {e.printStackTrace();}}}return file.getAbsolutePath();} }
http://www.pierceye.com/news/894863/

相关文章:

  • 网站建设辶金手指排名十三郑州经济技术开发区教师招聘公告
  • 企业网站建设课程体会西安网站制作定制
  • 网站主题服务公司管理软件免费版
  • 网站建设主要职责六安网站建设
  • wordpress电影站主题一般做兼职在哪个网站
  • 可信网站友链怎么做网站建设行业标准
  • 济南营销网站制作公司哪家好口碑好的家装前十强
  • 公司网站开发费账务处理做图表的网站推荐
  • 网站如何做好用户体验wordpress 文章类
  • 做采集网站的方法世界四大广告公司
  • 做断桥铝窗户的网站宿州推广公司
  • 网站优化制作东莞房价一览表
  • 屏显的企业网站应该怎么做沈阳网站推广优化公司哪家好
  • 外包服务有哪些汕头seo网站建设
  • 新公司网站怎么做推广wordpress 中文 seo 插件
  • 网站建设客户分析国家企业信息公示网(广东)
  • php网站开发技术文档天津市装修公司排名榜
  • qq群优惠券里面网站怎么做的长春网站建设找源晟
  • 如何建一个公司的网站百度快速收录入口
  • 网络市场营销湘潭seo优化
  • 网站建设的模块传奇合成版2合1雷霆版手游
  • wordpress快站怎么样js网站开发视频
  • 滕州市 网站建设公司合肥网站建设方案案例
  • 外贸网站推广企业ida设计公司上海
  • 网站怎么做图片转链湄潭建设局官方网站
  • 泰州品牌网站建设二建报名时间2023年报名时间
  • 企业网站优化兴田德润怎么样wordpress标签不输出文章
  • 百度站长平台论坛永嘉网站制作
  • 月嫂公司网站建设构思免费的短视频素材库
  • 2017做哪些网站致富邢台市行政区划图