Unity之Android端权限申请

前言

开篇废话

  • 和小伙伴用了两天时间,进行了需求分离,另立项目,然后打版本。感觉好爽!!
  • 然后领导提出了一个需求,要求新用户刚打开App后就进行全部权限的申请,让小黑很苦恼啊 ,于是今天来完成这个需求。

Unity版本

  • Unity2019.4.4f1

正题

前期准备

  • 创建项目
  • 编写脚本
    上脚本
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Android;
using UnityEngine.UI;
using UnityTools; /// <summary>
/// 权限申请类
/// </summary>
public class ApplyPermissions : MonoBehaviour
{
// 图片组件
public RawImage rawImage; void Start()
{
OlderVersion();
} private void OnApplicationFocus(bool focus)
{
if (focus && i < 3 )
{
Debuger.LogError("申请" + _olderPermissionName[i] + "权限回来了"+ Permission.HasUserAuthorizedPermission(Permission.Camera));
i++;
OlderVersion();
}
}
#region older version
private List<string> _olderPermissionName = new List<string>()
{
/*这里是重点 ,0索引一定要放一个 读 或者 写 的权限 */
Permission.ExternalStorageRead,
Permission.Camera,
Permission.Microphone,
Permission.ExternalStorageWrite,
};
int i = 0;
private void OlderVersion()
{
#if UNITY_EDITOR
return;
#endif if (!Permission.HasUserAuthorizedPermission(_olderPermissionName[i]))
{
Debuger.Log("申请" + _olderPermissionName[i] + "权限..");
Permission.RequestUserPermission(_olderPermissionName[i]);
}
if (Permission.HasUserAuthorizedPermission(Permission.Camera))
{
WebCamTexture webCam = new WebCamTexture(WebCamTexture.devices[0].name, WebCamTexture.devices[0].availableResolutions[0].width, WebCamTexture.devices[0].availableResolutions[0].height, 30);
rawImage.texture = webCam;
webCam.Play();
}
}
#endregion
}

挂载脚本

  • 把脚本挂载到场景中就好了

打包发布

安装App

查看结果


哎呀,小黑的红拖鞋 让看到了,害羞!

结尾

唠家常

  • 小黑打算今儿给大家 展示UIWidgets的 Icon图标来着,然后就弄这个好东西了。
  • 小黑的今日分享结束啦,小伙伴们你们get到了么,你们有没有更好的办法呢,可以评论区留言分享,也可以加小黑的QQ:841298494,大家一起进步。
  • 对了,我把小可爱删了。因为小黑认为现在的自己还不够优秀,没资格谈恋爱,就这样吧,当一个垃圾技术宅吧。

今日无推荐

程序的道路上学习永不停止,探索随时进行。
Let’s go. Just do it. We can.

Unity之Android端权限申请的更多相关文章

  1. Android 动态权限申请

    package com.dragon.android.permissionrequest; import android.Manifest; import android.content.Dialog ...

  2. Unity实现Android端视频播放

    本文只讲Android短的视频播放 实现方式 使用Handheld.PlayFullScreenMovie(),这个函数实现.具体如下: 1.创建StreamingAssets文件夹,此文件夹放入视频 ...

  3. Android 敏感权限申请

    动态权限管理是Android6.0(Build.VERSION_CODES.M = Api23)推出的,提醒用户当前APP所需要的权限,防止滥用.这些权限一般分为三种:(1)普通权限:直接manife ...

  4. Android动态权限申请

    Android系统中,目前Dangerous级别的权限都需要动态申请.步骤如下: 1.AndroidManfiest.xml中申明需要的动态权限 <?xml version="1.0& ...

  5. 【Unity游戏开发】Android6.0以上的动态权限申请问题

    一.引子 最近公司的游戏在做安全性测试,期间也暴露出了不少安全上的问题.虽然我们今天要说的权限申请和安全性相关不大,但是也会影响到游戏的使用体验等,所以本篇博客中马三就想和大家谈谈Android6.0 ...

  6. android权限申请Permission

    代码地址如下:http://www.demodashi.com/demo/12432.html android在6.0系统以后,权限申请变得麻烦起来,今天介绍一个超级好用的权限申请库,我在使用中经过再 ...

  7. Unity调用Android的两个方式:其一、调用jar包

    unity在Android端开发的时候,免不了要调用Java:Unity可以通过两种方式来调用Android:一是调用jar.二是调用aar. 这篇文章主要讲解怎么从无到有的生成一个jar包,然后un ...

  8. Unity调用Android的两种方式:其一、调用jar包

    unity在Android端开发的时候,免不了要调用Java:Unity可以通过两种方式来调用Android:一是调用jar.二是调用aar. 这篇文章主要讲解怎么从无到有的生成一个jar包,然后un ...

  9. Unity 与 Android 互调用

    https://www.jianshu.com/p/b5e3cfcdf081 Unity 项目中一些需要访问安卓操作系统的功能,比如获取电量,wifi 状态等,需要 Unity 启动安卓系统的 Bro ...

