Unity工程中的文件夹中语说明

 更新时间:2016年9月20日 19:59  点击:1451
在Unity工程的Assets目录内,有一些文件夹的名称具有特殊意义,有专门的用途,将其收集列举如下.


ActionScript
存放Flash的ActionScript脚本。当游戏被导出为Flash格式的时候,这里的脚本会自动替换指定的C#脚本。

Editor
存放编辑器脚本。

Gizmos

通常是存放TIF格式的图片,在OnDrawGizmos函数内使用Gizmos.DrawIcon将其画为图标在场只中显示。

Plugins/Android

存放Android插件,包括.jar或XML文件等。

Plugins/iOS

存放iOS插件,包括.a或.m 或 .mm文件等。

Resources

存放使用Resources.Load()动态读取的资源,它们可以是图片、模型等不同类型的资源。

Standard Assets

标准Unity资源包。

StreamingAssets
独立存放到文件系统中媒体文件,如视频等。

WebPlayerTemplates
存放网页游戏模版,其中的每个模版均以-个自定义名称的子目录形式存放。

如果你想制作自己的Android天气应用,那么你来对地方了.没有比使用Google Weather API XML解析更简单的方法了.所以你只需要知道如何解析XML即可.

背景
我们需要简单的访问XML来解析XML文档.因此,你只要知道在XML文档代码里结果的位置地方,然后解析它就很简单.举个例子,在下面这张图里,我们想要知道有关突尼斯的斯法克斯的天气:

一开始,我们需要指定我们想要知道天气的城市或者州.

 代码如下 复制代码

String c = city.getText().toString();
        String s = state.getText().toString();
        StringBuilder URL = new StringBuilder(BaseURL);
        URL.append(c+","+s);
        String fullUrl= URL.toString();
        try
        {
            URL website= new URL(fullUrl);
            //getting xmlReader to parse data
            SAXParserFactory spf= SAXParserFactory.newInstance();
            SAXParser sp = spf.newSAXParser();
            XMLReader xr = sp.getXMLReader() ;
            HandlingXmlStuff doingWork = new HandlingXmlStuff();
            xr.setContentHandler(doingWork);
            xr.parse(new InputSource(website.openStream()));
            String information = doingWork.getInformation();
            tv.setText(information);
        }
        catch(Exception e)
        {
            tv.setText("error");
        }

然后, 我们开始解析XML文档.

 代码如下 复制代码

public class HandlingXmlStuff extends DefaultHandler {
XMLDataCollected info = new XMLDataCollected();
public String getInformation()
{
    return info.dataToString();
}
 
    @Override
    public void startElement(String uri, String localName, String qName,
            Attributes attributes) throws SAXException {
        if (localName.equals("city"))
        {
            String city=attributes.getValue("data");
            info.setCity(city);
        }else if (localName.equals("temp_f")){
            String t = attributes.getValue("data");
            int temp = Integer.parseInt(t);
            info.setTemp(temp);
        }     
    }
}

我们需要指定我们的数据模型和使用的功能.

 代码如下 复制代码
public class XMLDataCollected {
    int temp= 0;
    String city=null ;
    public void setCity(String c)
    {
        city= c ;
    }
    public void setTemp(int t )
    {
        temp = t ;
    }
    public String dataToString()
    {
        return "In"+city+" the current Temp in F is "+ temp+" degrees";
    }
} 。

兴趣点
在这个方案里, 你学会了在Android应用里如何使用XML解析来轻松制作许多功能

 

在平时我们开发应用的过程中,我们可能需要设置一些动态变量值随着我们版本的变化一起变化 。在这种情况下,一般我们首先想到的办法可能就是我们申明一个静态的变量,然后在我们的应用中直接使用就行了,以后如果需要修改的时候,我们再找到这个类 里面的定义的地方,再重新赋值即可

当然,我们也可以通过在Menifest里面的meta-data标签来定义一个值,然后在我们的应用中直接去读取即可,这样,下次如果需要修改值,我们就不必再找到我们的代码了,而是在修改我们的版本号的时候,一起就可以修改了。更加方便与便捷。

这样的应用场景在给多市场打包的时候,你一定见过。比如友盟,有米的sdk里面就有一步为:在 application标签下定义一个meta-data来为不同的市场赋值和传入不同的appId。

