Friday, May 3, 2013

Demolition Master 3D v1.13 Apk Android


Super explosive game for your Android device.
With Demolition Master 3D you will fill like the real bomb expert capable of tackling even the most complicated tasks. Travel to various countries and continents, take part in ambitious construction projects and demolish, demolish, demolish!
Demolition Master 3D is a sequel of popular game Demolition Master that already has hundreds of thousands fans worldwide.


Features:
- Game is entirely in 3D;
- Realistic physics;
- Excellent graphics and nice visual effects;
- 110 game levels, 5 locations;
- 4 types of explosives with different properties;
- Social network OpenFeint (leaderboards & achievements).

Demolition Master 3D will become your favorite game that will always stay with you in your Android. Demolish and enjoy excellent graphics, intensity and variety of levels.

Click Here To Download
Direct Download Link - Direct Download Link


Top Gear SSR Pro v3.3 APK + Data Android


Top Gear: Stunt School Revolution Pro!
Join the Millions who are playing Top Gear: Stunt School Revolution and download the Pro version now! ★ALL STUNTS UNLOCKED ★300 PERMITS FOR FREE ★

With incredible visuals, loads of outrageous cars, iconic world locations, endless and mostly ridiculous customizations and truly unbelievable stunts, it’s everything you’d expect from the Top Gear team. !


Want to balloon hop a motor home to clear the Grand Canyon? Use your sports car and escape Alcatraz by leaping as far as you can and landing on a barge? Speed through a roller-coaster on a New York skyscraper with a cow on your pickup? You can do all this and more in Top Gear: Stunt School Revolution.

• Endless vehicle customisations to tweak your car performance to any scenario
• A fantastically responsive, intuitive driving experience
• Fantastic iconic locations from around the world – Grand Canyon, Alcatraz, Sydney Harbour, New York, Moscow, London and China
• Challenge your friends to beat your high scores on each stunt and tell everyone about it on Facebook and Twitter
• Additional in-app purchases are available for extra Gold Nuts, Permits and Stig Dollars if you can't wait.

Data Location: SDcard/Android/Obb

Click Here To Download

APK File
Direct Download Link - Direct Download Link

SD Data Files
Direct Download Link - Direct Download Link


HOMERUN BATTLE 3D v1.8.3 Apk Android


Go ONLINE for head-to-head match up against the BASEBALL SLUGGERS in the world!
Are you prepared to be the next batter up?
Real-time Online Matchup Homerun Battle 3D!!

Play ONLINE MATCHUP & go Head-to-Head against millions of Homerun Battle sluggers around the world.


☆★Homerun Battle Series at its PEAK!★☆
★20 Million Sluggers battling in 300 million match-ups!!★
**Go Smash your homeruns NOW!!**

★★Homerun Battle 3D & Homerun Battle 2 Summer Sale!★★
★The Homerun Battle Series is on SALE: from $4.99 to $0.99!★
Hit homeruns and become the hero of the arena!

*** Over 10 MILLION players in more than 300 MILLION match-up games!
*** The Best of the Best Apps Awards Winner
*** Nominated as IMGA's Best Game

- 4 Extra Modes : Online Match up, Arcade, Training, and Classic
- Over 100 Items : Uniforms, hats, equipment and other customizable features
- Exclusive Baseball Wear : Includes the official DeMarini CF4, Voodoo and other M2M bat equipment.
- This game supports English

### Com2uS Hub Connection Notice ###
- Your play data will automatically be saved in server when you login to Com2uS hub in Homerun Battle.
- Enjoy a game of Homerun Battle in many different kinds of devices with the same ID, and save all data in your personal hub account.
- GUEST PLAY allows you to play a game without a Com2uS hub account. Game data will automatically be transmitted to the server once you join or login to your hub account. (Homerun Battle play data in the previous account cannot be transmitted.)

Click Here To Download
Direct Download Link - Direct Download Link


Thursday, May 2, 2013

Different case in lifecycle of Activity and Fragment

It's part of the articles of lifecycle: start reading from Understand lifecycle of Activity and Fragment, Introduction.


