Google Maps iOS SDK – Error

Google Maps iOS SDK

https://developers.google.com/maps/documentation/ios-sdk/start

Followed the setup instructions using Cocoa Pods.

GoogleMaps (2.1.1)
GooglePlaces (2.1.1)

Built the Project and got the following error:

Module ‘GoogleMapsBase’ not found

 

Added the following in:

Target -> Build Setting -> Search Path-> Framework Search Paths

Add the following (+)

Framework Search Paths

 "${PODS_ROOT}/GoogleMaps/Base/Frameworks"
 "${PODS_ROOT}/GoogleMaps/Maps/Frameworks"

Build and Run.


Helpful Links

 

Camera Access

Info.plist

Add a new item

Privacy – Camera Usage Description

Value: “Used to scan barcodes”

Or as XML

<key>NSCameraUsageDescription</key>
<string>Used to scan barcodes</string>

 

http://useyourloaf.com/blog/privacy-settings-in-ios-10/

 

Goals for 2017

  • 599CD (iOS)

Release it!

  • 599CD (Android)

Write an Android version of the iOS I’m hoping to release.

  • Wallet Jam Jar Cinema Passes

I’d like to write a Swift Server Side app to create Jam Jar Cinema passes (like CineWorld)

  • .NET apps (school tracking)

Goals for 2016 – Review

I created a post to motivate me to get things done.

https://alexhedley.wordpress.com/2016/01/01/goals-for-2016/

  • 599CD (iPad)

I’ve nearly completed this, it’s currently in the final rounds of testing and I’m happy with how it’s come out.

http://599cd.com/apple/iOS/

  • 599CD (Apple TV)

Updated to the new TVML xml files instead of JS, its semi-working, I’m thinking of making it a native app instead.

  • 599CD (Android)

Hoping to start it this year, I’ve got the Dev tools ready on my mac.

  • Sign Language (Apple TV)
  • Carcassonne Score Keeper (iOS/Mac)
  • Bowling Score Keeper (iOS)
  • Wanted to add an Apple Watch

These aren’t as much a priority anymore.

  • Movem App

I worked on this a lot and managed to get a majority of it working. All the levels are created and the app works, just needs some polish. I tried porting it to the AppleTV but the controls don’t quite work.

Now I need to upgrade it to Swift 3, fun times ahead.

I’ve been using my time to learn other things. A lot more C# Dev.

I’ve been enjoying Server Side Swift with a set of videos from Ray Wenderlich.

I’ve been running through the Swift Apprentice book with the Playgrounds app.

Delegates and Navigation Controllers

Using Delegates with Navigation Controllers

Get the nav controller first.

TVML tvOS 10

So there’s an updated TVML Catalog sample code project out.

Instead of having js files that make an XML file, it’s just a straight XML file now. Makes much more sense to me to have it this way.

TVML Catalog: Using TVML Templates
Another thing they’ve changed is they suggest using Ruby instead of Python.
ruby -run -ehttpd . -p9001

I think this might  be to get around the fact videos locally didn’t work with Python, I still need to test this.

In most of my previous files I was using template=”.xml.js” whereas now they use documentURL=”.xml” so one to check on.

I’ve also amended a couple of files to get video playback working, the documentcontroller.js was the place to add it.

A useful dub dub video to watch is the following.

