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

企业建网站有这个必要吗铜山区规划建设局网站

企业建网站有这个必要吗,铜山区规划建设局网站,去国外做非法网站吗,效果好企业营销型网站建设开发文章目录一、高低版本兼容代码及配置1.java代码2.AndroidManifest.xml 配置ContentProvider3.paths xml 配置二、老版本代码三、可能出的问题及处理一、高低版本兼容代码及配置 高版本提高了sdcard、 app文件空间的访问权限#xff0c;高低版本的系统api有一定区别#xff0… 文章目录一、高低版本兼容代码及配置1.java代码2.AndroidManifest.xml 配置ContentProvider3.paths xml 配置二、老版本代码三、可能出的问题及处理一、高低版本兼容代码及配置 高版本提高了sdcard、 app文件空间的访问权限高低版本的系统api有一定区别Android7.0 及以上开放暴露私有数据文件的唯一方式是通过 ContentProvider 来实现我们的app提供我们的文件给系统安装程序。 基本步骤 1、在AndroidManifest.xml 中配置 ContentProvider 信息 2、配置要开放的 paths 信息 3、Java 代码中通过 FileProvider 封装文件信息。 1.java代码 private void install(String path) {File apk new File(path);Intent intent new Intent(Intent.ACTION_VIEW);intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);if (Build.VERSION.SDK_INT Build.VERSION_CODES.N) {intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);//注意第二个参数要保持和manifest中android:authorities的值相同Uri uri FileProvider.getUriForFile(context, context.getPackageName() .fileProvider, apk);intent.setDataAndType(uri, application/vnd.android.package-archive);} else {intent.setDataAndType(Uri.fromFile(apk), application/vnd.android.package-archive);}try {context.startActivity(intent);} catch (Exception e) {e.printStackTrace();}}特别注意 Uri uri FileProvider.getUriForFile(context, context.getPackageName() “.fileProvider”, apk); 第二个参数一定要和provider 的android:authorities${applicationId}.fileProvider匹配。 applicationId是包名context.getPackageName()也是包名所以 context.getPackageName() “.fileProvider”和 ${applicationId}.fileProvider 是相同的字符串 2.AndroidManifest.xml 配置ContentProvider 配置安装权限 !-- 应用安装权限 -- uses-permission android:nameandroid.permission.REQUEST_INSTALL_PACKAGES /配置ContentProvider providerandroid:nameandroid.support.v4.content.FileProviderandroid:authorities${applicationId}.fileProviderandroid:exportedfalseandroid:grantUriPermissionstruemeta-dataandroid:nameandroid.support.FILE_PROVIDER_PATHSandroid:resourcexml/file_provider / /providerprovider 属性说明 android:name 属性填写的是 FileProvider 类的完整名称。这个类可以填写两个值一个是位于 supportandroid.support.v4.content.FileProvider 包下的另一个是位于 androidxandroidx.core.content.FileProvider 包下的。这两种都可以填写本质上没有区别。要根据实际情况来决定用哪个即要看工程引的是 androidx 支援包还是 support 支援包。 android:authorities 属性就是和普通的 ContentProvider 一样的用于访问文件资源的 uri 标签头。值内容根据实际需要来填写即可。 android:exported 与 android:grantUriPermissions 两个属性的值照着填就好。大致是指允许其它应用单次使用自己的 Provider 资源。 meta-data 标签中的内容需要关注的是 android:resource 属性中的内容。这个属性的值引向一个 xml目录的文件这份 xml 文件描述要给其他应用访问的文件目录。 3.paths xml 配置 在工程 res 目录下新建一个 xml 没有的话新建目录则在目录中创建一个file_provider.xml名称随意和 android:resource“xml/file_provider” 一致即可,并在xml中添加需要对外提供的目录路径 ?xml version1.0 encodingutf-8? pathsexternal-pathnamepath1path/data/dir1/ /external-pathnamepath2path/ /external-files-pathnamepath3path/data/dir2 /external-cache-pathnamepath4path/data/dir3 /cache-pathnamepath5path/data /files-pathnamepath6path/ff / /paths简要说明 不带external 是程序安装目录下的目录cache-path 指程序安装目录下的cache目录。 带有external 的是指sdcard 目录下对应包名的专属目录例如external-cache-path 指sdcard 目录下对应包名的专属cache目录。 例如下图是斗鱼直播的files目录 external-files-pathnamepath3path/ /对应下图 如果还有子目录对应的增加接口例如files 目录下的douyu 那么xml如下 external-files-pathnamepath3path/douyu/ /二、老版本代码 老版本代码相对简单粗暴且实用只要知道 apk 的path并拥有访问权限sdcard 再加上安装权限即可。 File apk new File(apkPath); Uri uri Uri.fromFile(apk); Intent intent new Intent(); intent.setClassName(com.android.packageinstaller, com.android.packageinstaller.PackageInstallerActivity); intent.setData(uri); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); startActivity(intent);manifest 添加对应的权限 !--sdcard 读权限-- uses-permission android:nameandroid.permission.READ_EXTERNAL_STORAGE / 三、可能出的问题及处理 java.lang.NullPointerException: Attempt to invoke virtual method ‘android.content.res.XmlResourceParser android.content.pm.ProviderInfo.loadXmlMetaData(android.content.pm.PackageManager, java.lang.String)’ on a null object reference at android.support.v4.content.FileProvider.parsePathStrategy(FileProvider.java:591) 原因FileProvider.getUriForFile(context, context.getPackageName() “.fileProvider”, apk); 第二个参数 “包名.fileProvider” 和 provider.xml 中 android:authorities“${applicationId}.fileProvider” 的值具体值如com.eagle.app.fileProvider不同请仔细核对和修改一致。权限问题 一般app需要安装权限除了在清单文件中列出外还需要手动确认注意留意并确认下载的安装文件路径与file_provider 中描述的文件不匹配仔细核对路径与描述。安全提示要选择允许
http://www.yutouwan.com/news/105470/

