Unity头像上传功能实现 一


2018-06-01 后面由于要接入微信登录/支付、支付宝支付这些东西,原来在MainActivity中实现这些逻辑明显不太好了,于是将这个类重新整理了一下,方便后续添加其他接口
GitHub地址: https://github.com/alexchenc/unityplugins


前段时间需要做一个头像上传功能,参考了一些资料后总算是弄了出来。
首先感谢其他博主们的分享:
Unity3D研究院之打开照相机与本地相册进行裁剪显示(三十三)
Unity3d本地上传并且裁剪图片—–Android平台


1. 新建安卓项目

  • 新建一个Android项目,我这里用的是Idea(Eclipse的安卓插件一直弄不好然后放弃了),第一次建要好长时间下载插件,耐心等一下。
Application name: 自己随意命名一个。
Company Domain: 也是自己命名。
Package name: 点击右边Edit,自己修改包名。此处包名需要和Unity项目中打包的包名相同

这里写图片描述

  • 这是Unity项目中的设置。包名与AndroidAPI版本

  • 下一步,选择最低版本API。版本越低兼容越好,这里我选的是4.1,与Unity中保持的一致。

  • 下一步,创建Activity。只需要创建一个空的Activity即可,选择EmptyActivity。
  • 这个Activity就命名为MainActivity吧,勾选“Generate Layout File”,生成Layout文件;
  • 不用勾选下面那个框,点击Finish创建完成。

2. Unity环境集成

  • 首先需要把Unity的jar包拷贝过来,放在libs目录下。jar包在Unity软件目录下找:

    /Applications/Unity/PlaybackEngines/AndroidPlayer/Variations/mono/Release/Classes/classes.jar

  • 如果找不到就用Spotlight搜索 classes.jar,去与Unity有关的路径查找。
  • 将jar包拷贝至libs目录下,右键->Add as Library, 确定,导入jar包。


3. 打开相册和相机,裁剪功能实现

  • 让MainActivity继承自UnityPlayerActivity(从Unity导入的jar包中包含的类)
  • 这个MainActivity将作为App启动的第一个Activity
  • 由于后期可能需要接入多个Api,所以只把这里当做一个Controller,具体逻辑放在各自的类中实现。这里我将相机、相册逻辑放在PhotoService.java中。
  • MainActivity.java代码如下:
package com.cclovers.demo;

import android.content.Intent;
import android.os.Bundle;
import com.unity3d.player.UnityPlayerActivity;

public class MainActivity extends UnityPlayerActivity {
   

    public static final String UNITY_GAMEOBJECT = "AndroidManager";

    public static MainActivity Instance;

    @Override
    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        //直接打包apk时需要设置下面这一行
//        setContentView(R.layout.activity_main);
        Instance = this;
    }

    /**
     * 调用相机
     */
    public void openCamera() {
        PhotoService.GetInstance().openCamera();
    }

    /**
     * 调用相册
     */
    public void openAlbum() {
        PhotoService.GetInstance().openAlbum();
    }

    /**
     * 调用支付宝API
     */
    public void openAlipay(String orderStr) {
    }

    /**
     * 调用微信API
     */
    public void openWechat() {

    }

    /**
     * 微信登录接口
     */
    public void openWechatLogin() {
    }

    /**
     * 回调
     * @param
  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值