Good idea, but I can see immediately how anti-lvl can be adjusted to get around this with only a couple of lines of xml. I don't want to be dismissive of all the effort you've done here, but I've spent just as much time coming up with cunningly similar solutions only to see them broken by a single line of code added by a smali hack.
So, to get around your issue, it simply requires you to stick this in the xml in anti-lvl: 1. Find a method in the app that accepts a Context, String, String as parameters 2. If this method includes a mention to getCrc() method of the class ZipEntry then continue. 3. Stick a "return" to the top of the method. I'm deliberately being vague here, but anyone who has looked in anti-lvl should be able to see that getting round your fix is *exactly* the sort of thing anti-lvl has been built for. However you can make this better by using the value of the crc for something in the app - e.g. compute the id for the main layout from the value of the crc and other fields added/subtracted/multiplied/etc. (NOTE: just an example, the id *may* change over time). If you can do something like that then if they hack the app to exit the method too soon, the app won't have the constructed the required value and later parts will fail. I strongly suggest splitting your method detailed above into several small pieces, chuck them about in many different abstract parts of the app. Call them in different orders and at random points through the app to construct a yes/no answer eventually. Don't make your app do this doing startup (as that's easy to spot), try spawning a background thread to do this after a random few seconds - don't make it to killProcess as that also sticks out to a hacker. Make it do something else like change important static values to something that is invalid and i.e. when they open the menu they get a nullpointer, etc, etc. All these things will help make it harder and give several more targets to aim for. Alternatively, a much more robust solution can be bought to you with the letters n, d, and k. :-) I really hope that helps you, good luck! -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/android-developers?hl=en

