精华内容
下载资源
问答
  • unity使用方法:解压后把"androidAutoStar\app\build\outputs\aar\app-debug.aar"文件导入到unity项目中, 打包成功后安装到手机运行后重启手机,手机重启后等待1-2分钟该应用即可自己打开。 需要注意得是有的手机...
  • unity打包安卓实现开机自启

    热门讨论 2018-09-12 09:41:36
    unity打包安卓实现安卓应用开机自启。使用方法:把"安卓开机自动.arr"文件导入到unity项目中,或者根据习惯放在Plugins/Android目录下面。打包成功后安装到手机运行后重启手机,手机重启后等待1-2分钟该应用即可自己...
  • Unity3D如何导出为APP安装包(苹果版ipa)教程.zip
  • Unity3D如何导出为APP安装包(安卓版apk)教程.zip
  • static_WhatsApp = [WhatsApp sharedInstance]; } if ( NULL == nsUrl ) { return ; } [static_WhatsApp SendToWhatsApp:nsUrl]; } @catch ( NSException *exception) { } @finally { } }...

    android

            private static readonly string ShareTextureFilePath = Application.persistentDataPath + "/MLShare.jpg";  //截屏地址
            public void SendToWhatsApp(string text, bool isImage, uint shareType, uint id, int itemId = 0) //text 分享文本  isImage 是否有图片  WhatsApp 分享可以文字和图片一起发
            {
    #if UNITY_ANDROID && !UNITY_EDITOR
            try
            {
                var Intent = new AndroidJavaClass("android.content.Intent");
                var ACTION_SEND = Intent.GetStatic<string>("ACTION_SEND");
                var EXTRA_TEXT = Intent.GetStatic<string>("EXTRA_TEXT");
                var EXTRA_STREAM = Intent.GetStatic<string>("EXTRA_STREAM");
    
                var intent = new AndroidJavaObject("android.content.Intent");
                intent.Call<AndroidJavaObject>("setPackage", "com.whatsapp");
                intent.Call<AndroidJavaObject>("setAction", ACTION_SEND);
                if (text != null && text != "")
                {
                    intent.Call<AndroidJavaObject>("putExtra", EXTRA_TEXT, text);
                    intent.Call<AndroidJavaObject>("setType", "text/plain");
                }
                if (isImage)
                {
                    using (AndroidJavaClass uri = new AndroidJavaClass("android.net.Uri"))
                    {
                        if(DeviceUtil.GetAndroidVersionCode()>=24)
                        {
                            AndroidJavaClass   _unityPlayer = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
                            AndroidJavaObject  _currentActivity = _unityPlayer.GetStatic<AndroidJavaObject>("currentActivity");
                            var file = new AndroidJavaObject("java.io.File", ShareTextureFilePath);  
                            AndroidJavaClass fileProvider = new AndroidJavaClass("android.support.v4.content.FileProvider");
                            var imgurl = fileProvider.CallStatic<AndroidJavaObject>("getUriForFile",_currentActivity,"com.mobile.legends.fileprovider",file);
                            intent.Call<AndroidJavaObject>("putExtra",EXTRA_STREAM, imgurl);
                        }
                        else
                       {
                            intent.Call<AndroidJavaObject>("putExtra", EXTRA_STREAM,uri.CallStatic<AndroidJavaObject>("parse", ShareTextureFilePath));
                       }
                       intent.Call<AndroidJavaObject>("setType", "image/*");
                    }
                }
                if (text != null && text != "" && isImage)
                {
                    intent.Call<AndroidJavaObject>("setType", "*/*");
                }
    
                var UnityPlayer = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
                var currentActivity = UnityPlayer.GetStatic<AndroidJavaObject>("currentActivity");
                currentActivity.Call("startActivity", intent);//Intent.CallStatic<object>("createChooser", intent, ""));  
            }
            catch (Exception e)
            {
    
            }
    #elif (UNITY_IOS || UNITY_IPHONE) && !UNITY_EDITOR
            _IOS_SendToWhatsApp(text,  ShareTextureFilePath, isImage);
    #endif
            }

    IOS

        static WhatsApp* static_WhatsApp = NULL;
        void _IOS_SendToWhatsApp(const char *url,const char *imgUrl,bool isImage)
        {
            if (isImage && imgUrl != NULL) {
               @try
                {
                    NSString *nsUrl =[NSString stringWithUTF8String:imgUrl];
                    if( NULL == static_WhatsApp )
                    {
                        static_WhatsApp = [WhatsApp sharedInstance];
                    }
                    if( NULL == nsUrl )
                    {
                        return;
                    }
                    [static_WhatsApp SendToWhatsApp:nsUrl];
                }
                @catch (NSException *exception)
                {
    
                }
                @finally
                {
    
                }
            }
            else if (url != NULL) {
                NSString *text = [NSString
                                       stringWithFormat:@"whatsapp://send?text=%@",
                                       [[NSString stringWithUTF8String:url] stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
                NSString *newtext = [text stringByReplacingOccurrencesOfString:@"&" withString:@"%26"];
                NSURL *nsurl = [NSURL URLWithString:newtext];
                [[UIApplication sharedApplication] openURL:nsurl];
            }
        }

    WhatsApp.h

    #import <Foundation/Foundation.h>
    #import <UIKit/UIKit.h>
    #import <UIKit/UIViewController.h>
    @interface WhatsApp : UIViewController<UIDocumentInteractionControllerDelegate>
    {
    }
    @property(nonatomic,retain) UIDocumentInteractionController *documentationInteractionController;
    
    + (WhatsApp*)sharedInstance;
    - (void) SendToWhatsApp:(NSString*)imgUrl;
    @end
    

    WhatsApp.m

    #import "WhatsApp.h"
    #import <UIKit/UIKit.h>
    
    
    @implementation WhatsApp
    
    @synthesize documentationInteractionController = __documentationInteractionController;
    
    + (WhatsApp*)sharedInstance
    {
        static WhatsApp* _instance = nil;
        if (_instance == nil)
        {
            _instance = [[WhatsApp alloc] init];
        }
        return _instance;
    }
    - (void) SendToWhatsApp:(NSString*)imgUrl
    {
        if ([[UIApplication sharedApplication] canOpenURL: [NSURL URLWithString:@"whatsapp://app"]]){
        UIImage *Image =[[UIImage alloc]initWithContentsOfFile:[NSString stringWithFormat:imgUrl,NSHomeDirectory()]];
        NSString *savePath  = [NSHomeDirectory() stringByAppendingPathComponent:@"Documents/whatsAppTmp.jpg"];
        [UIImageJPEGRepresentation(Image, 1.0) writeToFile:savePath atomically:YES];
        self.documentationInteractionController = [UIDocumentInteractionController interactionControllerWithURL:[NSURL fileURLWithPath:savePath]];
        self.documentationInteractionController.UTI = @"net.whatsapp.image";
        self.documentationInteractionController.delegate = self;
        [self.documentationInteractionController presentOpenInMenuFromRect:CGRectZero inView:UnityGetGLViewController().view animated: YES];
        }
    
    }
    @end
    
    展开全文
  • Unity和Easy AR制作一个AR的APP

    千次阅读 2019-09-27 15:45:47
    这个不是什么正规的项目。。。就是觉得AR好玩,研究了一下,很早之前就玩过了,现在再做的时候竟然忘记了。看来还是要记录一下的。。...unity我用的是unity2018.2.3的; 在做项目之前,要去ea...

    这个不是什么正规的项目。。。就是觉得AR好玩,研究了一下,很早之前就玩过了,现在再做的时候竟然忘记了。看来还是要记录一下的。。。

    功能就是:用手机扫描一个图片,然后会出现一个AR物体,当然这物体是你自己设置的模型。

     

    首先说如何制作一个AR的APP需要准备什么,easy ar这个插件,我用的版本是2.2.0的;unity我用的是unity2018.2.3的;

     

    在做项目之前,要去easyar的官网注册一个账号,只后去开发中心,添加一个SDK的key,会自动获取到一个sdk的license key。这个很重要,之后会用到的。

    当然这个名字是有讲究的,和unity打包时候那里的公司名字一样,如上图中

     

    然后就打开untiy导入easy ar的插件进去,从prefabs里找到EasyAR_Startup和ImageTarget两个物体然后拖进场景里。如图:

    同时把你要扫描的图片放到一个名为:StreamingAssets的文件夹里,如果没有这个文件夹就新建一个。注意:文件夹名字必须是StreamingAssets

    我在这里放了很多图片,本案例只用名为zl的图片做例子,如图:

    在EasyAR_Startup的属性里把刚在官网里申请到的key复制过来,放到key的里面。如下图:

     

    在ImageTarget的下面放一个物体(这个物体就是你扫描图片要显示的物体,作为ImageTarget的子物体),本案例里放了一个球体。

    默认拖到场景里的ImageTarget在Scene里是看不到东西,我们可以给它加一个材质球,假如我这里新建的叫mat的材质球,材质球用的就是即将扫描的那张名为“zl的”图。。。然后赋值给它,如图:

    默认的ImageTarget自己带的脚本是ImageTargetBehaviour。当我们调整ImageTargetBehaviour里的size这个参数时(例如大小设置为3),我们就会在Scene场景中看到图片了。如图:

     

     

    继续配置ImageTargetBehaviour里的参数

    path 需要把StreamingAssets路径下的那张图片的全名写上包括图片格式,例如本案例的zl.png

    Name 就是该路径下这个图片的名字

    Storage 选择为Assets

    loader这个地方去选择场景里的EasyAR_Startup这个物体下的名为ImageTracker的子物体。

    上述步骤,如下图:

     

    至此所有的开发内容完成,接下来就是打包的配置了,在playersetting里面的公司名字这里写上我们最开始在easy ar的官网设置的项目的名字。如图:

    之后就是普通的安卓打包过程了,这里不再赘述。然后安装后,记得给app访问摄像头的权限,然后进入app用手机扫描你设定的图片就会看到你想显示的东西。例如案例里的扫描zl那张图就会有一个球体出现在画面里。

    注意:显示的物体不要太大而把图片给遮挡的太多了。遮挡多了就采集不到图片的信息了。合理调整图片和模型的比例以及位置。

     

    展开全文
  • 使用unity3d开发app

    千次阅读 2016-12-15 18:02:00
    unity3d开发app的缺点: a.包大 b.耗电 3.没有app开发的框架 4.没有app开发的控件 5.移动平台功能要自己对接不同的系统 优点: 支持PC,支持移动,支持做很炫的效果,调试开发环境没有障碍,调试运行...

    做过一些项目,参入过一些项目的计划安排。总觉得一些工具用起来很麻烦,要么是要收费,要么很大很重。没有针对小团队的简单易用的任务管理工具,也可能是找了些不能适合自己的习惯。

    所有准备开始自己开发一款项目计划管理工具,来自己使用。

    所以开始选择开发工具:

    1.原生的安卓和ios感觉要维护多个版本保持版本一致,实在是没那精力

    2.html跨平台方案,混合开发(听说体验不是很好),react(看了下,现在支持安卓、ios)没看到支持pc,Angular2(试了下还不错同样只支持安卓、ios)但是api很多,限制很多不是很灵活,xamarin同样不支持windows PC,而且安卓模拟器调试和真机调试都是很慢的

    3.最后选用了unity3d来开发

    unity3d开发app的缺点:

    a.包大

    b.耗电

    3.没有app开发的框架

    4.没有app开发的控件

    5.移动平台功能要自己对接不同的系统

    优点:

    支持PC,支持移动,支持做很炫的效果,调试开发环境没有障碍,调试运行快

    那现在又回到unity3d的缺点,包大,我现在开发的差不多,包体在22m多,应该还好,当然比不上原生的。再说耗电,有的玩家玩游戏都能玩上几个小时,用一个普通的应用应该不会那么长时间。app开发框架没有,自己建,app开发

    控件没有自己建,移动平台功能自己对接(如果多的话就麻烦些了)

    还有一点,也是重要的一点就是个人比较喜欢c#,也比较喜欢unity3d这种不让开发者麻烦的精神,呵呵!

    现在给大家看下这些天的成果;下载地址:http://android.myapp.com/myapp/detail.htm?apkName=com.Lemon.Team

    有兴趣的朋友欢迎加入群:柠檬团队 466465470,一起讨论交流

    转载于:https://www.cnblogs.com/liuhaili/p/6184238.html

    展开全文
  • 此资源为unity工程代码,获取手机通话记录,通讯录,app列表。AndroidStudio安卓工程分开下载
  • Unity3D如何导出为APP安装包(安卓apk和苹果版ipa)教程.zip
  • Unity与Android交互实现更新资源,需要了解andriodstudio的使用需要在androidstudio中写配置文件
  • 如何使用新的Unity项目设置App Services 和 for Unity。 将“ AppServices”和“ RESTClient”复制到项目的Assets文件夹中。 创建一个Azure应用服务 为应用程序数据创建一个表(使用简单表)。 Unity 5的Azure应用...
  • 我们经常打开别人分享到微信的文件,如果是文档类文件,会自动弹出相关的文档阅读app供选择打开。 接下来我要为我自己的app自定义文件类型来发起app的启动。 1. 原生的Adnroid开发项目就很简单了,只需要在...

    我们经常打开别人分享到微信的文件,如果是文档类文件,会自动弹出相关的文档阅读app供选择打开。

    接下来我要为我自己的app自定义文件类型来发起app的启动。

    1. 原生的Adnroid开发项目就很简单了,只需要在AndroidMainfest.xml文件里配置相关的权限即可。如下图所示,我要配置的是.ldr和.mpd两种文件格式。

    此时在Activity里通过Uri uri = getIntent().getData();来获取当前打开的文件路径。有了文件路径,读取文件、分享文件都可以随意操作了。

    2. Unity发布的Andrid app也不麻烦,需要将Unity的项目Export出Android工程,添加上面所需要的权限即可。

    导出的工程目录如下

    直接用Android Studio打开工程

    UnityPlayerActivity就是Unity这个工程的入口Activity。

     

    将代码贴上来:

    Uri uri = getIntent().getData();
    System.out.println("#####获取到参数 = "+ uri);
    
    if(uri != null){
        //UnitySendMessage(“string”,“string”, ***),这是方法,我们至少需要传入两个参数,
        // 第一个参数为unity中的一个gameobject名称,
        // 第二个参数为这个gameobject身上捆绑的脚本中的一个方法,
        // 而第三参数事实上是这个对应方法上的参数,有没有参数就看你了。
        Toast.makeText(UnityPlayerActivity.this, "获取到参数= "+ uri, Toast.LENGTH_LONG).show();
        mUnityPlayer.UnitySendMessage("Text", "messgae", uri.toString());
    }

    注意要使用mUnityPlayer。

    Unity中接收数据的代码与之相对应:

    需要注意UnityPlayer.UnitySendMessage("Text", "messgae", uri.toString());传输数据对应的意义,分别是脚本挂的GameObject、方法名、参数。

    简单记录,供有开发经验的同行参考,同时有更好的方案请及时指正。

     

     

    展开全文
  • Unity做东西是快,但是有些功能是需要额外开发的,比如 IAP (In App Purchase,应用程序内购买) 还好unity提供了灵活的扩展功能,允许嵌入原生代码来做一些unity未实现的功能。 这几天折腾IAP,碰到很多问题,...
  • 本课程将使用Unity2019引擎与VS2019编辑器进行开发小型游戏:恶魔射手. 1.项目虽小,但五脏俱全,是新手入门的最佳选择!真正演示了从0到上线的全程。 2.项目也讲解了移动端安卓和ios发布的知识,为每个开发者必备的...
  • In-App Web Browser v2.0.3
  • App Center Unity编辑器扩展 欢迎来到App Center Unity编辑器扩展插件的主页,这是查看和配置App Center Unity SDK的最佳界面。 随着App Center的Unity SDK功能的发展,我们将添加到该平台。 特征: 自动化的SDK...
  • Unity 之 上传Mac App Store过程详解

    千次阅读 2021-08-22 15:19:52
    官方文档写的过于简单,省略了很多准备工作。本文从Unity发布App开始带你一步步操作,直至上传到App Store,还等什么能还不进来看看~
  • 参考博客:...https://www.cnblogs.com/chenxiaoyan/p/unity.html 最近工作需要 将unity的安卓工程嵌入到安卓app内部 因为参考博客都是比较老旧的 很多步骤都是东拼西凑出来的 完...
  • unity与iOS交互进行App Store内购,适用于游戏开发进行打包iOS并发布到App Store中使用app内购不会的unity开发者,使用简单,方便。可以很大提高游戏开发者的效率。
  • AndroidStudio安卓工程,获取手机通话记录,通讯录,app列表。此资源只有安卓端工程代码,unity工程代码分开下载
  • 这两天在搞Oculus quest2 VR应用,系统是10的,需要用到重启,在Android Studio中重启app,缺点是需要开启android:sharedUserId=“android.uid.system”,,必须系统签名(目前网上流传的系统签名platform.pk8、...
  • 今天做Android端版本更新时,...这是因为项目中涉及到Unity 与 Android 的交互,在Android代码中,创建Activity时开启了服务,所以在退出APP时,应该将Android端额Activity关闭。 所以在Android端加入以下代码 p...
  • 日落20180807001 - Unity调用SDK之Android唤起其他App 系统:Windows 10 引擎:Unity 5.6.6f2 Android环境与工程配置:参照《Unity原生插件的应用之Unity与Android的互动》 以下例子用唤起手机QQ为例。 ...
  • 机器人世界 :rocket: 为软件构建和决策课程而创建的视频游戏 使用的语言 :package: Python C # ... CSS JavaScript 作者 :black_nib: 克里斯蒂安·冈萨雷斯(ChristianGonzález) 阿德里亚娜·洛佩斯( )-...
  • unity 如何开发手机App

    万次阅读 2016-09-22 10:58:57
    大家都知道unity在手机游戏方面很出色,但其实它在app方面也表现得同样出色,特别是现在UGUI的出现,使得可以快速的做出精美的界面下面看个APP截图:上图红框标识的部分,android可以用ListView来实现,那么Unity...
  • Unity 打包IOS 上架到AppStore

    千次阅读 2018-10-26 12:58:49
    Unity 导出ios 上架到AppStore 1.1:unity导出xcode工程。 添加所有场景。 1.2配置playersettings Company name , product name 要于 bundle identifier一致,于xcode中的一致。 Version 要于 UI一致,要于...
  • 项目都是采用Resources加载,并且是同步加载的,unity场景资源也较多,没有做好分包设计的怎么办呢? 这篇文章我们讲怎么处理。 难点 场景采用同步/异步加载 SceneManager.LoadScene ("xx",LoadSceneMode....
  • Unity实现跳转Appstore 评价

    千次阅读 2018-04-23 18:15:20
    Unity实现跳转Appstore 评价 这个很简单就是使用Application.OpenURL(url); 但是需要注意的是url的设置 ,网上很多版本都是过期的链接 所以不建议使用 unity 调用写法如下: #if UNITY_IPHONE || UNITY_EDITOR |...
  • Android导出aar插件供Unity使用以及通过android scheme启动unityApp
  • SG Patcher - Update your game easily In-App v1.12.2

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 29,976
精华内容 11,990
关键字:

appunity