Discussion Board

Results 1 to 5 of 5
  1. #1
    Registered User
    Join Date
    Mar 2003

    Retroguard and FullCanvas

    I know there have been posts about this before, but none of them provide any closure to the issue: why can't retroguard obfuscate any Nokia UI application that contains FullCanvas? Is there a workaround?

    I've tried within WTK104, and this error occurs:
    java.lang.ClassNotFoundException: com.nokia.mid.ui.FullCanvas

    If I try from the command line, this error occurs:
    java.lang.UnsatisfiedLinkError: _getFullWidth

    Attempting to override classes/method using script.rgs seems to make no difference. If I remove FullCanvas classes from the source (but leave other Nokia UI classes), obfuscation works just fine.

    Any suggestions greatly appreciated.

  2. #2
    Registered User
    Join Date
    Mar 2003

    RE: Retroguard and FullCanvas


    I've solved this problem, but maybe it is stupid method

    Imagine that classes.zip file is given to Retroguard (classes.zip contains MIDP API, Nokia UI API).

    Do the following steps :
    1) Unzip classes.zip
    2) go to com\nokia\ui\mid
    3) Decompile FullCanvas.class to FullCanvas.java using any decompiler like NMI's Java Code Viewer
    4) Edit FullCanvas.java. Find for native methods. Change every native method like

    public native int getWidth();


    public int getWidth(){} // method with empty body

    5) Compile FullCanvas.java having set the appropriate classpath
    6) Overwrite FullCanvas.class in classes.zip with your new FullCanvas.class
    7) Enjoy (Using new classes.zip, you should use this archive only for retroguard, an old classes.zip should be used for emulator, etc.)

    I know, it is stupid method, but this is the first I thought about and it works fine

    Best Regards,
    Eugene Yatsenko.

  3. #3
    Registered User
    Join Date
    Apr 2003

    I just added the j2me-debug.zip in classpath (from Series_60_MIDP_SDK_for_Symbian_OS_v_1_0) and everything works fine (compilling, obfuscating ...).

    It seems to contains last classes developed by Nokia.

    Last edited by romtic; 2003-04-07 at 16:27.

  4. #4
    Registered User
    Join Date
    Mar 2003
    Hi, where do you add it to the classpath? I'm using Sun ONE studio ME with the Nokia wireless toolkit. Using JODE obfuscator, not sure where to add the classpath though?



  5. #5
    Registered User
    Join Date
    Mar 2003

    Thank u!

    I have modified FullCanvas.java and it works!
    Great ! Thank u!

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts