Cupid-4-Stupid New Update – Version 1.4

Today, November 28 of 2011, we released a new update of Cupid-4-Stupid!

Some customers reported a bug that they were facing when trying to access content in Date Ideas and Panic Button sections.

This bug was produced after all the Android devices got updated.

After working around we found out what was the problem and solve it. Soon, we will release a more detail explanation of how we solve it.

Get Cupid-4-Stupid here:
https://market.android.com/details?id=com.hourglassapplications

Share

Adding BugSense to Cupid-4-Stupid for Android

We are adding BugSense to Cupid-4-Stupid (http://www.cupid-4-stupid.com) for Android. 

BugSense (http://www.bugsense.com/) is a bug tracking service for Android, iOS, and WP7 which works wonders with ACRA 4.2.3.

We added BugSense after encounter an error with ACRA in which was crashing the application.

The code was failing when trying to initialize acra:

		try{
			ACRA.init(this); // The following line triggers the initialization of ACRA
		}catch(RuntimeException e){
			android.util.Log.e(TAG, 'ACRA init crashes: ' + e.getMessage());
			e.printStackTrace();
		}

Getting the following error:

10-30 22:02:37.908: WARN/System.err(2709): java.lang.NullPointerException
10-30 22:02:37.918: WARN/System.err(2709):     at org.acra.ErrorReporter.init(ErrorReporter.java:363)
10-30 22:02:37.918: WARN/System.err(2709):     at org.acra.ACRA.initAcra(ACRA.java:297)
10-30 22:02:37.918: WARN/System.err(2709):     at org.acra.ACRA.init(ACRA.java:238)
10-30 22:02:37.918: WARN/System.err(2709):     at com.hourglass.applications.MyApplication.onCreate(MyApplication.java:40)
10-30 22:02:37.918: WARN/System.err(2709):     at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:969)
10-30 22:02:37.928: WARN/System.err(2709):     at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4165)
10-30 22:02:37.928: WARN/System.err(2709):     at android.app.ActivityThread.access$2900(ActivityThread.java:126)
10-30 22:02:37.928: WARN/System.err(2709):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1958)
10-30 22:02:37.928: WARN/System.err(2709):     at android.os.Handler.dispatchMessage(Handler.java:99)
10-30 22:02:37.928: WARN/System.err(2709):     at android.os.Looper.loop(Looper.java:123)
10-30 22:02:37.928: WARN/System.err(2709):     at android.app.ActivityThread.main(ActivityThread.java:4568)
10-30 22:02:37.928: WARN/System.err(2709):     at java.lang.reflect.Method.invokeNative(Native Method)
10-30 22:02:37.938: WARN/System.err(2709):     at java.lang.reflect.Method.invoke(Method.java:521)
10-30 22:02:37.938: WARN/System.err(2709):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
10-30 22:02:37.938: WARN/System.err(2709):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
10-30 22:02:37.938: WARN/System.err(2709):     at dalvik.system.NativeStart.main(Native Method)

After spending long hours I found how that the error was produced when ErrorReporter class was not initialized.
For some reason ACRA 4.2.3 doesn’t pass the reference of the class (this) to ErrorReporter.

To fix it just implement the following:

ErrorReporter.getInstance().init(this); // include before ACRA.init(this);

 

Share

Cupid-4-Stupid, My First Android Application in the Android Market

Me and my friend, David Corrigan, spent more than three months working on our first Android application, Cupid-4-Stupid.

The idea of this project came from David and we both work together to make it true.

Our project allowed us to learn how application are build in Android plus how the android behaves.

We encounter many problems which allow us to learn a lot in a very short period of time.

  • Website is: http://www.cupid-4-stupid.com
  • Blog: http://blog.cupid-4-stupid.com
  • Forum: http://forum.cupid-4-stupid.com
  • Android Market: https://market.android.com/details?id=com.hourglass.applications

Cupid-4-Stupid is know released in the android market: Get Cupid-4-Stupid Here!

After months of programming, researching sources, interviewing people, we put together an application with the purpose to help men with their relationship.

Cupid -4- Stupid is an application geared for men. This mobile application helps you to remember more than just her chest size – it keeps you out of the doghouse. It coaches you in your relationship and gives you a hand during those conflicting times. This is the perfect tool for those who are married or single. If you are a man, then this application is a must have.

Cupid-4-Stupid Features

Cupid’s little secrets (Shh… Keep them secret!)

Help any man creatively and successfully pull off a perfect date.

  • Date Ideas to spice your date up!
  • Chick Flicks that she will love and won’t make you sick
  • Recipies for Morons that are easy and fast to cook
  • Random Acts to stop the boring routine
  • Success Stories that will get you inspired
  • and more…

The “Little” Black Book

A separate discreet contact list to keep your valuable contact information

  • Password protected (just turn password on in settings)
  • Keep track of “important information”
  • Make phone calls
  • Send text messages
  • Locate your contact in the map
  • Profile pictures can be taken with the camera or imported

Calendar

A sophisticated event reminding system such as:

  • Anniversaries
  • Birthdays
  • Dates
  • and more…

Panic Button

  • Help you to get out of troubles with your couple
  • Provide you with ideas and advice
This application have even more features waiting for you to discover.

Special Thanks

  • David Hail from HotDateIdeas.com for allowing us to use content from their website

Thanks

  • Candece Corrigan for her support and ideas
  • Stephen Brower for providing us with the SVN server
  • Ricardo G. Carlstein and Susana Ramos Mejia for their unconditional support
  • Joshua Rittenburg for his support
  • Philibian Lindo for helping us in the testing of our application
  • Peter Monks for helping us in the testing of our application
Share

Hiding keyboard

The following code will hide the keyboard until the user press any user interface item such as a edit text to type in the information:

...
private void hideSoftKeyboard(){
	Log.d(TAG, 'hideSoftKeyboard()');
	getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
}
...
Share

ActivityManager Don’t Like Twins

If you cross yourself with the following warning:
WARN/ActivityManager(78): Duplicate finish request for HistoryRecord

There is a chance that your application finish braking down.
This may occur when you write twice the method finish().

It seems that ActivityManager even do provide a warning, its die of a heart-attack when see the twins brothers of the method finish().

@Override
public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
    Log.d(TAG, 'onItemClick()');
    ...
    finish();
    ...
    finish();
}

So make sure you are not calling finish() once and later calling finish() again. Plus one finish() is more than enough.

 

 

Share