Archive for the ‘iPhone’ Category

iPhone 4

May 29, 2011 Leave a comment

Got this iPhone 4 white on possession.
It amazed me how Apple made this product. Now have to code for it.

Categories: iPhone

iShamela finally on the AppStore

January 25, 2011 Leave a comment

Just made a iPhone/iPad Universal app which can load a lot of books from Moslem Scholars, now available on the AppStore for $1.99.

The app contains several books already, you can add it or remove it using iTunes File Sharing or WiFi File Sharing.

Available on the AppStore

Lite Version coming soon…

Categories: iPhone

Cocoa Custom Delegate

December 8, 2010 Leave a comment

Been spending times to port my current iPhone arabic library into iPad (Universal), and some of the codes I made was hardcoded, so there are some repeated codes here and there for SQlite3 query, since I want to overhaul my app, so I was thinking that I must use custom delegate for my DBManager.

On some tutorials on the net, people not using protocol for delegate, but I want it to be protocol based delegate.

So, here are the codes:


@protocol DBDelegate

- (void)dbPrepare:(NSString *)filename;
- (void)dbGotRecord:(NSString *)filename Statement:(sqlite3_stmt *)stmt;
- (void)dbFinalize;

- (void)dbGotBookInfoRecord:(NSString *)filename Statement:(sqlite3_stmt *)stmt;


Then, on my DBManager:

@protocol DBDelegate;

@interface DBManager : NSObject {
id <DBDelegate> delegate;

@property (nonatomic, assign) id <DBDelegate> delegate;

It used to be “id delegate”, but since we are making a protocol based delegate, we must make sure that our delegate object conforms to DBDelegate protocol, by using conformance statement of id, this way we don’t need to check if a delegate is conforms to DBDelegate or not.

On the codes where we fetch the records, we can call the delegate:

if (self.delegate)
[self.delegate dbGotBookInfoRecord:file Statement:stmt];

That’s it we now ready to use the delegate

Categories: iPhone

Keygen on iPhone 3G 4.0.1

August 7, 2010 Leave a comment

Have this two software products that shares the same serial generation, marketing people tend to ask me about the activation code for certain license code, and yet I’m always on the road often not bring laptop.

Figure I could generate the serial number using my iPhone, so I fired up Xcode, patch it again (I was reinstalling Snow Leopard), and spent a couple minutes make some scrollable view and build.

Now I have my own serial number generator for my products right in the palm of my hand, I can take it everywhere without having to bring along laptop.

It’s working for iOS 4.0.1 using 3.1.3 SDK, all I have to do is reread my post about live debugging then do the hard way by packaging the ipa file myself on iOS 4.0.1. But hey, it works.

Categories: iPhone

SHSH for iPhone 3G

July 21, 2010 Leave a comment

Wow, Apple making things complicated for iPhone 3G, the culprit of why your iPhone 3G can not be restored into iOS 4 no longer is because Apple has soft blobs for iPhone 3G too now… GREAT

But no matter, if you open Cydia, it will automatically save your SHSHs into a file in its server, so bypassing Apple signature server is OK if you already has SHSH on Cydia.
Just read the Restore Error post before.

Hit is big, 177 for a day, seems you guys also has the same problem with me…

Categories: iPhone

Cannot Connect to Youtube on iOS 4

July 17, 2010 2 comments

I can’t seem to use Youtube app in iOS 4.0 jailbroken with Redsn0w, looking for a solution, found it.

1. Just open Cydia,
2. Then goto more package sources.
3. Install iPhoneModding
4. Go to search tab, and search for “Push Fix”, you should see it from iPhoneModding below the title.
5. Install it
6. Reboot Device.
7. Voila, Youtube now working, Push Notification, etc fixed.

Categories: iPhone

iPhone 3G Error 3194 when Restoring with iTunes…

July 17, 2010 168 comments

Apple just updated its Firmware version into iOS 4.0.1 that has cosmetic signal bar changes that will make your signal more accurate, they said, and with the first and second bar higher than before so it can be seen clearly.

Sadly enough, for you guys who wanted to erase or restore your iPhone 3G into iOS 4 using iTunes 9.2 will be out of luck, since Apple is no longer signing the version 4.0 anymore. Instead if you insist on restoring your iPhone 3G into iOS 4.0 instead of 4.0.1, you’ll have error 3194 on iTunes saying that your Device is not eligible for this build, bla.. bla..

This is unfortunate, you can not upgrade your iPhone 3G officially, but.

You can still restore it unofficially.
Basically when iTunes showing “Verifying with Apple bla…”, that means iTunes is checking for signature from Apple’s signature server. And guess what, Apple no longer sign your iOS 4.0 firmware which makes your device is not elligible for restore, unless you update with iOS 4.0.1, this is one way for apple to force its customer to upgrade into the latest firmware, so all hacks will be elliminated if one is provided in Apple’s latest firmware version.

Now, we can bypass this signature checking when iTunes contacting Apple by changing the server from Apple’s Signature Server into Cydia’s clone of Apple Server.

It’s easy (for Windows):
1. Fired up your cmd.exe, and make sure you have administrator privileges.
3. Type this: edit hosts
4. Add this to the last line:
5. [UPDATE]: Save the file (People asked me to add this, it’s a common knowledge tho when you change a file you must save it)
6. Restart your iTunes.
7. Put your iPhone 3G in recovery mode, by turn off the device first and pull the plug from your PC. Then press Home Button and connect your iPhone into your PC, then wait until the Recovery Icon shows up (iTunes icon with cable above it).
8. Now, restore your iPhone with your firmware iOS 4.0 (in windows using Shift + Restore, in mac using Options + Restore)
9. Voila, it will be restored succesfully, it’s fully working on my iPhone 3G.

You should notice the number 4 step is the bypass server, by pointing Apple Authentication domain into Cydia’s Server IP Address, this is trivial in unix, and thankfully, we can do this in Windows.

On Mac, it’s the same, except for the cmd.exe and the cd thing should be into /etc/hosts…

Enjoy your Jailbreak Restore…

The use of Cydia server doesn’t need you to download any software, but if you still having error using Cydia server, you can download TinyUmbrella from

You can then start its TSS server and replace the step number 4 with :

And still on the very same hosts file. Some people called it stupid, but this is simple way to bypass the iTunes from connecting to the real Apple Server, if you have better way to do this, just tell me…

Categories: iPhone