ItelliJ JDEA是开发JAVA程序的比较nice的IDE,但是Ultimate版却需要付费,不过没关系,咱们可以破解之,下面介绍怎么获取IntelliJ IDEA授权码。\
成都创新互联从2013年创立,先为内黄等服务建站,内黄等地企业,进行企业商务咨询服务。为内黄企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。
安装好的Ultimate版的ItelliJ IDEA。
一台安装了JDK的电脑。
下载ItelliJ IDEA授权码生成器。
在电脑上运行命令:java -jar IntelljIdea授权码生成器.jar
将会弹出授权码生成对话框。
在对话框的name处填写被授权的名字,可以随便写自己喜欢的英文名,Version处选择与自己ItelliJ IDEA版本一致的版本,点击“Generate”按钮
复制生成的key。
打开ItelliJ IDEA,点击“Help”,点击“Register”。
选择“License key”填写刚才的name和生成的key到对应的位置,如果正确,key会变成绿色的,然后点击"OK"。
授权教程重要的前提:程序装在卡上,而且只能授权是JAVA程序。
一、以内存卡方式连接到电脑上,进入 X:\.system\java\DownloadApps\ (X指你的SD卡的盘符),所有安装在SD卡的程序都在这个目录里面MIDlet20000、MIDlet20001、MIDlet20002等,装的软件不同,顺序不同,这些文件夹的名字也不同。
二、如果你要授权的软件是最后一个安装的,进入最后一个MIDlet2xxxx目录,选择registry.txt文件,用UltraEdit将这个文件打开,也可以用记事本打开;
三、找到“Domain: Untrusted”这个一行,把“Domain: Untrusted”改成“Domain: Manufacturer”,注意冒号后面有一个空格!
四、保存退出。
五、进入手机菜单选择刚才那个修改的那个JAVA程序,在程序上点--选项--管理--查看许可,这个时候所有的许可都已经变成从不询问,但是还要重新再点一遍的。详细资料来源;highlight=%CA%DA%C8%A8
你可以使用以下代码代替你的 ACTION_CALL(推荐):
Intent intent = new Intent(Intent.ACTION_DIAL);
也可以参考这里,在 manifest 中添加
android.permission.PHONE_CALL
的权限,并且在拨打电话之前检验权限:
//检查是否已经给了权限
int checkpermission= ContextCompat.checkSelfPermission(getApplicationContext(),Manifest.permission.ACCESS_FINE_LOCATION);
if(checkpermission!=PackageManager.PERMISSION_GRANTED){ //没有给权限,申请
//参数分别是当前活动,权限字符串数组,requestcode
ActivityCompat.requestPermissions(MainActivity.this,new String[]{Manifest.permission.ACCESS_FINE_LOCATION}, 1);
// 暂时使用 DIAL 代替 CALL
Intent intent = new Intent(Intent.PHONE_DIAL);
intent.setData(Uri.parse("tel:"+number));
startActivity(intent);
} else {
// 直接使用 CALL
Intent intent = new Intent(Intent.PHONE_CALL);
intent.setData(Uri.parse("tel:"+number));
startActivity(intent);
}
然后添加一个方法:
@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
super.onRequestPermissionsResult(requestCode, permissions, grantResults);
//grantResults数组与权限字符串数组对应,里面存放权限申请结果
if(grantResults[0]== PackageManager.PERMISSION_GRANTED){
// 放已授权的处理方法
}else{
// 放拒绝授权的处理方法
Toast.makeText(MainActivity.this,"拒绝授权",Toast.LENGTH_SHORT).show();
}
}
参考:CSDN
通过获得系统时间来解决:
解决方法:当安装程序的时候获得系统时间,然后得到10天后的日期,每次启动软件都会先检测时间,如果没有激活,到第10天的日期就不让他使用了!
优点:实现简单
缺点:可以通过修改系统时间来无限使用
看 “java.io.File” 的一个 createNewFile 方法。
它先检查权限,然后才开始执行操作。
这个授权的配置是通过命令行参数 java.exe -Djava.security.policy=aaa.policy 来启用的。这里面应该包括关于 File 的权限才能让这段代码工作,否则得到的是 PermissionException。
编写权限 policy 文件的话可以使用 %JDK%/bin/policytool.exe。
从这个代码中看来,如果你也希望提供自己的权限类型,你也可以这么在代码中写上。不过基本上如果这个代码本身没有先检查权限的话,这种授权也无法实现。
public boolean createNewFile() throws IOException {
SecurityManager security = System.getSecurityManager();
if (security != null) security.checkWrite(path);
return fs.createFileExclusively(path);
}
上面这种授权相当于授与某个程序的。而不区分当前调用程序的人是谁。JAAS 这种则是为了解决“向谁就某事授权”的问题。一般我们登录是用 JAAS 这种授权,它能区分出“谁”和“某件事”。
就类似于密码登录呗,先获取硬盘序列号,然后序列号随你变化就行,如果密码不正确,系统推出不就行了?