Unity 之 使用Mac原生好评
【摘要】
本文通过Mac端原生好评示例,教你学会Unity和macOS交互。
前言
本文通过Mac端原生好评示例,教你学会Unity和macOS交互。
一,xCode端处理
1.1 创建Bundle
打开xCode选项卡选择macOs --> Bundle 然后点击Next下一步
填写名称,包名等信息,然后点击Next下一步
1.2 写OC代码
在工程上右键 --> New File… 分别创建.h和.m文件:
分别命名为ReviewUnity.h
和ReviewUnity.m
创建完成:
脚本内容如下:
ReviewUnity.h
//
// ReviewUnity.h
// Unity-iPhone
//
// Created by Czhenya on 2021/11/22.
//
#import <Foundation/Foundation.h>
NS_ASSUME_NONNULL_BEGIN
@interface RequestReviewUnity : NSObject
@end
NS_ASSUME_NONNULL_END
ReviewUnity.m
//
// ReviewUnity.m
// Unity-iPhone
//
// Created by Czhenya on 2021/11/22.
//
#import "ReviewUnity.h"
#import <StoreKit/StoreKit.h>
@implementation RequestReviewUnity
@end
#if defined (__cplusplus)
extern "C"
{
#endif
void ShowReview(){
[SKStoreReviewController requestReview];
}
#if defined (__cplusplus)
}
#endif
1.3 生成.bundle库
运行xCode,完成后就生成了.bundle库,将其直接导入到Unity中即可。
进到文件加中查看:
二,Unity端处理
2.1 .bundle库导入Unity
将上面生成的.bundle,直接导入到Unity的Plugins文件加下:
2.2 写调用代码
引用命名空间using System.Runtime.InteropServices;
使用DllImport导入上面导入的.bundle,语法:[DllImport("bundle名")]
注意:这种分平台的东西,使用宏定义区分好,避免实际使用中分平台时来了不必要的麻烦。
C#调用代码:
using System.Runtime.InteropServices;
using UnityEngine;
public class PrimordialEvaluateSDK : MonoBehaviour
{
void Start()
{
PrimordialEvaluateByMac();
}
#if UNITY_STANDALONE_OSX
[DllImport("ReviewUnity")]
private static extern void ShowReview();
#endif
public void PrimordialEvaluateByMac()
{
#if UNITY_STANDALONE_OSX
ShowReview();
#endif
}
}
三,效果展示
Unity工程中效果:
打Mac包后效果:
3.1 源码分享
上面示例Demo分享:下载地址
积分不足的同学,可以V信关注:开发同学留步,回复“Mac好评” 自助获取
四,相关文档
Unity 官方文档:macOS 播放器:适用于 IL2CPP 的 C++ 源代码插件
Unity 官方文档:为桌面平台(Windows,Mac,Linux)构建插件
【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)