People are constantly at battle with this issue, and I have recently gone through the ordeal of trying to resolve it. This post is meant to inform people with this problem certain methods they can attempt to try and resolve the problem. So I basically got some water in my iPhone after applying a screen protector and not minutes after turning on the iPhone did I first get the dreaded message, "This accessory is not made to work with iPhone". Through research I discovered that this most usually means that some water got into the dock of the iPhone and that the resident application (iapd) detects that something has been plugged in when in fact it has not. Unusually, it means that there could be something in the headphone jack, so just something to check as a troubleshooting step. At this point, Cydia would not load for one reason or another and as most people, my iPhone is full of apps so I didn't want to restore and rejailbreak. I heard about a Cydia application called PopUp Blocker which removes these annoying pop-up messages. However, I couldn't use Cydia to install it because it was crashing at startup. So, basically, I had to SSH into my iPhone (tutorials to do this are numerously available through a quick google search of: "iphone ssh") and install a Debian package of PopupBlocker.deb for troubleshooting purposes using the dpkg command via SSH. (dpkg should be an available command on any jailbroken iPhone). Debian packages must be downloaded on the Internet and SSH'd to the iPhone manually. Alright, I was able to install a package onto my iPhone without Cydia. Now I was instructed to 'respring' my iPhone but unfortunately I did not have this command available, and this could be true for many others out there. In its absence however you can use 'restart' which mainly does the same thing. I went to the settings for Popup Blocker and shut off the warnings for the accessory messages. Perfect! Popup Blocker did its job perfectly and I was no longer getting the messages. However, upon using my iPhone I realized that this message also affects sound from your external speakers. Even though Popup Blocker hides the message, it does not fix the problem with the dock thinking your sound should be routed through an external device, rather than your handset itself. So I was still basically screwed. I uninstalled Popup Blocker using dpkg and was determined to find another fix. After searching the internet I discovered this, iphone-2g-3g-fix-this-accessory-is-not-made-to-work-with-iphone/, which many of you with this problem might have already tried. I followed the instructions there and upon using my iPhone on firmware 3.1.2, the message had gone away and the sound was working perfectly in all applications (including iPod). Once again, upon using my iPhone I discovered another issue, my battery performance was TERRIBLE and apps were noticeably laggy (think 3d games). I google searched iPhone process monitor and all I came up with was SBSettings, which needed to be installed through Cydia. So I searched how to install apps without Cydia and came across a method to install Icy (a substitute to Cydia, though some would not agree) via dpkg, the same command line program I used to install Popup Blocker. Even though I used Icy in this situation, many people suggested using, 'apt-get', another command line program. However, whenever I tried to use it I got this message: apt-get command not found. What's needed to install this application on your iPhone is to use 'dpkg' once again: dpkg -i aptget.deb After doing this, you should have the 'apt-get' command. Basically dpkg needs the application to reside on your device (which means you manually need to put it on your device) to be installed whereas apt-get can search through repositories of applications and install them automatically like Cydia but without the GUI (easier and simpler than dpkg). Now that I had apt-get, I had much more control over my iPhone (I would recommend it over Icy for troubleshooting even). Using the command line I was able to install sbsettings: apt-get install sbsettings. With SBSettings I was able to check the processes running and free up memory but it did not seem to make the issue any better. At this point I was kind of stumped and gave up for awhile but when I came back to it I found another helpful tip. There is an program available called 'top' which will list all of the processes running on the iPhone, how much CPU they are using, and their memory usage. It can be installed with: apt-get install top. After running top I was able to see EXACTLY what was causing my iPhone to run slowly and it was iapd. Basically, after patching my iapd, when it would load it would crash immediately and CrashReporter would report the crash. CrashReporter was using up my entire CPU and anywhere from 60MB-100MB of memory. This crashing was looping continuously which explains the bad performance and battery life of my iPhone. I guess the patched iapd I used (which was supposed to be for 3.1.2 and wasn't actually the one available to download on the website) was not truly compatible with my firmware and caused iapd to crash over and over. Anyways, I reverted my iapd file back to the original and the CPU/battery problems went away. I have used the iPhone for awhile and have not received the message, however, I expect I will eventually unless the trace amounts of liquid inside the iPhone evaporated. I hope this thread has provided knowledge on this issue including the various methods that have been known to fix it, and the problems they can possibly produce. I know this is a bit of story book but I spent hours searching the Internet for relevant information and it would have been excellent if it was all in a single topic like this. If anyone has any questions feel free to reply or PM me and I will assist you the best I can, or update this thread with additional information.