Cocos2d-x game released defense article 01: preventing package party tips

Source: Internet
Author: User
Tags android games


In fact, I don't have much experience in this aspect, and I have no profound experience, but I once had four or five games packaged (Xiao RuO: show off your failure ).

Although the title of this article is "defense article 01", it does not mean that there must be "defense article 02", but it is random. (Do you dare to take responsibility ?)

 

Here, let's take a look at what is called a package party.

Package the party is a profession, a glorious profession. They download the installation packages of others' games, decompile the packages, add their own advertisements, and re-package and upload the packages to various markets, to seek benefits.

Don't underestimate them. Some package parties are more moist than we are.

 

What? Are you happy? You don't want to join them, do you?

Of course, I won't block everyone. I wrote this article to those who really like to create games. As for those who like to be opportunistic, I will keep them up with you ~

 

OK, whether the package party is legitimate or not, but they are the enemy of our game creators, which is beyond doubt.

Next, I will talk about some tips on how to prevent the package party from using my experience, and I am based on Android games.

 

What do you mean? Flowers? No, it's your heart ~

Reprinted please note, original address: http://www.benmutou.com/archives/1202

Source: dummies and Game Development

 

 

1. code obfuscation

Android itself can be obfuscated with code, and there is nothing magical about code obfuscation. It is to convert our class name, variable name, and method name into various abcd, so that normal people cannot understand the code.

This method may block a small part of the lazy package party, but it is also a profession, and there are also high and low points in it.

Code obfuscation? Haha, for some packaging parties, there is no pressure to re-package and upload for you.

In addition, it is said that IOS can also be confused. Currently, I only pay attention to Android, and the rest is unclear.

 

2. Online Detection package name and version number

If your game requires a network environment, you can add a mechanism to the game to obtain the package name (such as com. benmutou. game. HenHaoWan) and version number of the game installation package.

The package name and version number Android API provides an interface. You can find it by Baidu.

Each time a game is opened, the package name and version number are obtained, and then the network is connected to which network is detected? For example, if you use umeng for statistics, you can use umeng's online parameters.

In the online parameters, enter the package name and the latest version number of your game. Then, compare the online parameters with the actual package name and version number in the game. What should I do if they are inconsistent? Crash! The review of the game packaged by the package party fails.

 

However, in fact, some markets are not manually reviewed. Even games that crash upon opening may pass the review.

 

3. Local detection package name and version number

What should I do for games that do not require Internet connection? Well, in fact, non-online games do not make much sense to us (because we cannot put our own ads ).

In fact, the local detection is also the same. Get the version number and package name, and then write a version number and package name in the code before each game is packaged. when running the game, compare it.

I found that I was not able to handle the problem ~

 

Do you think the comparison package name and version number are invincible? The package party cannot do it, right?

In fact, the version number and package name are obtained from the Android end. You only need to write the package name and version number to your original package name and version number in the Android code, then you will be able to successfully cheat.

Therefore, we can try to write the code for getting the package name and version number as complicated as possible. For example, to create several classes, we use them to get the package name and version number. Creating many functions is the same function, but the name is different.

In the end, only one of them looks the most inconspicuous. The premise is that you still remember which O_O you are using.

 

4. Reinforcement

All right, all of the methods mentioned above have vulnerabilities, which cannot prevent the package party. Our personal strength is limited.

It doesn't matter. Companies also see this status, indicating that the opportunity to make money has come, so various reinforcement and encryption services have emerged.

 

This is definitely a good thing. It is much easier for companies to support our developers.

In fact, all kinds of reinforcement services are similar, so we can choose what we like.

 

Currently, I know the following reinforcement services:

Love encryption: http://www.ijiami.cn/

Administrative Assistant: http://www.bangcle.com/


 

Reinforcement services are easy to use:

1. upload your game installation package to their website

2. Wait for a period of time, which may be 5 to 10 minutes.

3. After reinforcement is completed, download the reinforced installation package

4. Use the signature tool to re-sign your installation package

 

At present, I will be very lazy to use the reinforcement service for reinforcement. As for how it works, I dare not talk about it.

As the saying goes, if there is a compilation, there will be a decompilation; if there is encryption, there will certainly be decryption; if there is reinforcement, there will naturally be a solution.

However, these reinforcement and encryption companies are always more qualified than ourselves to compete with the package party.

Therefore, I choose to believe it.

 

5. The package has been packed by the package party. What should I do?

What should I do if the game is packed by a package party like you used?

I have two options: ignore or appeal.

Generally, the background interfaces of more formal market developers have the appeal reporting function. Generally, if you send your game to the backend of GooglePlay, You Can unmount the repackaging game.

It may be less convenient for small markets, but those markets won't bring several downloads to my games in a week, so I usually don't care.

 

If the background of the market does not support complaint reporting, contact customer service, QQ, or email.

Do not be embarrassed to contact customer service. There are many more requests to contact customer service. Even if you contact them, they serve customers ~ (But do not disturb others when it comes to chicken skins)

 

My packaged games can be removed after appeal.

 

 

Okay, let's talk about that much ~

If you still have better anti-packaging skills (mainly more lazy and practical), leave a message.


Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.