Building & Xcode

Yesterday I finished a MVP version of the vowel teams (3 levels, 2 difficulties each, one menu screen) with no errors or warnings in Unity.

Today my goal is to start the process of getting it on the app store. This is going to be pretty painstaking so I’m going to keep careful logs of it and be patient with myself.

This is a new computer, so first I think I have to just get Xcode set up, remember my logins as an apple developer, etc.

Ooh I’m going to add these into my Debug logs.

https://docs.unity3d.com/ScriptReference/Debug-isDebugBuild.html

Did that!

At some point, I might want to go clean up the comments in my scripts – they’re little notes to myself and aren’t always well done. #todo

I made a new cover for it (basic orange square with the words “Vowel Teams” centered on it), cover.png.

Now I’m going to figure out how to automatically sign my app.

https://docs.unity3d.com/ScriptReference/PlayerSettings.iOS-appleDeveloperTeamID.html

Cool, my team ID is under my membership account info.

https://developer.apple.com/account/#/membership

So, I already have an itunes connect thing.

https://developer.apple.com/library/content/documentation/LanguagesUtilities/Conceptual/iTunesConnect_Guide/Chapters/CreatingiTunesConnectRecord.html#//apple_ref/doc/uid/TP40011225-CH13-SW1

Logging into that.

https://developer.apple.com/library/content/documentation/LanguagesUtilities/Conceptual/iTunesConnect_Guide/Chapters/SubmittingTheApp.html

Do I want to try this as a test build first? Think about this.

Test information draft: This app is a tool to help any early reader practice building words out of sounds and letters. It has been used in community-centered reading programs and has helped early readers improve their skills. It is often used in combination with a reading tutor to help check the answers. First, the user clicks on which level they want to practice. Then, they click on the white answer blocks to hear the words to build. To build the words, the user touches each of the colorful letter blocks, listens to the sounds, and compares them to the sounds in the white blocks. The user moves the letter blocks to the matching color slots next to the white answer blocks. Finally, if available, a tutor or friend helps the user listen to the sounds and check if the answers are correct.

 

https://unity3d.com/learn/tutorials/topics/interface-essentials/build-and-player-settings

 

I’m getting 3 warnings when I build my unity:

  1. Game scripts or other custom code contains OnMouse_ event handlers. Presence of such handlers might impact performance on handheld devices.
    UnityEditor.HostView:OnGUI()
  2. Microphone class is used but Microphone Usage Description is empty. App will not work on iOS 10+.
    UnityEditor.HostView:OnGUI()
  3. Splash screen images not provided: iPad Portrait, iPad Landscape, iPad Portrait/Retina, iPad Landscape/Retina
    UnityEditor.HostView:OnGUI()

Huh. Looks like this is a known bug, and can prevent the app store from accepting submission.

https://issuetracker.unity3d.com/issues/ios-webcamtexture-and-microphone-classes-are-used-in-empty-unity-projects

Hmph. I tried to get rid of #2 bc internet mentioned something about cameras, so I got rid of all of the “audio listener” components on all of my main cameras in each scene. To no avail, did another build and that error is still showing up.

I wonder if I should add those back in or not … 😉

https://forum.unity3d.com/threads/ios-10-0-and-xcode-8-compatibility.430103/

Okay this is what AudioListener is. I don’t think I need it, but let’s keep an eye on it. LOL nm “There are no audio listeners in the scene. Please ensure there is always one audio listener in the scene” adding them back in now.

https://docs.unity3d.com/Manual/class-AudioListener.html

Huh. The error message about microphones just went away on its own. Now I’m just left with OnMouse_event handlers and Splash screen images. (I thought I didn’t need splash screen images bc I’m not using Unity pro?)

Ah. So I just checked, and when I deleted the comment that “No microphones are used in the app”,  the microphone error came back. How interesting.

Alright I think I fixed the microphone issue. Using this. It’s in AV. I also turned off the camera thing. I might double up and also do the “No camera/location/microphone” is used in the Player Settings in Unity.

https://forum.unity3d.com/threads/ios-10-0-and-xcode-8-compatibility.430103/