I try to show the different case in lifecycle of Activity and Fragment in this post. Before I show the code, I show what found in my trial experiment.

case 1:
    Close app by HOME, become invisible:
  • MainActivity.onPause
  • MyFragment1.onPause
  • MainActivity.onStop
  • MyFragment1.onStop

  • back from closed app:
  • MainActivity.onRestart
  • MainActivity.onStart
  • MyFragment1.onStart
  • MainActivity.onResume
  • MyFragment1.onResume



case 2:
    Finished by calling finish() method (press the finish button):
  • MainActivity.onPause
  • MyFragment1.onPause
  • MainActivity.onStop
  • MyFragment1.onStop
  • MainActivity.onDestroy
  • MyFragment1.onDestroyView
  • MyFragment1.onDestroy
  • MyFragment1.onDetach

  • back from finished:
  • MainActivity.onCreate
  • MainActivity.onCreate / savedInstanceState == null
  • MainActivity.onStart
  • MyFragment1.onAttach
  • MyFragment1.onCreate
  • MyFragment1.onCreateView
  • MyFragment1.onActivityCreated
  • MyFragment1.onStart
  • MainActivity.onResume
  • MyFragment1.onResume

case 3:
    Orientation changed:
  • MainActivity.onPause
  • MyFragment1.onPause
  • MainActivity.onStop
  • MyFragment1.onStop
  • MainActivity.onDestroy
  • MyFragment1.onDestroyView
  • MyFragment1.onDestroy
  • MyFragment1.onDetach
  • MainActivity.onCreate
  • MyFragment1.onAttach
  • MyFragment1.onCreate
  • MainActivity.onCreate / savedInstanceState != null
  • MainActivity.onStart
  • MyFragment1.onCreateView
  • MyFragment1.onActivityCreated
  • MyFragment1.onStart
  • MainActivity.onResume
  • MyFragment1.onResume

case 3:
    Kill by system
    (refer this post to simulate activity killed by system)
  • MainActivity.onPause
  • MyFragment1.onPause
  • MainActivity.onStop
  • MyFragment1.onStop
  • MainActivity.onDestroy
  • MyFragment1.onDestroyView
  • MyFragment1.onDestroy
  • MyFragment1.onDetach

  • back from killed
  • MainActivity.onCreate
  • MyFragment1.onAttach
  • MyFragment1.onCreate
  • MainActivity.onCreate / savedInstanceState != null
  • MainActivity.onStart
  • MyFragment1.onCreateView
  • MyFragment1.onActivityCreated
  • MyFragment1.onStart
  • MainActivity.onResume
  • MyFragment1.onResume




The test code is modified version from the post "Understand lifecycle of Activity and Fragment". To make the main code clear, custom Activity (MyFragmentActivity extends FragmentActivity) and Fragment (MyFragment extends Fragment) were implemented to display status of lifecycle on Toast and log in LogCat.

MyFragmentActivity.java
package com.example.androidfragmenttest;

import android.os.Bundle;
import android.support.v4.app.FragmentActivity;
import android.util.Log;
import android.widget.Toast;

public class MyFragmentActivity extends FragmentActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
recLifeCycle();
super.onCreate(savedInstanceState);
}

@Override
protected void onStart() {
recLifeCycle();
super.onStart();
}

@Override
protected void onRestart() {
recLifeCycle();
super.onRestart();
}

@Override
protected void onResume() {
recLifeCycle();
super.onResume();
}

@Override
protected void onPause() {
recLifeCycle();
super.onPause();
}

@Override
protected void onStop() {
recLifeCycle();
super.onStop();
}

@Override
protected void onDestroy() {
recLifeCycle();
super.onDestroy();
}

public void recLifeCycle(){

String className = getClass().getSimpleName();
StackTraceElement[] s = Thread.currentThread().getStackTrace();
String methodName = s[3].getMethodName();

Toast.makeText(getApplicationContext(),
className + "." + methodName, Toast.LENGTH_SHORT).show();
Log.i("MYTAG", className + "." + methodName);

}

