当前位置: 首页 > 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://wiki.neutronadmin.com/news/105470/

相关文章:

  • 注册门户网站工程机械外贸网站建设
  • 局域网建站软件网络优化工程师发展前景
  • 张家港网站seo公司网站建设情况说明书
  • 网站开发 题目现在流行什么语言建设网站
  • 定制做网站平台北网站建设
  • 镇江企业网站建设租服务器多少钱
  • 关于网站建设的小故事网页界面设计教材
  • 佛山市企业网站seo报价什么是网络营销?如何理解网络营销
  • .php是什么网站高端网站设计公司上海
  • 房产网站建设价格物流案例网站
  • 个人网站建设规划表巨野有做网站的公司吗
  • 国外做伞的品牌网站安卓手机app开发用什么软件
  • 东莞网站建设有什么网络公司wordpress网站关闭
  • 杭州网站制作专做外贸库存的网站
  • 定制 网站电子商务网站开发方式
  • 小地方网站建设公司取名字的网站 优帮云
  • 目前热门的网站建设语言wordpress的意思和读音
  • 广州有哪些做网站的公司门户网站系统设计
  • 网站系统分析报告手机网站建设哪家专业
  • 做网站模板平台cms wordpress模板制作
  • 药材公司网站建设模板WordPress无法取消置顶文章
  • 凡科网站空间慢wordpress图片源码
  • 合肥建设工程竣工结算备案网站建设工程司法解释(一)
  • 深圳线运营是网站建设天津建设银行网站
  • 高校网站建设的重要性网站建设和维护要点
  • 网络直播平台搭建seo文章代写平台
  • 电脑手机一体网站张家界有没有做网站的公司
  • 海口房产网站建设wordpress 商务模板
  • 雅虎网站收录入口住房和城乡建设部政务服务门户app
  • 佛山做网站开发有哪些可以做任务的网站