【9秒自研】干掉敌对手机应用进程的SDK——Gingo SDK
Gingo sdk应用于cocos2d-x跨平台开发,针对android平台,用于检测系统中是否存在与当前安装程序可能冲突的应用程序,Gingo SDK包括ProcessJni.cpp,ProcessJni.h和procesdetect.jar,notice.xml四个文件,具体使用方法如下(以下步骤均为mac下进行,windows下没有试过,不过在使用上应该没问题,有可能会出现路径错误等问题,需根据实际出现的错误做相应的修改)。
#include ProcessJni.hA.在Xcode下的工程中,将ProcessJni.cpp和ProcessJni.h复制进Classes文件夹,在程序的入口处,例如HelloWorld.cpp,在其对应的初始化方法中将ProcessJni类的startCallJni()方法调入.
打开ProcessJni.cpp找到getStaticMethodInfo()方法,修改此方法的第二个参数,此参数对应于自己eclipse下的工程的包名+启动类名,这需要自己手动修改。例如例子使用的路径是”org/com/JarTest/JarTest”,”org/com/JarTest”为包名,”JarTest”为src下的类名。
B.打开eclipse,右击工程New->Source Folder,文件夹的name为lib,将procesdetect.jar复制进此文件夹,右击procesdetect.jar->add build path,在Referenced Libraries可以看见刚添加进去的jar包。
将notice.xml复制进入src目录,和其他package平级,不要放进其他package,以免出现不必要的错误,打开notice.xml可以看见里面有package_name和notify_message两个标签,此处使用者可以自己编辑里面内容。第一项是有可能冲突的包名,假如本应用和QQ音乐程序冲突,则在此处填写上QQ音乐的安装包名,进入应用程序后,如果系统有QQ音乐的进程在运行,则会提示是否要关闭QQ音乐(当然,去查看完整的包名是比较麻烦的,填写包名时也可以只填写其中一个字段,这个字段最好和其他应用程序包名有明显的区别,通常包名都为com.Mycompany.appname,所以一般填写公司名。比如QQ音乐的应用程序的包肯定都会有tecent这一字段)。
第二个字段为一般的弹出框的提示信息,没什么限制。
C.打开eclipse下的工程,在src下找到你创建工程时生成的类,打开此类,添加如下代码。
private static Handler handler;同时在onCreate()方法中添加如下代码,
handler = new Handler(){D.打开AndroidManifest.xml,将如下代码加入Application节点
<activity android:name="org.com.TestFirst.ProcessDet"添加权限:
<uses-permission android:name="android.permission.KILL_BACKGROUND_PROCESSES"/>这样,SDK的接入已经完成。
Gingo SDK下载地址:
http://www.9miao.com/thread-43873-1-1.html