那么我们的自己应用里面应该如何去定义meta-data的值呢?并且怎么在代码中取出我们要想的值 呢?

那么点击更多,跟着我一起来看看如何操作吧!!!

形如:

 代码如下 复制代码
<application ...>
<meta-data android:value="12345" android:name="APPID"/>
<activity ...>
<meta-data android:name="data_Name" android:value="hello my activity"></meta-data>
</activity>
</application>

从上面可以看出,我们的meta-data不仅仅是可以放到application标签下面,也可以放到activity下面,其实也可以放到service ,receiver下面。。。

我们分别来看看如何获取的吧?

1.获取 application标签中的meta-data:
形如:

 

 代码如下 复制代码

<application...>
<meta-data android:value="my_data" android:name="data_Name"/>
</application>
代码:

ApplicationInfo appInfo = context.getPackageManager()
.getApplicationInfo(context.getPackageName(),
PackageManager.GET_META_DATA);
String dataName=appInfo.metaData.getString("data_Name");

2.获取 activity标签中的meta-data:
形如:

 代码如下 复制代码

<activity ...>
<meta-data android:value="my_activity" android:name="data_Name"/>
</activity>

代码:

 代码如下 复制代码
ActivityInfo activityInfo = context.getPackageManager()
. getActivityInfo(activity.getComponentName(),
PackageManager.GET_META_DATA);
String dataName=activityInfo.metaData.getString("data_Name");

注意:activity.getComponentName()为获取activity实例的ComponentName 也可以用下面的代替:

 代码如下 复制代码
//通过指定一个activity类来生成一个新的ComponentName
ComponentName componentName =new ComponentName(context, SplashActivity.class);

3.获取 service标签中的meta-data:
形如:

 代码如下 复制代码
< service ...>
<meta-data android:value="my_service" android:name="data_Name"/>
</service >

代码:

 代码如下 复制代码
ComponentName componentName=new ComponentName(context, MyService.class);
ServiceInfo serviceInfo = context.getPackageManager()
. getServiceInfo(componentName,
PackageManager.GET_META_DATA);
String dataName=serviceInfo.metaData.getString("data_Name");

注意:在Service里面就没有getComponentName()方法来快速获取到当前的ComponentName了,所以只能通过指定service类的方式来生成一个新的ComponentName

4.获取 receiver标签中的meta-data:
形如:

 代码如下 复制代码
< receiver ...>
<meta-data android:value="my_receiver" android:name="data_Name"/>
</receiver >

代码:

 代码如下 复制代码
ComponentName componentName=new ComponentName(context, MyService.class);
ActivityInfo activityInfo = context.getPackageManager()
. getReceiverInfo(componentName,
PackageManager.GET_META_DATA); www.111cn.net
String dataName=activityInfo.metaData.getString("data_Name");

注意:在receiver可没有 ReceiverInfo了,而是用的activityInfo来处理的。

最后的注意:我们在获取值的时候都是使用的 是:xxxInfo.metaData.getString(“data_Name”);把所有的值都当成是String来获取的,如果在meta- data中是int型的,如果还是使用getString()方法获取出来的值是为空的,但是metaData提供了这么多种get方法来获取 。
如果metadata 的数据类型是没办法确定的,那么可以直接使用 Object object = metaData.get(key)来获取 ,然后再转化成自己要想的数据类型。

也许人们在得知Google新发布的Android系统版本名称为4.4时都不以为然,认为这个升级微不足道。就算是Google官方,对待此次升级也是颇为低调。

简单浏览了一下官方对该系统的简介,觉得比较值得关注的只有对内存的需求降低了,512MB RAM也可以轻松应付。也许很多手握小内存机型的机油们看到这里甚是欣慰,感觉老机的春天要来了。

artshow

不错,老机的春天是要来了,不过这并不是最重要的。Android4.4的杀手锏是ART,这一选项在隐藏的“开发者模式”中,一个非常不起眼的地方。这么重要的更新为什么隐藏在4.4的开发者模式中,或许谷歌官方认为ART还不够成熟,仅仅是让开发者做测试用。