相关文章:

  • 给人做ppt的网站网上哪里有辅导高考生做难题的网站
  • orchid wordpress常州做网站优化
  • 临清网站优化公司做网站需要准备什么东西
  • 定制棺材网站辽宁省工程建设信息网
  • 百度收录网站链接入口如何将自己做的网站传到网上
  • 上海网站建设 网站开湖南众诚建设网站
  • 中国建设官方网站登录建设企业官方网站官网
  • 备案的网站名称能重复备案吗做网站挣钱快又多
  • 淮北市重点工程建设局网站国内个人网站设计欣赏
  • 网站营销软件利用wordpress建站怎么上传网页
  • 静态网站案例宁波公司网站建设价格
  • 做网站广告的点怎样建立自己的微信公众号
  • 山西 旅游 英文 网站建设外贸网站建设服务机构
  • 政务信息化建设网站wordpress自助发布插件
  • 河北网站建设收益北京兼职做网站建设
  • 婚纱摄影网站开发班级网站开发环境
  • 网站加栏目百度问答兼职怎么做
  • 淘宝上网站建设是什么意思3D动漫做爰网站
  • 网站优化西安网站标题主关键词
  • 专门做民宿的网站网站开发项目项目运营
  • 网站app的意义免费做自我介绍网站
  • 旅行社做网站聊城市 网站制作
  • 滁州网站建设推广西安专业的网站设计费用
  • 汽车配件响应式网站网上购物平台投诉电话
  • 《学做网站论坛》视频下载做钢材销售客户哪里去开发网站
  • 最新的网站建设架构六安哪家做网站好
  • wordpress 网站静态企业网站排行
  • 西安市做网站公司有哪些如何改变wordpress字体颜色
  • 网站怎么备案在哪里下载天津做网站的费用
  • wordpress网站如何制作国家工商商标注册官网查询