WWDC 212 – Developing tvOS Apps Using TVMLKit: Part 1
The video/slides do cover a basic example:
// Setting up a TVMLKit JS Video Player
var video = new MediaItem(‘video’, ‘https://example.com/video.m3u8‘);
video.title = ‘My Great Movie’;
video.description = ‘An extensive description…’;
video.resumeTime = 10.0; // seconds
 
var playlist = new Playlist();
playlist.push(video);
 
var player = new Player();
player.playlist = playlist;
player.play(); // Present the player

 

The AudioVideo sample code hasn’t been updated yet and there isn’t an example of video playback in the above Catalog sample, the WWDC video was handy though. I like the embedded player in a lockup.

TVMLAudioVideo: Audio and Video Playback on tvOS
Check out the new MediaContent docs:

MediaContent

https://developer.apple.com/library/prerelease/content/documentation/LanguagesUtilities/Conceptual/ATV_Template_Guide/CompoundMultimediaElements.html#//apple_ref/doc/uid/TP40015064-CH46-SW2

Using iTMSTransporter to upload Game Centre Achievements

I’m currently creating a game Movem, and I wanted to add some Game Center achievements. I’d done this before in another app I’m making for Kernowland Quizzes (still in development). There are only a couple of achievements there so wasn’t much hassle to create them manually but here I want 1 for each of the 50 levels. This would be a big pain to do.

So I turned to twitter and asked @KrauseFx as I thought he might know.

Researching a little I found the app should be in either Xcode or App Transporter. Some SO answers said it was under the MacOS folder but I found it to be now just under itms in the Contents folder.

/Applications/Xcode.app/Contents/Applications/Application Loader.app/Contents/MacOS/itms/ bin
=>
/Applications/Xcode.app/Contents/Applications/Application Loader.app/Contents/itms/bin

Now to find some information about the app itself, lets look to iTunesConnect Resources and Help under Apps.

Open the terminal and navigate to the above folder:

./iTMSTransporter -m diagnostic

Next we want to download the information we have on an app so we can use the lookupMetadata flag.

./iTMSTransporter -m lookupMetadata -u # -p # -apple_id # -subitemtype GameCenterAchievement -destination "#"

Replace the #s with your actual inputs.

This will download a file “AppleID.itmsp”, if you double click this it will open in Application Loader, you don’t want this, instead Right+Click and Show Package Contents:

Show Package Contents.png

There’s a file called “metadata.xml”, open this in your editor of choice, Xcode works fine since it’s just XML.

I’m interested in the Game Center info so scroll down:

<game_center>
    <achievements>
        ...
    </achievements>
</game_center>

Within here are a couple of achievements I’ve already created, from research errors can occur if you remove these and re-upload so either leave them in and only make additions to the file or remove them from iTunesConnect and run lookupMetadata again.

I needed at least one already created so I had a template to work with.

I created a playground as this would be the quickest way to create what I needed

for i in 1...50 {
    print(blah \(i))
 }

Now I just needed to replace the number with \(i) in all the places necessary and show the console.

Copy and paste that back into the “metadata.xml” and I’m ready to upload.

First thing to do is verify the file.

./iTMSTransporter -m verify -f "#/[AppleId].itmsp" -u # -p #

Now I can upload.

./iTMSTransporter -m upload -f "#/[AppleId].itmsp" -u # -p #

There was one thing that was missing, the image file:

ERROR: The file Game_20Center_20Level.png is from the list of files requested by Apple, but it was not found locally.

To fix this I just renamed the file I’d uploaded in iTunesConnect to match the above and added it to the PackageContents folder and all was good.

I’d originally tried the “lookupMetadata” without the -subitemtype flag but got an error when trying to upload,

ERROR ITMS-10001: "Multiple items in this package use the same vendor ID. Use unique vendor IDs for the items [leaderboard, achievement] and resubmit the package." at Software/SoftwareMetadata
...
<main> DBG-X: The error code is: 1102

 


Learn more about Game Center in Chapters 25 and 26 of 2D iOS & tvOS Games by Tutorials from Ray Wenderlich.

Links
https://twitter.com/AlexHedley/status/718513616132161536
https://twitter.com/KrauseFx/status/718526581950427136

http://itunespartner.apple.com/en/apps/guides
https://help.apple.com/itc/transporteruserguide/

http://stackoverflow.com/questions/11205998/ios-game-center-achievement-upload
http://bou.io/UploadingScreenshotsWithITMSTransporter.html
http://www.cyrilchandelier.com/having-fun-with-itmstransporter

What’s New in iTunes Connect

WWDC 2013 – Session 306 – iOS, OS X

http://web.archive.org/web/20150216153821/http://realmacsoftware.com/blog/mastering-itunes-connect-transporter