public void recLifeCycle(String note){
String className = getClass().getSimpleName();
StackTraceElement[] s = Thread.currentThread().getStackTrace();
String methodName = s[3].getMethodName();

Toast.makeText(getApplicationContext(),
className + "." + methodName, Toast.LENGTH_SHORT).show();
Log.i("MYTAG", className + "." + methodName + " / " + note);
}

}


MyFragment.java
package com.example.androidfragmenttest;

import android.app.Activity;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Toast;

public class MyFragment extends Fragment {

@Override
public void onAttach(Activity activity) {
recLifeCycle();
super.onAttach(activity);
}

@Override
public void onCreate(Bundle savedInstanceState) {
recLifeCycle();
super.onCreate(savedInstanceState);
}

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
recLifeCycle();
return super.onCreateView(inflater, container, savedInstanceState);
}

@Override
public void onActivityCreated(Bundle savedInstanceState) {
recLifeCycle();
super.onActivityCreated(savedInstanceState);
}

@Override
public void onStart() {
recLifeCycle();
super.onStart();
}

@Override
public void onResume() {
recLifeCycle();
super.onResume();
}

@Override
public void onPause() {
recLifeCycle();
super.onPause();
}

@Override
public void onStop() {
recLifeCycle();
super.onStop();
}

@Override
public void onDestroyView() {
recLifeCycle();
super.onDestroyView();
}

@Override
public void onDestroy() {
recLifeCycle();
super.onDestroy();
}

@Override
public void onDetach() {
recLifeCycle();
super.onDetach();
}

public void recLifeCycle(){

String className = getClass().getSimpleName();
StackTraceElement[] s = Thread.currentThread().getStackTrace();
String methodName = s[3].getMethodName();

Toast.makeText(getActivity(),
className + "." + methodName, Toast.LENGTH_SHORT).show();
Log.i("MYTAG", className + "." + methodName);
}

public void recLifeCycle(String note){

String className = getClass().getSimpleName();
StackTraceElement[] s = Thread.currentThread().getStackTrace();
String methodName = s[3].getMethodName();

Toast.makeText(getActivity(),
className + "." + methodName, Toast.LENGTH_SHORT).show();
Log.i("MYTAG", className + "." + methodName + " / " + note);
}

}


MainActivity.java
package com.example.androidfragmenttest;

import android.os.Bundle;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentTransaction;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.FrameLayout;

public class MainActivity extends MyFragmentActivity {

static public class MyFragment1 extends MyFragment {

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
super.onCreateView(inflater, container, savedInstanceState);
View view = inflater.inflate(R.layout.fragment_layout1, null);
return view;
}

}

FrameLayout fragmentContainer;
Button buttonFinish;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

buttonFinish = (Button)findViewById(R.id.finish);
buttonFinish.setOnClickListener(new OnClickListener(){

@Override
public void onClick(View arg0) {
finish();
}});

fragmentContainer = (FrameLayout) findViewById(R.id.container);
if (savedInstanceState == null) {
// if's the first time created
recLifeCycle("savedInstanceState == null");

MyFragment1 myListFragment1 = new MyFragment1();
FragmentManager supportFragmentManager = getSupportFragmentManager();
FragmentTransaction fragmentTransaction = supportFragmentManager
.beginTransaction();
fragmentTransaction.add(R.id.container, myListFragment1);
fragmentTransaction.commit();


}else{
recLifeCycle("savedInstanceState != null");
}
}

}


/res/layout/activity_main.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:orientation="vertical"
tools:context=".MainActivity" >

<Button
android:id="@+id/finish"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="finish()"/>
<FrameLayout
android:id="@+id/container"
android:layout_width="match_parent"
android:layout_height="match_parent" >
</FrameLayout>

</LinearLayout>


/res/layout/fragment_layout1.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:orientation="vertical"
tools:context=".MainActivity" >

<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Fragment 1"/>

</LinearLayout>


Test different case in lifecycle of Activity and Fragment


download filesDownload the files.

* the original chart of lifecycle is taken here.

Wednesday, May 1, 2013

Vignette v2013.04 Apk Android


