Archive

Tag Archives: comment

Hi there, its been a long time that InstaMusic haven’t been updated. Sorry for that because I had been so busy in working on a game project in my company. Anyway, I am quitting for the sake of pursuing a master degree. And finally I have time to implement what I thought up and designed!

An new application “InstaMusic Beta Channel” will show up in Android Play Store soon. This application aims to provide a cutting-edge version of InstaMusic. This app could be unstable, lots of force closes, however this helps me kill bugs in the program. For those who only wants a stable music playback, please download the original “InstaMusic”.

As a new version is coming out, I have created a feature list presenting the main improvements done or working on.

  1. Stability
    InstaMusic has been unstable for a long time. Music stops suddenly without telling. After a deep diagnosis, the core reason leading this bug is found, and a fix is patched! Music never stops now!
  2. Loading Speed
    Media loading speed has been a big concern for me while generating the music list. Long loading time affects user experience and might hinder other operations. Anyway, I have designed a new architecture specially for the list generation. This assured an optimised, low memory usage, synchronised and dynamic list generation.
  3. Jelly Bean Support (Working in Progress) 
    There are lots of new features and supports from platforms beginning from Android 4.0 such as notification controls and new theme styles. I am working on making use of those new features and to create a whole new user experience for users!
  4. Editable Playlists integrating with Favourite List (Working in Progress)
    In the next version of InstaMusic, Favorite List will be integrated into Playlist. The reason is… actually there is no reason to separate them lol.

Thank you for your supporting so far. Please comment below and tell me what you think on InstaMusic!

I have been working with Cocos2D for a while and I am still a newbie. The way to deal with animations in Cocos2D 1.0.0 – the stable version currently – is different from the way before using CCSpriteSheet. Now Cocos2D adapts animations as cache shared in the project using CCSpriteFrameCache. It also requires a plist file as well as a texture file.

First, put the following assets into the project “Resources” folder to let the program use.

  • grossini.plist – The file contain the animation information such as frame details.
  • grossini.pvr.gz – The texture file in pvr format which allow better performance in Cocos2D.

Second, add the following codes into the function init. Take a look at the comments for program explanation. =]

// Capture the window size
CGSize size = [[CCDirector sharedDirector] winSize];

// Load the plist into the cache
CCSpriteFrameCache *cache = [CCSpriteFrameCache sharedSpriteFrameCache];
[cache addSpriteFramesWithFile:@"grossini.plist"];

// Create sprite with the first frame
CCSprite *sprite = [CCSprite spriteWithSpriteFrameName:@"grossini_dance_01.png"];
sprite.position = ccp( size.width/2, size.height/2);
sprite.anchorPoint = ccp(0.5f, 0.5f);

// Create array for the animation frames
NSMutableArray *animFrames = [NSMutableArray array];
for(int i = 0; i < 14; i++) {
    CCSpriteFrame *frame = [cache spriteFrameByName:[NSString stringWithFormat:@"grossini_dance_%02d.png",(i+1)]];
    [animFrames addObject:frame];
}

// Convert the array into animation
CCAnimation *animation = [CCAnimation animationWithFrames:animFrames];

// Run the sprite with the created animation and display it by adding it to the scene
[sprite runAction:[CCRepeatForever actionWithAction: [CCAnimate actionWithDuration:2.8f animation:animation restoreOriginalFrame:NO] ]];
[self addChild:sprite z:0];

After all, don’t forget to deallocate the resources loaded in cache in function dealloc.

// Deallocate the resource in cache
CCSpriteFrameCache *cache = [CCSpriteFrameCache sharedSpriteFrameCache];
[cache removeSpriteFramesFromFile:@"animations/grossini.plist"];

Finally, this is a screenshot. Enjoy. XD

Recently I bought Samsung Galaxy S2. Samsung offer an application to synchronize files in Mac. However, the latest version cannot be installed in Lion. To tackle this, you can install an older version and then update it to the latest version. I have tested it works for this version: KiesMac_1.0.0.11055_7. Install it and then go to “Preference”->”Update” and update to the latest version. Try it and gives comments. =]

After days struggling with the new Mail 5, there has been a breakthrough. I finally fix the problem and Apple Mail 5 is now working with the Mbox Mail for Mac. As there is still some more work to do to pack the programs, as a support i hope somebody could make me some donation. As a preview, a screenshot is shown below. I will release my work as soon as I finish and the donation reach US$100, please comment and notify me after donation. Thanks a lot! =]

Okay, I give up. Go here:
Fix Mbox Mail for Mac on Lion, works Apple Mail 5

Actually the development this website has been suspended for a while due to my busy life XD. Anyway just take a look and give me some comments. Link: http://nicholasworkshop.co.cc

There were a number of suggestions come with the comments from the world after the publication of my Chrome extension, Mail Checker. It is great as it help my program to become more mature and comprehensive. Suggestions including bug reporting, feeling after using and rooms improvement.

One of that would be disable a function, viewing emails on the popup window. I didn’t do it as I think it is an important feature of this extension when I create this project. Also, I think some people might like it. Therefore, I modified this extension into a lite version. And I love it also!

Mail Checker Lite: Nicholas Workshop
https://chrome.google.com/extensions/detail/gpmpdgciblcggldoiafnecomgiikleah

I know it has bugs, just tell me if you find any XD.
Please give comments.

I suddenly want to write a “Recent Comment” for this Blogspot as I am not satisfied with the default one. It is not difficult as I made use of jQuery to dual with the comment feed in Json format. All the data is avaliable and ready, what I do is just adjusting the location into a nice looking layout. Try it. =]

Just create an HTML/JavaScript gadget on your blogger and paste the following code onto it. Don’t worry about anything as I have done everything for you, you will see the result as soon as you save the gadget. You may need to change the layout such as number of comment to show and structure of each comment, ask me if you don’t know how to alter. Anyway, I will keep on modified it as I am still not very satisfied with it.

<!-- Recent Comments Designed by Nicholas Wong -->
<!-- Created on 31 July, 2010. Last update on 1 Augest, 2010 -->
<div id="nicholasComment">
  <noscript>Error! Javascript here is not supported!</noscript>
</div>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript">
  var nicholasCommentNum = 10;
  function nicholasCommentShow(json) {
    var nicholasCommentCode = "";
    if (json.feed.entry.length < nicholasCommentNum) {
      nicholasCommentNum = json.feed.entry.length;
    }
    for (i=0; i<nicholasCommentNum; i++) {
      nicholasCommentCode +=
        "<li>" +
          json.feed.entry[i].author[0].name.$t + ": <br />" +
          "<a href='" + json.feed.entry[i].link[2].href + "'>"  +
            json.feed.entry[i].summary.$t.replace(/<br.*>/, " ") +
          "</a>" +
          "<div style='text-align:right;'>" +
            json.feed.entry[i].published.$t.substr(0, 10) +
          "</div>" +
        "</li>";
    }
    $('#nicholasComment').html("<ul>" + nicholasCommentCode + "</ul>");
  }
</script>
<script src="/feeds/comments/summary?rderby=published&start-index=1&max-results=11&alt=json-in-script&callback=nicholasCommentShow"></script>
<!-- Recent Comments Designed by Nicholas Wong -->
<!-- Created on 31 July, 2010. Last update on 1 Augest, 2010 -->
%d bloggers like this: