unity 调用android的activity,Unity调用Android的Activity

写了关于Unity与Android结合所遇到的问题及解决方法

总结一下,Unity做一个简单的场景,AndroidStudio建一个简单的项目,其中MainActivity是要继承自

UnityPlayerActivity的,这样Unity程序可以调用Android端MainActivity的方法了

那如果Android项目中还有一个NewActivity,我们要通过Unity把他打开咋办呢

以下用的例子也是从网上找的,但是运行有问题,我又进行了修改才可以用。

首先,在AndroidMenifest.xml中要把这个Activity加进去

android:name=".OpenActivity1">

如上黄字部分

既然有这个OpenActivity1,那必然是有一个Java Class,OpenActivity1,继承Activity

与MainActivity在同一路径下

而且在layout文件夹下也有对应的xml部局文件,我命名为activity_new.xml

OpenActivity1的代码为:com.reach.testandroid.app.Activityandroid.content.Intentandroid.os.Bundleandroid.view.Viewandroid.view.View.OnClickListenerandroid.widget.Buttonandroid.widget.TextViewOpenActivity1 Activity{

(Bundle savedInstanceState)

{

TextView text=(TextView)

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Unity调用Android相册可以通过编写本地插件来实现。以下是一种方法: 首先,创建一个Java类作为我们的本地插件。在Android Studio中,创建一个新的Java类文件,并添加以下代码: ```java import android.content.Intent; import android.net.Uri; import android.provider.MediaStore; public class GalleryPlugin { public static void OpenGallery() { Intent intent = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI); intent.setType("image/*"); intent.putExtra(Intent.EXTRA_MIME_TYPES, new String[]{"image/jpeg", "image/png"}); UnityPlayer.currentActivity.startActivityForResult(intent, 1); } } ``` 然后,在Unity中创建一个C#脚本来调用这个本地插件。在脚本中,我们将使用`DllImport`来导入Android库,并定义一个静态方法来调用Java类中的方法: ```csharp using System.Runtime.InteropServices; public class AndroidGallery : MonoBehaviour { [DllImport("gallery_plugin")] private static extern void OpenGallery(); public void OpenAndroidGallery() { OpenGallery(); } } ``` 在Unity中创建一个UI按钮,并将其连接到`OpenAndroidGallery`方法。这样,当我们点击按钮时,将调用本地插件的方法。 最后,将生成的Java类文件和C#脚本文件分别放在对应的目录中,并导出到Android项目中。 通过这种方式,我们可以在Unity调用Android相册,并允许用户选择图片。一旦用户选择了图片,可以使用Unity的处理方法进行后续操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值