首页 > 其他分享 >Unity Android Studio 设置自启动应用

Unity Android Studio 设置自启动应用

时间:2023-11-13 17:33:23浏览次数:37  
标签:java add Unity base Studio 自启动 Android

前言

  最近有需求,需把Unity软件发布到android平台后开机启动应用,在网上查了很多资料,现整理如下

Unity部分

  新建项目,平台设置为android

   tips: 需要勾选Export Project以便于导入Android Studio ,使用Unity版本为2021.3.32f1

Android Studio部分 android studio环境配置相关就省略了,如有需要网上有很多大神的教程,请自行查阅

  有几点注意事项:

  1.需要修改AndroidManifest.xml里的配置

   <!--接收启动完成的广播权限-->
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
    <!--悬浮窗-->
    <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
   <receiver
        android:name=".StartReciver"-----这里应为添加的java脚本名------
        android:enabled="true"
        android:exported="true"
        android:permission="android.permission.RECEIVE_BOOT_COMPLETED">
        <intent-filter android:priority="1000">
        <action android:name="android.intent.action.BOOT_COMPLETED"></action>
        <category android:name="android.intent.category.HOME"/>
        </intent-filter>>
    </receiver>

  

  2.打开应用权限允许应用在后台弹出界面、允许应用显示悬浮窗及打开应用自启动

  3.修改添加java脚本

         

    @Override
    public void onReceive(Context context, Intent intent)
    {
        //设备重启之后,打开应用
        if("android.intent.action.BOOT_COMPLETED".equals(intent.getAction())){
            Intent startIntent=context.getPackageManager().getLaunchIntentForPackage(context.getPackageName()); //new Intent(context,UintyPlayerActivity.class);
            //非常重要 如果缺少的话,程序启动会报错
            startIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
            //自启动APP
            context.startActivity(startIntent);
        }
    }

  后记

    Android Studio打包时遇见报错 Unable to make field private final java.lang.String java.io.File.path accessible: module java.base does not "opens java.io" to unnamed module

  该问题是因为Gradle版本和Java版本不兼容导致的问题,一般可以通过查找对应版本重新安装打包来解决(Compatibility Matrix (gradle.org) 可以在这个网站查找Gradle兼容版本信息),不过我在网上查找到资料,发现了一个暴力解法:

  打开Android项目下的gradle.properties,在org.gradle.jvmargs配置后面加上:

--add-exports=java.base/sun.nio.ch=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.reflect=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-exports=jdk.unsupported/sun.misc=ALL-UNNAMED

    关于Gradle下载,请参考网上其他大神的文章,这里就不详细介绍了

  

 

 

标签:java,add,Unity,base,Studio,自启动,Android
From: https://www.cnblogs.com/hirn/p/17824369.html

相关文章

  • Set a Light 3D Studio: 创造逼真光线效果,轻松拍摄 mac/win版
    SetaLight3DStudiomac/win版是一款功能强大的3D摄影棚模拟布光软件,它为用户提供了一个全方位、真实的摄影棚环境,以及各种专业的布光工具和功能,让用户能够轻松地模拟并创造出各种光线效果。→→↓↓载set.a.light3DSTUDIO首先,SetaLight3DStudio的界面设计非常直观,易......
  • 优秀的前端工具FinClip Studio 有哪些值得期待的价值点?
    现今,移动应用程序已成为一项重要的技术,人们几乎在所有方面都使用移动应用程序,包括社交媒体、电子商务、娱乐、健康和生产力等领域。用户对移动应用程序的体验和功能需求越来越高,这意味着开发人员需要花费更多的时间和精力来确保应用程序的质量和用户体验。幸运的是,现在有许多可用......
  • 在Android Studio中如何从MySQL数据库中展示项目中的数据?
    要在AndroidStudio中从MySQL数据库展示项目中的数据,你需要遵循以下步骤:1.添加MySQLConnector/J依赖项到你的项目的build.gradle文件中:```groovydependencies{implementation'mysql:mysql-connector-java:8.0.23'}```2.在AndroidManifest.xml文件中添加INTERNET......
  • Unity底层是如何处理C#的
    在面试中,我们经常会被问到Unity的底层是如何处理C#,本节给通过一下3个点来给大家详细的分析这个问题:(1) C#的发展历史;(2) Unity为什么用C#;(3) il2cpp解决了什么问题;  C#的发展历史 C#没有出来之前,当时Java凭借Java虚拟机+Java字节码解释执行,让Java代码移植编写......
  • unity LookRotation LookAt 功能详解
    Quaternoin的旋转函数static Quaternion LookRotation(Vector3 forward, Vector3 upwards =Vector3.up); Transform中的旋转函数void LookAt(Transform target, Vector3 worldUp =Vector3.up);void LookAt(Vector3 worldPosition, Vector3 worldUp =V......
  • 鸿蒙原生应用开发-DevEco Studio中HarmonyOS与OpenHarmony项目的切换
    一、找到该目录二、修改操作系统类型三、分别进行开发,一些常规的应用功能实现后,相互切换后都可以正常运行的。前期OpenHarmony项目如果连接开发板比较困难的化,开发完成后,切换成为HarmonyOS后就可以比较详细地看看效果了。......
  • unity开发——打飞碟小游戏
    unity开发——打飞碟小游戏目录unity开发——打飞碟小游戏项目地址游戏规则及要求规则要求设计模式讲解代码剖析伪代码DiskDiskDataIUserActionIActionManagerCCActionManagerPhysisFlyActionPhysisActionManagerScoreRecorderUserGUI项目地址https://github.com/goodhuahua/un......
  • Unity 计算圆的切点
    ///<summary>///计算过圆外一点的切点,在圆上的切点///</summary>///<paramname="center"></param>///<paramname="radius"></param>///<paramname="point"></param>......
  • 关于 deamon 与 systemctl ,systemd , ubuntu20 自启动脚本
    deamon是指的守护进程,但是什么是守护进程呢,从网上查了一下,就是在后台运行的程序就叫做守护进程。     接下来看一下关于systemd的自启动的配置文件。       疑问:1 unit与target到底又什么关系呢?2到底有多少个unit......
  • 10 Tips to Boost Your Productivity with C# and Visual Studio 2008
    http://blogs.msdn.com/johnwpowell/archive/2008/03/23/10-tips-to-boost-your-productivity-with-c-and-visual-studio-2008.aspxhttp://www.microsoft.com/downloads/details.aspx?familyid=E5F902A8-5BB5-4CC6-907E-472809749973&displaylang=enhttp://dotnet.chinait......