我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Unity3D游戏引擎实现在Android中打开WebView的实例

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Unity3D游戏引擎实现在Android中打开WebView的实例

本文讲述了如何在Unity中调用Android中的WebView组件,实现内部浏览器样式的页面切换。首先打开Eclipse创建一个Android的工程:
UnityTestActivity.java 入口Activity ,Unity中会调用这个Activity中的方法从而打开网页。


package com.xys;  
import android.content.Context;  
import android.content.Intent;  
import android.os.Bundle;  
import com.unity3d.player.UnityPlayerActivity;  
public class UnityTestActivity extends UnityPlayerActivity {  
  Context mContext = null;  
  @Override  
  public void onCreate(Bundle savedInstanceState) {  
    super.onCreate(savedInstanceState);  
    mContext = this;  
  }  
  //Unity中会调用这个方法,从而开打WebView  
   public void StartWebView(String str)  
   {  
       Intent intent = new Intent(mContext,WebViewActivity.class);  
       this.startActivity(intent);  
   }  
}

WebViewActivity.java Unity中发出通知打开这个Activity 继而打开WebView,没有什么难点大家看看就应当能掌握。


package com.xys;  
import android.app.Activity;  
import android.os.Bundle;  
import android.view.View;  
import android.view.View.OnClickListener;  
import android.webkit.WebView;  
import android.widget.Button;  
public class WebViewActivity extends Activity  
{  
  private WebView webView;  
  private Button close;  
  @Override  
  protected void onCreate(Bundle savedInstanceState) {  
    // TODO Auto-generated method stub  
    super.onCreate(savedInstanceState);  
    setContentView(R.layout.main);  
    webView = (WebView) findViewById(R.id.webView);  
    webView.loadUrl("http://www.baidu.com/");  
    webView.getSettings().setJavaScriptEnabled(true);  
    webView.setWebViewClient(new WebViewClient());  
    close = (Button) findViewById(R.id.button);  
    close.setOnClickListener(new OnClickListener() {  
      @Override  
      public void onClick(View v) {  
        WebViewActivity.this.finish();  
      }  
    });  
  }  
  private class WebViewClient extends android.webkit.WebViewClient {  
    @Override  
    public boolean shouldOverrideUrlLoading(WebView view, String url) {  
      //这里实现的目标是在网页中继续点开一个新链接,还是停留在当前程序中  
      view.loadUrl(url);  
      return super.shouldOverrideUrlLoading(view, url);  
    }  
  }  
}

然后是main.xml


<?xml version="1.0" encoding="utf-8"?>  
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent"
  android:orientation="vertical" >  
 <WebView  
      android:id="@+id/webView"
      android:layout_width="fill_parent"
      android:layout_height="wrap_content"
      android:layout_weight="1.0"
      />   
  <Button  
      android:id="@+id/button"
      android:text="关闭网页"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      />   
</LinearLayout>

最后是AndroidManifest.xml


<?xml version="1.0" encoding="utf-8"?>  
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
  package="com.xys"
  android:versionCode="1"
  android:versionName="1.0" >  
  <uses-sdk android:minSdkVersion="10" />  
  <application  
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name" >  
    <activity  
      android:name=".UnityTestActivity"
      android:label="@string/app_name" >  
      <intent-filter>  
        <action android:name="android.intent.action.MAIN" />  
        <category android:name="android.intent.category.LAUNCHER" />  
      </intent-filter>  
    </activity>  
    <activity  
      android:name=".WebViewActivity">  
    </activity>  
  </application>  
  <!-- 连接互联网的权限 -->  
  <uses-permission android:name="android.permission.INTERNET" />  
</manifest>

OK 到这里JAVA代码已经完全写完,然后把所有.JAVA文件打包变成.class文件,具体转换的方法大家可以参照相关的文章,这里就不再重复介绍了。

您可能感兴趣的文章:Android仿开心消消乐大树星星无限循环效果Android游戏源码分享之2048Android游戏开发实践之人物移动地图的平滑滚动处理Android 游戏开发之Canvas画布的介绍及方法Android开发之经典游戏贪吃蛇Android游戏开发之碰撞检测(矩形碰撞、圆形碰撞、像素碰撞)Android五子棋游戏程序完整实例分析以一个着色游戏展开讲解Android中区域图像填色的方法Android高仿2048小游戏实现代码Android开心消消乐代码实例详解


免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Unity3D游戏引擎实现在Android中打开WebView的实例

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Unity3D游戏引擎实现在Android中打开WebView的实例

本文讲述了如何在Unity中调用Android中的WebView组件,实现内部浏览器样式的页面切换。首先打开Eclipse创建一个Android的工程: UnityTestActivity.java 入口Activity ,Unity中会调
2022-06-06