经过本人实际体验,ART模式确实像网上流产的那样“兼容性差”、“高效”,至于“省电”这个特性还没有测试。开启ART模式后,手机确实流畅起来了,各类应用启动迅速,操作顺畅。但是ART也有一定的兼容性问题,部分应用无法正常运行,比如腾讯游戏在ART模式没法启动。

dualcorebenchmark

谈起iOS和Android,人们总是会认为Android需要更强大的硬件,效率极为低下的Dalvik虚拟机就是根源所在。被诟病这么多年的Dalvik虚拟机终于要被替换掉了,虽然Dalvik还是4.4的默认运行方式,不过这个版本已是它退居二线的开始。希望ART尽快成熟起来,改变Android耗费硬件的现状。

背景阅读:

Dalvik:为了能适配于各种设备和让开发人员迅速适应 Android 的平台,Android 在最初设计的时候是使用的Java 语言作为应用编写语言。编好的应用程序在运行时需要通过一个叫 Dalvik 的虚拟机进行解释编译,Dalvik负责与底层沟通。由于中间嵌套了一层虚拟机,应用程序不可能完整高效的利用到硬件的全部机能,也不太可能对某些专有方案作出特别的优化。因此 Android 的应用会比 iOS 上的执行效率慢一些。应用在运行过程中,Dalvik 通过一个叫 JIT的解释器动态的进行编译并执行,这一过程也拖慢了运行效率。

ART:Android Runtime,相比Dalvik,ART的处理机制完全不同,它会在应用程序安装时就把程序代码转换成机器语言,让程序成为真正的本地应用。这样做的好处是程序的启动时间被极大的提高,运行速度也会更快。电量消耗的更少,系统也跟着更加流畅。

由Dalvik虚拟机更换为ART,简单地说,就是Android程序运行的根本机制改变了,Android在启动程序时将像iOS一样,无须进行第二次“转换”工作了。程序会启动地更快,而且会更省资源。表现在用户体验上,就是Android更流畅了,同时续航能力显著增加。趋势上看,ART取代Dalvik只是迟早的事情。Android诞生已经7年有余,Google为了提升Android的性能已经从上到下做出了所有的努力,一直没有触及Dalvik虚拟机,若想大幅度的优化Android平台,Dalvik是非改不可。

安卓手机在你上过网时都会自动在手机中保存你上过的wifi网络的密码了,下面我不来告诉大家怎么在手机中查看wifi密码吧,希望此例子对各位有帮助。

1、在手机中我们安装“RE管理器” (具体安装可以直接下载在手机安装也可以使用手机助手进入安装了,在此就不介绍了)

安卓手机查看存储过WIFI密码方法

2、现在我们打开“RE管理器”然后在里面找到“date”目录,如图所示

安卓手机查看存储过WIFI密码方法

3、然后我们在data目录中会看到有一个“misc”文件夹,如图所示

安卓手机查看存储过WIFI密码方法

4、同样我们在misc目录中找到“wifi”如图所示。

安卓手机查看存储过WIFI密码方法

5、现在为最关键的一步了,我们在wifi目录里会看到一个配置文件了,我们点击“wpa_supplicant.conf”文件

安卓手机查看存储过WIFI密码方法

会看到很多netword{}里面有ssid,psk之类的字符了,ssid是wifi用户名,psd是此wifi密码了,这样我们就找到了呀。

安卓手机查看存储过WIFI密码方法
[!--infotagslink--]

