[Optimus One, P500, V General] unrandomsam:
Total waste of time posting that crap.

Try this :

Make the free ad-supported version free of ads:

I'm sure you have already noticed, there is only one version of this game currently released for Android. The free ad-supported version. And if you have ever played, I'm sure you've noticed the super annoying full screen advertisement after each turn you take. So a friend of mine and I have been working on blocking ads, and we have been successful! Check below to find out how to remove both the full page ad and the banner ad!

Again, this isn't that hard of a process. The tut looks long and complicated, but that is just to make it noob friendly. Really this entire thing can be broken down into a few simple steps: Extract, decompile, edit, recompile, re-package, re-install. Its that simple.

1) You will need the latest Java JDK installed. Google for java SE downloads. Install the latest version to somewhere easy to remember, like the root of your C:\ drive.

2) Make sure your enviromental PATH variable is set up properly to point to your java jdk.

---- I am not going in depth on these first 2 steps cause google can tell you what to do, if you need my help just ask!-------

3) Download smali here: http://code.google.com/p/smali/ You will need all 4 files in the download section. Put this in another easy to remember directory, like C:\smali or something like that

4) On your phone, open dropbox, press menu, press upload, press any file, press root explorer

5) navigate to /data/app/com.zynga.wordswithfriends.apk Select this app so dropbox will upload it

6) Once its done uploading. Go to your computers dropbox. Right click the app, and tell it to open with 7zip.

7) In 7zip, click on the "classes.dex" file, and click the extract button. This will extract classes.dex to the same folder your app is in.

8 ) copy (or cut) your classes.dex file, and bring it into the directory where your smali files are. Paste it there.

9) Open a command prompt.

10) navigate in your command prompt to your smali folder

11) Use the following to de-compile the classes.dex file:

Decompile:

java -jar baksmali-1.2.6.jar -o <output directory> <.dex file, typically classes.dex>

For example: java -jar baksmali-1.2.6.jar -o out classes.dex

NOTE: The version number after "baksmali" may vary depending on the version you download. You can actually leave the <output directory> blank and it will default to "out".

When you do this, you will get a new folder named whatever you put as your output directory. Inside this folder you will find a lot of .smali files. This is a programming language that is a strange mix between ASM and vomit.

Also, once you have successfully decompiled your classes.dex file. You can go ahead and delete it. This way you dont get it confused with the new classes.dex file you will recompile later on.

12) in your output smali directory, navigate to /com/zynga/words/game

13) Double click the file named "AdActivity" (not "AdActivity$1") to open it in your default text editor.

14) press ctrl + f, and type "onCreate". This should take you to a public method named onCreate

15) Inside the onCreate method, about 20 lines of code down, there are two lines that look like this:

.line 54
invoke-direct {p0}, Lcom/zynga/words/game/AdActivity;->hideContinueButton()V

16) Edit the "hideContinueButton" part to say "quit" so you end up with this:

.line 54
invoke-direct {p0}, Lcom/zynga/words/game/AdActivity;->quit()V

17) Save and close that smali file. You just stopped the large full page ad from displaying after every turn you take.

18) Navigate to /com/zynga/words/menu

19) double click "GameListActivity" to open that smali file

20) ctrl + f and type "onStop". This should take you to a public method named onStop

21) copy the entire contents of this method except for the first and last line, so you should copy this:

.registers 1

.prologue
.line 294
invoke-super {p0}, Landroid/app/Activity;->onStop()V

.line 295
invoke-static {p0}, Lcom/flurry/android/FlurryAgent;->onEndSession(Landroid/content/Context;)V

.line 296
return-void

22) ctrl + f then type "refreshBanner". This should take you to a public method named "refreshBanner"

23) Paste the entire contents of "onStop" over top of the entire contents of "refreshBanner". This way you end up with a refreshBanner method that looks like this:

.method public refreshBanner()V
.registers 1

.prologue
.line 294
invoke-super {p0}, Landroid/app/Activity;->onStop()V

.line 295
invoke-static {p0}, Lcom/flurry/android/FlurryAgent;->onEndSession(Landroid/content/Context;)V

.line 296
return-void
.end method

24) Save and exit. You have just taken the code that will fetch banner ads, and replaced it with code that closes the "news" bar at the top of the main page.

NOTE: The code you put in the "refreshBanner" method basically just sets the news bar to not be visible. So, this means that anytime the game is trying to load a banner ad, it will really be closing the news bar (even if its already closed, it will just do nothing at all). This means that, when the game is trying to load a banner ad, the news bar wont work for that short period of time. But the news bar will work any other time the game is not trying to display a banner ad.

For those of you who dont know, the news bar is just a small button you hit named "news" and it tells you useless crap like "Welcome to words with friends!" or "We released an update!" Anyways, back to the tut...

25) Go back to your smali folder, where you should have your "out" folder (or whatever you called it) that contains ALL of the smali files including the 2 that you just edited.

26) In your command prompt, use the following to recompile your smali files into a dex file

Recompile:

java -Xmx512M -jar smali-1.2.6.jar <output directory from above step> -o <name for new .dex output file>

For example: java -Xmx512M -jar smali-1.2.6.jar out -o classes.dex

HINT: You can actually leave the "-o classes.dex" off the end, and it will default to classes.dex

27) Open your words with friends apk with 7zip

28) delete the current classes.dex that is in there

29) drag and drop your new classes.dex that you just compiled into 7zip in the same place you deleted the old one. Click "yes" when 7zip asks you to update the archive. Once the archive is updated with your new classes.dex, close 7-zip.

30) If you left your app in your dropbox, then it will automatically sync. If you were doing this outside of your dropbox, then copy your app into your dropbox now

31) On your phone, go to your dropbox, find your new app and long press it. Then press download and wait for it to finish downloading.

32) Open your ZipSigner app on your phone, and press the "Choose In/Out" button. Navigate to /sdcard/dropbox/ and find your new word with friends app and select it.

33) Leave the signature as "auto-testkey" and press "sign the file"

34) Once the app is done being signed, open Uninstaller, and uninstall your current words with friends app

35) Open RootExplorer and navigate to /sdcard/dropbox and find your new words with friends app that you just signed. It will have "signed" in its name

36) Select it and install it, you now have a completely ad free game!!!

Kang'ed from hetoan2.com