Privacy Policy

Privacy Policy

This privacy policy has been compiled to better serve those who are concerned with how their ‘Personally Identifiable Information’ (PII) is being used online. PII, as described in US privacy law and information security, is information that can be used on its own or with other information to identify, contact, or locate a single person, or to identify an individual in context.

Please read our privacy policy carefully to get a clear understanding of how we collect, use, protect or otherwise handle your Personally Identifiable Information in accordance with our website.

What personal information do we collect from the people that visit our blog, website or app?

  • We do not collect information, or other details to help you with your experience, from visitors of our site.

When do we collect information?

  • We collect information from you when you or enter information on our site.

How do we use your information?

  • We only provide articles and information. We never ask for personal or private information like names, email addresses, or credit card numbers.
  • We may use the information we collect from you when you register, make a purchase, sign up for our newsletter, respond to a survey or marketing communication, surf the website, or use certain other site features in the following ways:

How do we protect your information?

  • We do not use vulnerability scanning and/or scanning to PCI standards.
  • We use regular Malware Scanning.
  • We do not use an SSL certificate

Do we use ‘cookies’?

  • We do not use cookies for tracking purposes. You can choose to have your computer warn you each time a cookie is being sent, or you can choose to turn off all cookies. You do this through your browser settings. Since browser is a little different, look at your browser’s Help Menu to learn the correct way to modify your cookies.
  • If you turn cookies off, some features will be disabled that make your site experience more efficient and may not function properly.

Third-party disclosure

  • We do not sell, trade, or otherwise transfer to outside parties your Personally Identifiable Information.

Third-party links

  • We do not include or offer third-party products or services on our website.

Google

  • Google’s advertising requirements can be summed up by Google’s Advertising Principles. They are put in place to provide a positive experience for users. https://support.google.com/adwordspolicy/answer/1316548?hl=en
  • We have not enabled Google AdSense on our site but we may do so in the future.

California Online Privacy Protection Act

CalOPPA is the first state law in the nation to require commercial websites and online services to post a privacy policy. The law’s reach stretches well beyond California to require any person or company in the United States (and conceivably the world) that operates websites collecting Personally Identifiable Information from California consumers to post a conspicuous privacy policy on its website stating exactly the information being collected and those individuals or companies with whom it is being shared.

  • See more at http://consumercal.org/california-online-privacy-protection-act-caloppa/#sthash.0FdRbT51.dpuf

According to CalOPPA, we agree to the following:

  • Users can visit our site anonymously.
  • Once this privacy policy is created, we will add a link to it on our homepage or as a minimum, on the first significant page after entering our website.
  • Our Privacy Policy link includes the word ‘Privacy’ and can easily be found on the page specified above.
  • You will be notified of any Privacy Policy changes:

You can change your personal information:

  • By emailing us at support@pastille.se

How does our site handle Do Not Track signals?

  • We honor Do Not Track signals and Do Not Track, plant cookies, or use advertising when a Do Not Track (DNT) browser mechanism is in place.

Does our site allow third-party behavioral tracking?

  • No

COPPA (Children Online Privacy Protection Act)

When it comes to the collection of personal information from children under the age of 13 years old, the Children’s Online Privacy Protection Act (COPPA) puts parents in control. The Federal Trade Commission, United States’ consumer protection agency, enforces the COPPA Rule, which spells out what operators of websites and online services must do to protect children’s privacy and safety online.

We do not collect information from children under 13

In order to remove your child’s information please contact the following personnel: support@pastille.se

We adhere to the following COPPA tenants:

  • Parents can review, delete, manage or refuse with whom their child’s information is shared through contacting us directly.

Fair Information Practices

The Fair Information Practices Principles form the backbone of privacy law in the United States and the concepts they include have played a significant role in the development of data protection laws around the globe. Understanding the Fair Information Practice Principles and how they should be implemented is critical to comply with the various privacy laws that protect personal information.

In order to be in line with Fair Information Practices we will take the following responsive action, should a data breach occur:

  • We will notify you via email within 1 business day

We also agree to the Individual Redress Principle which requires that individuals have the right to legally pursue enforceable rights against data collectors and processors who fail to adhere to the law. This principle requires not only that individuals have enforceable rights against data users, but also that individuals have recourse to courts or government agencies to investigate and/or prosecute non-compliance by data processors.

CAN SPAM Act

The CAN-SPAM Act is a law that sets the rules for commercial email, establishes requirements for commercial messages, gives recipients the right to have emails stopped from being sent to them, and spells out tough penalties for violations.

We collect your email address in order to send you news and information.

To be in accordance with CANSPAM, we agree to the following:

  • If at any time you would like to unsubscribe from receiving future emails, you can email us at support@pastille.se

and we will promptly remove you from ALL correspondence.

Contacting Us

If there are any questions regarding this privacy policy, you may contact us using the information below.

Pastille.se

Klostergatan 9

Lund, Skåne 22222

Sweden

support@pastille.se

Last Edited on 2017-01-09

How to make Unity games that run on Android Wear.

banner_not_in_game

Roundpingis for Android : Roundpingis for ios : Rundpingis on wear

 

 

With our game RoundPingis  released on phone and television we wanted to put the the game on the wear platform.  Since Unity does not support Android Wear out of the box, there where a few things we learned that we want to share. If words and pictures are too much for you, we’ve added a tl;dr and an example project at the bottom of this article.