探索Unity3D游戏引擎,开启游戏开发之旅(Unity3D游戏引擎在游戏开发中的应用与探索)

Unity3D是一款跨平台游戏引擎,广泛应用于各类游戏开发,包括3D、2D、移动、VR和AR游戏。其优势在于跨平台支持、强大的图形渲染、物理引擎、友好的用户界面和丰富的工具集。探索Unity3D可通过在线教程、官方文档、社区论坛、资产商店和创建游戏原型等方式,帮助开发人员深入了解引擎的工作原理并将其应用于游戏开发中。
探索Unity3D游戏引擎,开启游戏开发之旅(Unity3D游戏引擎在游戏开发中的应用与探索)
2024-04-02

Android游戏开发学习之引擎用法实例详解

本文实例讲述了Android游戏开发学习之引擎用法。分享给大家供大家参考。具体如下: 汽车引擎是汽车的心脏,其决定了汽车的性能和稳定性,是人们在购车时相当关注的。而游戏中的物理引擎就如汽车的引擎一样,占据了非常重要的位置。一款好的物理引擎可
2022-06-06

游戏物理引擎技术详解:打造真实游戏世界(游戏开发中物理引擎如何营造真实环境?)

物理引擎是现代游戏开发的核心组件,用于模拟现实物理定律,赋予游戏中的物体、角色和环境可信的运动和交互特性。它包括刚体物理(模拟重力、碰撞和力)、流体模拟(处理液体运动)、软体模拟(模拟布料、橡胶等变形行为)、破坏模拟(物体断裂)、角色动画(模拟肌肉、骨骼运动),以及人工智能(增强角色行为)。物理引擎在优化和应用方面也至关重要,在未来随着云物理、机器学习和触觉反馈的发展,将带来更真实的和令人信服的游戏体验。
游戏物理引擎技术详解:打造真实游戏世界(游戏开发中物理引擎如何营造真实环境?)
2024-04-02

Android游戏开发:实现手势操作切换图片的实例

对于Android 的手势不光在软件中会经常用到,比如浏览器中的翻页,滚动页面等等;当然其实在我们开发Android游戏的时候加上了Android手势操作更会让游戏增加一个亮点,比如一般的CAG、PUZ等类型的游戏选择关卡、简
2022-06-06

WebSocket在实时游戏开发中的应用案例

引言:随着网络技术的不断发展,实时游戏的需求也日益增长。传统的HTTP协议在实时游戏的场景下往往无法满足即时性和实时性的要求。而WebSocket作为一种新兴的通信协议,在实时游戏开发中得到了广泛应用。本文将以具体的案例和示例代码来探讨We
2023-10-21

网络游戏开发中的多人在线技术实现(如何实现网络游戏中的多人在线交互?)

多人在线游戏通过网络通信和服务器架构实现玩家交互,包括技术基础(网络协议、客户端-服务器模型、消息传递)、服务器架构(中央服务器、分布式服务器、P2P)、交互实现(玩家状态同步、事件触发、实时聊天、交互机制、反欺诈措施)、优化交互(网络优化、分区、客户端预测、服务器端验证)、其他注意事项(服务器容量、延迟补偿、社区建设)。通过这些技术实现,玩家可以在多人在线游戏中实现实时交互并享受沉浸式的游戏体验。
网络游戏开发中的多人在线技术实现(如何实现网络游戏中的多人在线交互?)
2024-04-02

掌握游戏开发中的AI路径规划算法(AI路径规划算法在游戏开发中的应用与实现)

AI路径规划算法在游戏开发中至关重要,使角色和物体能够智能地导航复杂环境。这些算法包括A算法、Dijkstra算法、DLite算法、导航网格和混合行为树。它们增强了角色导航,提高了游戏体验,简化了开发。考虑算法时,需要考虑环境复杂性、实时性、内存消耗等因素。通过选择合适的算法,开发人员可以创建逼真且引人入胜的游戏体验。
掌握游戏开发中的AI路径规划算法(AI路径规划算法在游戏开发中的应用与实现)
2024-04-02

虚拟现实技术在游戏开发中的应用与前景(VR技术如何为游戏开发带来新机遇?)

虚拟现实(VR)技术在游戏开发中创造了沉浸式体验,增强了交互性和情感共鸣。它允许非线性和分支性的故事线,提升叙事可能性。VR还促进了合作和社交体验,为教育和培训提供了逼真的场景。随着硬件进步、内容创新和市场增长,VR技术将在游戏行业带来深远的影响,推动游戏玩法、叙事形式和玩家互动方式的革新。
虚拟现实技术在游戏开发中的应用与前景(VR技术如何为游戏开发带来新机遇?)
2024-04-02