Use 76 customisable photo effects and 57 frames in any combination, to create retro/vintage styles, LOMO/Diana/Holga toy camera styles, Polaroid/instant camera styles and much more.
Plus cross-process, duotone, charcoal, tilt-shift, photo-booth, double-exposure effects and more.


Vignette is also a full-featured camera application:
• Take pictures at your camera’s full resolution, even with effects (paid version only)
• Use the flash and front-facing cameras on most devices
• Self-timer, time-lapse and steady-shot modes
• Digital 10× zoom
• Store location data in pictures (geotag)
• Use the volume rocker as a shutter button
• Launch from the lock screen in Android 4.0+
• Remote shutter with Bluetooth remote, wired headset or Sony Ericsson LiveView
• Time- and date-stamp pictures
• Rule-of-thirds and golden ratio composition guides
• Optimised for taking pictures underwater
• Share pictures via third-party apps

Click Here To Download
Direct Download Link - Direct Download Link


Official Speedway GP 2013 v1.1.1 Apk + Data Android


Have you got what it takes to become the 2013 FIM Speedway Grand Prix champion? The official FIM Speedway GP 2013 game builds upon the success of its predecessor, packing in even more adrenalin-fuelled thrills and incredible realism, putting you right in the heart of the action. See the mud spray across your visor, hear the roar of the crowd and feel as if you’re really there with the most exhilarating motorcycle game you can get.


FIM Speedway GP 2013 is now bigger and better than ever with enhanced 3D graphics and animation, improved controls and smarter opponents. Race across 16 real-world tracks against the ferocious skills of 15 of the world’s best Speedway riders in the most daring, dangerous and dynamic motorcycle racing game on the Google Play.

AMAZING REALISM
Console-quality graphics, amazing sound and lifelike physics mixed in with real tracks and riders makes this as close as you’ll get to the real thing.

**NEW** HELMET CAM FOR TOTAL IMMERSION!
Feel the incredible speed thanks to the new Helmet Cam that gives you a first person view of the action. Other camera views also available.

**NEW** LIVE GP MODE
Double your points by playing during a live Speedway GP race.

ALTERNATIVE CONTROLS
Tap on the virtual buttons or swipe to control your bike as it hurtles round the track.

CUSTOMIZATION & 3D REPLAY
Upgrade your bike or boost your performance using store options to for a better start. Use the 3D replay to see how to improve your skills

MULTIPLE GAMEPLAY MODES
Start off in Casual mode and then advance to Pro mode for the ultimate challenge.

Data Location: SDcard/Android/Obb

Click Here To Download

APK File
Direct Download Link - Direct Download Link

SD Data Files
Direct Download Link - Direct Download Link


MyFC Manager 2013 v2.12 Apk Android


Football Manager, ever wanted to be one? Are you the best football manager? 'LIVE THE AGONY AND THE ECSTASY OF FOOTBALL MANAGEMENT'
• Take full control of your team on and off pitch, customise match strategies, train your players at team & individual level, negotiate contracts and create your dream squad.
• Manage a football club from the 4 English, 2 Scottish, 2 French, 2 Spanish, 2 Italian, 2 German, 2 French & Dutch leagues and guide it to success in domestic and European tournaments.


• Watch matches unfold with the ball radar & detailed live text commentary. Call the shots in match, replace injured or tired players and adjust team tactics to get that all important win.
• All vital stats are available from a players fitness, best foot and overall skill, to who is playing dirty on pitch, get the tactical edge!

• Fully localised into German, French, Italian and Spanish.
• Edit Mode – change club and player names.
• Updated transfer filter with search by player name.
• Interactive staff screens, Chairman, Assistant Manager, Coach and Physio.
• Information icons added to news and match commentary screens.
• Check out detailed league and cup Match Report on any game at any time throughout the season.
• End of season roundup Trophy Room displays the winners of every league and cup competition in each country.
• Winners Animated Celebrations Screens for each league and cup competition.
• Squad screen filter by position.
• Managerial vacancy screen.
• Individual player training feedback meter

Click Here To Download
Direct Download Link - Direct Download Link