playonphone

Unity Settings
The game on other devices are in landscape, android wear devices are square, or better still, round. This is just one of the differences that made us make a copy of the game to start from. First off, resolution was changed from 16:9 to 1:1. 400×400 pixels seemed like a good size to start with. Then all graphics that needed cutting got cut. Use imagemagick’s convert terminal tool like this:

mogrify . -gravity center -extent 400×400 *.jpg

Then we just needed to align the UI components.
Furthermore one of the fun things was to remove stuff like Facebook integration, Sharing framework, rate my app and the link to our homepage (http://www.pastille.se), all gone. No need to keep those features in, and besides, everything that takes deployment time down is awesome. Deploying to your wear device is straightforward, two ways we found. The first way is to connect your android device to your computer so that you have and adb connection up. Then in the wear app start bluetooth debugging and do the same thing in your wear device. then you can start a port forward from your mobile to your wear with

adb forward tcp:4445 localabstract:/adb-hub
adb connect 127.0.0.1:4445

Then lucky you, all data is transferred to your phone over usb cable and then to your wear from your phone over bluetooth. This is tedious and time consuming, you should not do this unless you are in a pinch. You should instead use the charging cable from your wear and hook it up to your computer directly. Much faster.

15042104_1731495650506031_7857670469136780635_o
Trying to use minify in the gradle files gives you this consistent result.

Getting to work on the wear platform.
So now that was not impossibly difficult, and we now had the game on the wear.

  • Orientation
    It’s was now running on hardware, but the little wonky, because it tried to change orientation all the time. Even with everything totally still. This was solved with a script that set the orientation to portrait. While researching this we found out that this was solved before, and to a greater extent. Someone had the a problem with the Motorola 360, and it that particular device was 90 degrees rotated compared to the “correct” way. So I added that into the script as well.
  • Optimisation
    Nice, but a little laggy. Time to kill darlings, because you have to. By enabling and disabling different features we managed to get the frame rate up from sluggish 12 to ok-ish 44 on the Huawei wear. Fastest on render setting did a little. Particles was also expensive so they had to go. And to our surprise, removing the music and just keeping one sound effect from the ball made a huge jump. Something like 10fps. Now this is a 2d game, that is kept intentionally clean. 3D games might require other tricks.
  • Publishing on the app store
    To get your app into the google play store you need to upload it with an accompany app that runs on the mobile device. this is because there is no way to uninstall apps on a wear. This is not supported by Unity so we exported the game from Unity to an Android Studio project. Then created a new android studio project for a wear and then we did like dr Frankenstein and added the pieces together in an unholy way. Take a look at the example project we added for you. Specifically the gradle files and the manifest files. Pro-tip, don’t use minify it makes Unity crash.

 

boxedlayout
Boxed layout, our take on it. You get approved faster if you have all your ui elements inside the square

 

  • Layouting
    Wear uses something called a boxed layout. Think of it as a circle with a box inside it. Everything should be inside the box. This is because the devices with chin, aka flat tire, aka why would they do this? I don’t know, probably something technical and monetary. What I do know is that if you use this: graphics as a background in your project and then and put all your UI elements inside it the square, you are more then safe.
  • Longpress to exit.
    Now that the game is ready, just upload and release right? Nope, since we took over the whole screen and disabled the swipe to go back. Well Unity does that for us, for plain vanilla Android (without added Unity) you can just add a view that does all that. In Unity it was a bit more work. But we solved it all by subclassing the unityplayer and add the view from Java. Have a look in the file called UnityPlayerActivity.java and you will se the GestureDetector instantiation and creation. This I would not have found if the kind people at google that does the testing on device (there is, and it is awesome) hadn’t spotted this, my test device has a button that can go back.
  • Orientation pt2
    Speaking of the nice people at wear testing at Google, they also spotted that the orientation was off on the Motorola, and then later at other devices. This was very, very annoying (to me), since the old solution of getting the device name did not work. Neither did asking Unity if the screen was round, and if so, did it have se same width and height. Something that you can get from java. Luckily for us there existed a project https://github.com/tajchert/ShapeWear that we could put into our already subclassed Unity player. We added checks to what kind of display it was (round but width != height) and then it’s the chinned variant of devices, setting the orientation to landscape while otherwise setting it to portrait. All functionality setting the orientation from Unity was removed, and I wasted your time by rambling on about it. But not as much time as I wasted for the poor testers at google that really worked as my compilers. (Since I did not have a Motorola 360 or any of the Fossil devices)

 

gnome2
MetroGnome, the example project. She is a metronome that lives on your wrist.

 

A few notes about the example project.
No Unity binaries is distributed, but we added helpful text-files on where to put them.
The gnome is not public domain, it’s Pastilles property, Shapewear has it’s own license.

MetroGnome_unitypackage.zip
Metrognome android studio.zip

 

 

tl;dr
A lot of obstacles was tackled and now we have released Roundpingis for wear, and to help you release your Unity projects take this .zip file with a template project.

 

If you enjoyed this article, you can always support us buy buying some of our games.

 

 

Johan Larsby

The authors name is Johan Larsby, stalk me on LinkedIn

 

About Pastille
Pastille, is a Swedish game studio. We create fun, casual and non-violent games for the whole family and believe that playing is one of the most important cornerstones in life.  You can find us on Facebook.