实时战斗系统在游戏开发中的设计与实现(如何实现紧张刺激的实时战斗系统?)

实时战斗系统是游戏核心要素,需要考虑输入、角色、环境、敌人、游戏节奏。设计时注重流畅输入、多样化角色、动态环境、智能化AI和快速节奏。实现方面,降低输入延迟、创建流畅动画、完善AI行为树、应用物理碰撞检测和优化音频设计至关重要。持续收集反馈、测试和分析数据,不断改进和优化系统,提升玩家体验。
实时战斗系统在游戏开发中的设计与实现(如何实现紧张刺激的实时战斗系统?)
2024-04-02

游戏开发中跨平台兼容性与适配技术(如何实现游戏在不同平台的流畅运行?)

跨平台兼容性使游戏可在不同平台上运行,克服了硬件、操作系统和开发工具的差异。适配技术包括跨平台开发框架、代码抽象、平台特定层、云服务集成、自动化测试和本地化。规划跨平台支持、使用可扩展代码、彻底测试和调试、与平台供应商合作并持续更新等最佳实践至关重要。通过采用这些技术和实践,开发者可以创建在多个平台上流畅运行的跨平台游戏。
游戏开发中跨平台兼容性与适配技术(如何实现游戏在不同平台的流畅运行?)
2024-04-02

编程热搜

  • Android:VolumeShaper
    VolumeShaper(支持版本改一下,minsdkversion:26,android8.0(api26)进一步学习对声音的编辑,可以让音频的声音有变化的播放 VolumeShaper.Configuration的三个参数 durati
    Android:VolumeShaper
  • Android崩溃异常捕获方法
    开发中最让人头疼的是应用突然爆炸,然后跳回到桌面。而且我们常常不知道这种状况会何时出现,在应用调试阶段还好,还可以通过调试工具的日志查看错误出现在哪里。但平时使用的时候给你闹崩溃,那你就欲哭无泪了。 那么今天主要讲一下如何去捕捉系统出现的U
    Android崩溃异常捕获方法
  • android开发教程之获取power_profile.xml文件的方法(android运行时能耗值)
    系统的设置–>电池–>使用情况中,统计的能耗的使用情况也是以power_profile.xml的value作为基础参数的1、我的手机中power_profile.xml的内容: HTC t328w代码如下:
    android开发教程之获取power_profile.xml文件的方法(android运行时能耗值)
  • Android SQLite数据库基本操作方法
    程序的最主要的功能在于对数据进行操作,通过对数据进行操作来实现某个功能。而数据库就是很重要的一个方面的,Android中内置了小巧轻便,功能却很强的一个数据库–SQLite数据库。那么就来看一下在Android程序中怎么去操作SQLite数
    Android SQLite数据库基本操作方法
  • ubuntu21.04怎么创建桌面快捷图标?ubuntu软件放到桌面的技巧
    工作的时候为了方便直接打开编辑文件,一些常用的软件或者文件我们会放在桌面,但是在ubuntu20.04下直接直接拖拽文件到桌面根本没有效果,在进入桌面后发现软件列表中的软件只能收藏到面板,无法复制到桌面使用,不知道为什么会这样,似乎并不是很
    ubuntu21.04怎么创建桌面快捷图标?ubuntu软件放到桌面的技巧
  • android获取当前手机号示例程序
    代码如下: public String getLocalNumber() { TelephonyManager tManager =
    android获取当前手机号示例程序
  • Android音视频开发(三)TextureView
    简介 TextureView与SurfaceView类似,可用于显示视频或OpenGL场景。 与SurfaceView的区别 SurfaceView不能使用变换和缩放等操作,不能叠加(Overlay)两个SurfaceView。 Textu
    Android音视频开发(三)TextureView
  • android获取屏幕高度和宽度的实现方法
    本文实例讲述了android获取屏幕高度和宽度的实现方法。分享给大家供大家参考。具体分析如下: 我们需要获取Android手机或Pad的屏幕的物理尺寸,以便于界面的设计或是其他功能的实现。下面就介绍讲一讲如何获取屏幕的物理尺寸 下面的代码即
    android获取屏幕高度和宽度的实现方法
  • Android自定义popupwindow实例代码
    先来看看效果图:一、布局
  • Android第一次实验
    一、实验原理 1.1实验目标 编程实现用户名与密码的存储与调用。 1.2实验要求 设计用户登录界面、登录成功界面、用户注册界面,用户注册时,将其用户名、密码保存到SharedPreference中,登录时输入用户名、密码,读取SharedP
    Android第一次实验

目录