Discussion Board

Results 1 to 5 of 5
  1. #1
    Registered User ross666's Avatar
    Join Date
    Mar 2003
    Posts
    19
    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 autoexec's Avatar
    Join Date
    Mar 2003
    Posts
    34
    Hi,

    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();

    to

    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 romtic's Avatar
    Join Date
    Apr 2003
    Posts
    1
    Hi,

    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.

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

  4. #4
    Registered User newmania's Avatar
    Join Date
    Mar 2003
    Posts
    35
    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?

    Thanks,

    Tommy

  5. #5
    Registered User bluesharp's Avatar
    Join Date
    Mar 2003
    Posts
    2
    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
  •  
Nokia Developer aims to help you create apps and publish them so you can connect with users around the world.

京ICP备05048969号  © Copyright Nokia 2013 All rights reserved