Android

Change android application icon

These are the instructions for changing icon in your Android application in Eclipse.

First if you need to create new icon with Icon creation wizard:
Select your project
Ctrl+n
Android -> Android Icon Set

Icon Wizard

Icon Wizard

Remember to name it uniquely. If you have already an icon, then you can always use it by browsing an image from your directories and selecting Shape: none.

Then change icon name to new one in AndroidmMnifest.xml (open it in textmode):

<application
        android:name="ApplicationClass"
        android:icon="@drawable/HEREYOURICONNAME"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >

Time Bomb Defuse out now!

Google has accepted our game to Google Play. The first version is still buggy and I would suggest that you change the options first before running the actual game. New version that fixes most of the bugs has been sent to Google Play and will be out soon.
Download HERE:

button-get-it-on-google-play

Cordova media API

Viikon tehtävänä oli testata kaikki apikirjastot mitä tulevassa projektissa tulisi tarvitsemaan. Olin jo edellisellä kerralla tehnyt suurimman osan apikokeiluista ja ne on nähtävissä pomminpurkupelissä, joten en niitä halunnut laittaa nettiin turhaa toista kertaa.

Media api oli kuitenkin uusi. Kokeilin ensin hello world tyyppisesti oman äänen soittoa ja muokkasin siitä lopulta intervallin, joka soittaa piippauksen sekunnin välein (tarkoitus tehdä pommin piippaus). Piippausääni löytyi osoitteesta Freesound.org ja on Empty Bell nimisen käyttäjän tekemä Creative commonsilla lisensoitu ääniefekti.

Ladattuani äänitiedoston kopioin sen omaan projektiin kansioon music.

<!DOCTYPE HTML>
    <html>
      <head>
        <title>Media Example</title>

        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
        <script type="text/javascript" charset="utf-8">

        // Audio player
        //
        var my_media = null;
        var beepInterval;
	var beepPace = 1000;
		
        // Play audio
        //
        function playAudio() {
            my_media = new Media("/android_asset/www/music/beep.wav", onSuccess, onError);

	    beepInterval = setInterval(function() {
                my_media.play();
	    }, beepPace);
      	}
        

        // Pause audio
        // 
        function stopAudio() {
            if (my_media) {
                clearInterval(beepInterval);
            }
        }


        // onSuccess Callback
        //
        function onSuccess() {
            console.log("success");
        }

        // onError Callback 
        //
        function onError(error) {
            alert('code: '    + error.code    + '\n' + 
                  'message: ' + error.message + '\n');
        }

        </script>
      </head>
      <body>
        <a href="#" class="btn large" onclick="playAudio();">Play Audio</a>
        <a href="#" class="btn large" onclick="stopAudio();">Stop Audio</a>
        <p id="audio_position"></p>
      </body>
    </html>

Lähteet:

http://cordova.apache.org/docs/en/2.5.0/cordova_media_media.md.html

Tätä dokumenttia saa kopioida ja muokata GNU General Public License (versio 2 tai uudempi) mukaisesti. http://www.gnu.org/licenses/gpl.html
Pohjana Tero Karvisen kurssi Mobiilituotekehitys, http://terokarvinen.com/2013/aikataulu-%E2%80%93-mobiilituotekehitys-bus4tn008-3-syksylla-2013

Android pomminpurku -peli

What It IS??

Peli on moninpelattava peli, missä tablettia / puhelinta on kierrätetään ringissä. Tehtävänä on saada pommin ajastin pysähtymään. Peli mittaa kiihtyvyysantureilla liikettä ja jos laite heiluu liikaa, pommi räjähtää. Myöskin pommin ajastin pitää huolta, että tablettia yritetään liikuttaa mahdollisimman nopeasti pelaajalta pelaajalle. Mikäli laite käy 15 kertaa toisella pelaajalla, voittavat pelaajat pelin.
bombb

Tarkemmat säännöt

Ensimmäinen pelaaja käynnistää pelin ja liikuttaa laitteen seuraavalle pelaajalle. Pelaaja joka vastaanottaa laitteen saa painaa kerran (1) pommia, joka lisää ajastimeen aikaa, sen jälkeen hän liikuttaa laitteen taas seuraavalle.

Jatkokehitys

Tämänhetkinen pommin räjähdys on melko antikliimaksinen. Sitä pitäisi parantaa esimerkiksi äänellä. Pommi täytyisi olla isompi, jotta aika näkyisi paremmin. Valikkorakenne ja parhaat tulokset.

Lataa täältä:
Sources

Lähteet:
https://cordova.apache.org/docs/en/3.0.0/cordova_notification_notification.md.html
http://cordova.apache.org/docs/en/2.5.0/cordova_accelerometer_accelerometer.md.html

Tätä dokumenttia saa kopioida ja muokata GNU General Public License (versio 2 tai uudempi) mukaisesti. http://www.gnu.org/licenses/gpl.html
Pohjana Tero Karvisen kurssi Mobiilituotekehitys, http://terokarvinen.com/2013/aikataulu-%E2%80%93-mobiilituotekehitys-bus4tn008-3-syksylla-2013

MID Android-laite toimimaan

Taistelin jonkin aikaa, että saisin kiinalaisen MID laitteen toimimaan linuxissani. Käytin Xubuntu-13.04 käyttöjärjestelmää. Tehtävä vaatii android sdk:n asennettuna tietokoneelle.
Katso tarkemmat ohjeet täältä.

Liittäminen

1. Laitteessa pitää olla aktivoituna usb debugging. Asetukset -> Usb debugging.
2. Liitä android tietokoneeseesi.

Usb Vendor ID

Jotta linux tunnistaa laitteesi on sinun saatava tietää sen usb id.

3. Avaa terminaali ja komento $lsusb
Terminaali-ikkuna näyttää kutakuinkin tältä:

$lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 002: ID 18d1:0003 Google Inc.

Löydä laitteesi, minulla kiinanihme näytti olevan Google Incin.
Kopioi ID:n alkuosa (ennen kaksoispistettä).

4. Mene kansioon /etc/udev/rules.d
Luo sinne superuserina tiedosto 51-android.rules ja kirjoita sinne:

SUBSYSTEM==”usb”, ATTR{idVendor}==”18d1″, MODE=”0666″, GROUP=”plugdev”

Id vendorin kohdalle kirjoitat oman laitteesi id:n. Pitäisi löytyä komennolla lsusb (kohta 1).

Tee komento:
$chmod a+r /etc/udev/rules.d/51-android.rules

Ota laite irti tietokoneesta ja laita se uudelleen kiinni.

5. Tämän jälkeen pitäisi laite olla tunnistettu.
$cd android-sdk/platform-tools
$./adb devices

Jos laite ei näy adb devices komennon jälkeen kannattaa yrittää vielä sama rumba uudelleen. Minun täytyi jostain syystä kokeilla muutamaan otteeseen kaikki uudelleen.

Tämän jälkeen voit vaikka käynnistää eclipsestä ohjelmasi omalle laitteellesi.

Lähteet
http://www.hipatic.com/2012/08/chinese-android-debugging-how-to-use.html
http://developer.android.com/tools/device.html