相关文章

  • php读取zip文件(删除文件,提取文件,增加文件)实例

    下面小编来给大家演示几个php操作zip文件的实例,我们可以读取zip包中指定文件与删除zip包中指定文件,下面来给大这介绍一下。 从zip压缩文件中提取文件 代...2016-11-25
  • Jupyter Notebook读取csv文件出现的问题及解决

    这篇文章主要介绍了JupyterNotebook读取csv文件出现的问题及解决,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2023-01-06
  • php获取一个文件夹的mtime的程序

    php获取一个文件夹的mtime的程序了,这个就是时间问题了,对于这个问题我们来看小编整理的几个例子,具体的操作例子如下所示。 php很容易获取到一个文件夹的mtime,可以...2016-11-25
  • Photoshop打开PSD文件空白怎么解决

    有时我们接受或下载到的PSD文件打开是空白的,那么我们要如何来解决这个 问题了,下面一聚教程小伙伴就为各位介绍Photoshop打开PSD文件空白解决办法。 1、如我们打开...2016-09-14
  • 解决python 使用openpyxl读写大文件的坑

    这篇文章主要介绍了解决python 使用openpyxl读写大文件的坑,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-03-13
  • C#实现HTTP下载文件的方法

    这篇文章主要介绍了C#实现HTTP下载文件的方法,包括了HTTP通信的创建、本地文件的写入等,非常具有实用价值,需要的朋友可以参考下...2020-06-25
  • SpringBoot实现excel文件生成和下载

    这篇文章主要为大家详细介绍了SpringBoot实现excel文件生成和下载,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-02-09
  • C#操作本地文件及保存文件到数据库的基本方法总结

    C#使用System.IO中的文件操作方法在Windows系统中处理本地文件相当顺手,这里我们还总结了在Oracle中保存文件的方法,嗯,接下来就来看看整理的C#操作本地文件及保存文件到数据库的基本方法总结...2020-06-25
  • php无刷新利用iframe实现页面无刷新上传文件(1/2)

    利用form表单的target属性和iframe 一、上传文件的一个php教程方法。 该方法接受一个$file参数,该参数为从客户端获取的$_files变量,返回重新命名后的文件名,如果上传失...2016-11-25
  • php批量替换内容或指定目录下所有文件内容

    要替换字符串中的内容我们只要利用php相关函数,如strstr,str_replace,正则表达式了,那么我们要替换目录所有文件的内容就需要先遍历目录再打开文件再利用上面讲的函数替...2016-11-25
  • PHP文件上传一些小收获

    又码了一个周末的代码,这次在做一些关于文件上传的东西。(PHP UPLOAD)小有收获项目是一个BT种子列表,用户有权限上传自己的种子,然后配合BT TRACK服务器把种子的信息写出来...2016-11-25
  • AI源文件转photoshop图像变模糊问题解决教程

    今天小编在这里就来给photoshop的这一款软件的使用者们来说下AI源文件转photoshop图像变模糊问题的解决教程,各位想知道具体解决方法的使用者们,那么下面就快来跟着小编...2016-09-14
  • C++万能库头文件在vs中的安装步骤(图文)

    这篇文章主要介绍了C++万能库头文件在vs中的安装步骤(图文),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-02-23
  • Zend studio文件注释模板设置方法

    步骤:Window -> PHP -> Editor -> Templates,这里可以设置(增、删、改、导入等)管理你的模板。新建文件注释、函数注释、代码块等模板的实例新建模板,分别输入Name、Description、Patterna)文件注释Name: 3cfileDescriptio...2013-10-04
  • php文件上传你必须知道的几点

    本篇文章主要说明的是与php文件上传的相关配置的知识点。PHP文件上传功能配置主要涉及php.ini配置文件中的upload_tmp_dir、upload_max_filesize、post_max_size等选项,下面一一说明。打开php.ini配置文件找到File Upl...2015-10-21
  • ant design中upload组件上传大文件,显示进度条进度的实例

    这篇文章主要介绍了ant design中upload组件上传大文件,显示进度条进度的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-10-29
  • C#使用StreamWriter写入文件的方法

    这篇文章主要介绍了C#使用StreamWriter写入文件的方法,涉及C#中StreamWriter类操作文件的相关技巧,需要的朋友可以参考下...2020-06-25
  • php实现文件下载实例分享

    举一个案例:复制代码 代码如下:<?phpclass Downfile { function downserver($file_name){$file_path = "./img/".$file_name;//转码,文件名转为gb2312解决中文乱码$file_name = iconv("utf-8","gb2312",$file_name...2014-06-07
  • C#路径,文件,目录及IO常见操作汇总

    这篇文章主要介绍了C#路径,文件,目录及IO常见操作,较为详细的分析并汇总了C#关于路径,文件,目录及IO常见操作,具有一定参考借鉴价值,需要的朋友可以参考下...2020-06-25
  • 查找php配置文件php.ini所在路径的二种方法

    通常php.ini的位置在:复制代码 代码如下:/etc目录下或/usr/local/lib目录下。如果你还是找不到php.ini或者找到了php.ini修改后不生效(其实是没找对),请使用如下办法:1.新建php文件,写入如下代码复制代码 代码如下:<?phpe...2014-05-31