我正在尝试创建一个应用程序,在某一点上,根据移动平台使用本机操作系统功能。例如,当用户使用iOS时,他们点击“电子邮件”按钮,然后会弹出UIAlertView。等等,适用于Android,Blackberry,Windows8 / 8Phone。
我希望能够在MonoDevelop中编写所有代码(不需要从XCode或Eclipse项目访问代码)。到目前为止,我已经为iOS添加了正确的代码,并为其他平台奠定了框架。希望编译器有一种方法可以知道这段代码不是C#,并且会在所指示的平台上本地运行...所以有人知道是否有办法基本上这样做了吗?:
#if UNITY_IPHONE
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Email Us"
message:@"Would you like to send us an email?"
delegate:self
cancelButtonTitle:@"OK"
otherButtonTitles:nil];
[alert show];
#endif
#if UNITY_ANDROID
#endif
#if UNITY_BLACKBERRY
#endif
#if UNITY_WINRT // windows 8, or windows 8 phone
#endif
答案 0 :(得分:0)
看起来你可以在MonoDevelop中开发它。因此,对于iOS,您可以在Assets / Plugins / iOS文件夹中放入一些源文件,它们将作为插件包含在内(参见http://docs.unity3d.com/Manual/PluginsForIOS.html)。
不幸的是,对于Android,您的Java文件需要编译到jar文件中(参见http://docs.unity3d.com/Manual/PluginsForAndroid.html)。因此,您无法在MonoDevelop中完成所有工作。
虽然如果你真的想要开玩笑,你可以将你的java文件放在你的插件文件夹中,当你在MonoDevelop中完成编辑时,你可以执行编译文件的自定义脚本(也许是一个ant脚本)那个目录。