随机推荐

  1. 查看服务器出口ip

    [root@iZap201hv2fcgry1alvbznZ ~]# curl cip.cc IP : xxx.xxx.xx.xx 地址 : 中国 浙江 绍兴 运营商 : 移动 数据二 : 浙江省绍兴市 ...

  2. 操作系统课程设计pintos project1实验摘记

    第一部分 项目概述 一.Pintos简介 Pintos是一个基于80x86架构的简单操作系统框架,它支持内核级线程.能够加载和运行用户程序,也拥有文件系统,不过,这些功能均以一种简单的形式实现. 二. ...

  3. Bugku md5 collision

    题目名字都叫md5碰撞,那就肯定和md5碰撞脱不了关系了 打开题目,首先让我们输入a 行吧,随意post一个a=1进去 结果提示flase 这里应该是有特殊值,我们找找看 查看源码,抓包 没找到 试试 ...

  4. 第2-4-3章 规则引擎Drools基础语法-业务规则管理系统-组件化-中台

    目录 4. Drools基础语法 4.1 规则文件构成 4.2 规则体语法结构 4.3 注释 4.4 Pattern模式匹配 4.5 比较操作符 4.5.1 语法 4.5.2 操作步骤 4.6 执行指 ...

  5. integer 拆箱装箱以及范围

    //装箱是将一个原始数据类型赋值给相应封装类的变量.而拆箱则是将一个封装类的变量赋值给相应原始数据类型的变量. int i1 = 1; int i2 = 1; Integer integer1 = n ...

  6. 私藏!资深数据专家SQL效率优化技巧 ⛵

    作者:韩信子@ShowMeAI 数据分析实战系列:https://www.showmeai.tech/tutorials/40 本文地址:https://www.showmeai.tech/artic ...

  7. Nginx 安装篇-1.19.9版本源码安装

    系统环境:CentOS 8.5 64位 [开始安装](此步骤引自网络教程) https://www.cnblogs.com/torchstar/p/16027538.html 教程比较详细,一步步操作 ...

  8. 【实时数仓】Day00:数据流程、课程内容、框架结构、知识点总结

    一.数据流程 1.离线数仓 2.实时数仓 二.课程内容 1.数据采集层(ODS) 2.DWD层与DIM层数据准备 3.DWM层业务实现 4.DWS层业务实现 5.ClickHouse 6.数据可视化接 ...

  9. 使用python脚本传递参数:(三种方式可收藏)

    背景:使用python脚本传递参数在实际工作过程中还是比较常用,以下提供了好几种的实现方式: 一.使用sys.argv的数组传入说明:使用sys.argv必须按照先后的顺序传入对应的参数:sys.ar ...

  10. 详解Python当中的pip常用命令

    原文链接:https://mp.weixin.qq.com/s/GyUKj_7mOL_5bxUAJ5psBw 安装 在Python 3.4版本之后以及Python 2.7.9版本之后,官网的安装包当中 ...