Okay, so I fixed #3 (the splash screen error) by uploading images for ipad screens. Despite the fact that using unity personal doesn’t come with splash screens. Let’s see if that keeps it okay.

Now onto #1, because I think I’ve solved #2. #1 is the stuff about OnMouse even handlers.

There seem to be mixed ideas on whether or not this was actually a problem 3 years ago (http://answers.unity3d.com/questions/124198/onmousedown-alternative-for-mobile.html).

Let’s see if I can find something more recent.

Here’s an unpleasant way to do that someone posted recently (http://answers.unity3d.com/questions/1366245/what-shall-i-use-instead-of-onmouse-event-handlers.html), but links to 3 years ago again: it: http://wiki.unity3d.com/index.php/OnTouch

This one looks cleaner.

https://stackoverflow.com/questions/44583542/what-shall-i-use-instead-of-onmousexxx-event-handlers

Is there something I can do with an if statement so that it does MouseDown if it’s on the computer, by raycast if it’s mobile? Or am I just making this for IOS so it doesn’t matter.

Implementing Touch Controls in Unity 3D

sigh: http://answers.unity3d.com/questions/908834/onpointerdown-vs-onmousedown.html

“So the answer to that is that you use OnPointerDown on UI objects, while using OnMouseDown for in scene objects.”

 

This is what I’ve been using : “http://answers.unity3d.com/questions/566327/drag-object-relative-to-camera.html”

Going to give this a shot on my ipad – I haven’t tried this new version on an ipad yet (bc I didn’t have the dongle thing, eek!), but I’ll get this going on multiple sides if I do that too.

Cleaned in Xcode: I have no idea what this means but it looks like it reduced my warning signs by dozens upon dozens. I guess it can just automatically handle a lot of the stuff?

Red library: One of my libraries is showing up as red in the left sidebar in Xcode, which apparently is non-ideal. [https://sourceforge.net/p/zbar/discussion/1072195/thread/5f8be82d/#3388] says it might be because interlinked libraries depend on each other but may be in the wrong order.

So, I wound up clicking on the file where it came from (to the right), and the only thing it had available was a .tbd file by the same name, so I linked it to that one instead. After I quit and reloaded, the red was gone.

LaunchScreen weirdness

This is acting weird – do I even need it?  What happens if I delete it and its corresponding .png?

LaunchScreen-iPad.xib

https://www.google.com/search?q=purpose+of+LaunchScreen-iPad.xib&rlz=1C5CHFA_enUS757US757&oq=purpose+of+LaunchScreen-iPad.xib&aqs=chrome..69i57j0l5.2265j0j7&sourceid=chrome&ie=UTF-8

Removed references to them, and … it seems okay? It got Buildtime errors down to 0, but I haven’t actually built it on the ipad (annoyingly, waiting for the update on that one now, so …)

Updating iPad ios to 10.3.3  – seeing if this helps me make the right type of build. The problem is, a lot of iPads that community centers have won’t be able to work with this high an ios, so I need to go somewhere where I have access to older ios systems, too. Or simulate them? Unsure which one makes more sense. #todo

8/18:

I’m getting the following error when I open up Unity. As far as I know it’s new. The link below believes it’s a benign error due to updates. Putting it here to keep an eye on.

Error loading launcher://unity//Users/britts/Library/Unity/Packages/node_modules/unity-editor-home/dist/index.html?code=CYEA0W_h9FpWtn1Av8PPJg003f&locale=en&session_state=8600923c3b9541c337c4e10a78c884dc809a25d49afa747c48c2d3686eb466fa.ergTREDfc8PXm5X1NmCXLg002f#/login

https://forum.unity3d.com/threads/error-loading-launcher.486127/

Another odd error I’m getting:

Metal: Editor support disabled, skipping device initialization

Well that one seems to literally be about rendering metallic shading.

https://forum.unity3d.com/threads/mac-editor-metal.446365/

Alright, I’ve got 348 buildtime errors. Let’s see if I can get that to 300 today.

My .xctest is red, and doens’t appear to exist.

What is a storyboard? Main.storyboard?

Leave a Reply

Your email address will not be published. Required fields are marked *