当id将android studio更新到3.6 android gradle工具到3.6.0时,出现问题。当我生成sign apk时,出现异常?是这样的
Execution failed for task ':app:minifyReleaseWithR8'.java.lang.NullPointerException (no error message)
* Exception is:
10:35:36.483 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:minifyReleaseWithR8'.
10:35:36.483 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$3.accept(ExecuteActionsTaskExecuter.java:166)
10:35:36.483 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$3.accept(ExecuteActionsTaskExecuter.java:163)
10:35:36.483 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.internal.Try$Failure.ifSuccessfulOrElse(Try.java:191)
10:35:36.483 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:156)
10:35:36.484 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:62)
10:35:36.484 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:108)
10:35:36.484 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.tasks.execution.ResolveBeforeExecutionOutputsTaskExecuter.execute(ResolveBeforeExecutionOutputsTaskExecuter.java:67)
10:35:36.484 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at org.gradle.api.internal.tasks.execution.ResolveAfterPreviousExecutionStateTaskExecuter.execute(ResolveAfterPreviousExecutionStateTaskExecuter.java:46)
....
Caused by: java.lang.NullPointerException
10:35:36.486 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at com.android.tools.r8.naming.A.a(:7)
10:35:36.486 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] at com.android.tools.r8.naming.A.c(:1)
10:35:36.487 …Run Code Online (Sandbox Code Playgroud) android gradle android-studio android-gradle-plugin cordova-plugin-proguard
据我从教程中了解到, pnpm.registry.npmjs.org在 下创建符号链接和其他条目点node_modules。我的项目已经启动typescript,我需要@types输入node_modules. 但这@types也有在node_modules/.registry.npmjs.org/@types。所以我收到如下错误:
/node_modules/.registry.npmjs.org/@types/jquery/3.3.5/node_modules/@types/jquery/index.d.ts(32,14): error TS2300: Duplicate identifier 'jQuery'.
...和
/node_modules/@types/jquery/index.d.ts(28,14): error TS2300: Duplicate identifier 'jQuery'.
tsconfig.json
{
"compilerOptions": {
"target": "es5",
"module": "commonjs",
"lib": [
"es5",
"dom",
"es2015.promise"
],
"experimentalDecorators": true,
"sourceMap": true,
"allowSyntheticDefaultImports": true
},
"include": [
"src/**/*"
],
"exclude": [
"node_modules",
"scripts",
"src/contracts"
]
}
Run Code Online (Sandbox Code Playgroud)
有什么想法如何解决吗?
我是jira python的新手,我希望有一个列表,其中包含使用现有过滤器获得的票证.
我试过jira.filter(id)但是接收了有问题的列表,我只收到了过滤器的名称.使用jira.search_issue正在工作,但因为我的过滤器可以被其他人改变,我需要一些会考虑过滤器内容的变化.有任何想法吗?谢谢!
使用这样的代码:
var remarkAbstract = require("remark");
var remark = remarkAbstract();
let remark = remarkAbstract();
var ast = remark.process(input);
Run Code Online (Sandbox Code Playgroud)
但它返回输出,如:
AssertionError: VFile {
contents: '# header\n\n20 December 2012\n\n\n\ncontent1\n\ncontent2\n\n## header2\n',
messages: =
Run Code Online (Sandbox Code Playgroud)
我想获得AST树这样
我正在使用 angularjs 开发 ionic 移动应用程序,为了加密 ionic 应用程序的源代码,我们使用 Cordova 插件“crypt file”在构建时加密代码。在进行APK逆向工程后,我们发现根文件夹“assets/www”按预期加密,但通过使用“java反编译器”工具,我们可以访问“java代码”插件源代码并获得解密密钥。
那么,有没有什么办法可以加密或隐藏插件文件夹,让攻击者无法通过APK看到我们在应用中使用了哪些插件呢?
提前致谢
encryption cordova ionic-framework cordova-plugins cordova-plugin-proguard
对不起,如果有人已经要求这个。我对 Stack 很陌生,我没有找到解决方案。
这是我缩小后从我的应用程序的使用中获得的堆栈。
08-29 13:27:30.330 10037-10192/? E/PluginManager: Uncaught exception from plugin
java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.res.XmlResourceParser android.content.pm.PackageItemInfo.loadXmlMetaData(android.content.pm.PackageManager, java.lang.String)' on a null object reference
at android.support.v4.content.FileProvider.parsePathStrategy(Unknown Source)
at android.support.v4.content.FileProvider.getPathStrategy(Unknown Source)
at android.support.v4.content.FileProvider.getUriForFile(Unknown Source)
at org.apache.cordova.camera.CameraLauncher.takePicture(Unknown Source)
at org.apache.cordova.camera.CameraLauncher.callTakePicture(Unknown Source)
at org.apache.cordova.camera.CameraLauncher.execute(Unknown Source)
at org.apache.cordova.CordovaPlugin.execute(Unknown Source)
at org.apache.cordova.PluginManager.exec(Unknown Source)
at org.apache.cordova.CordovaBridge.jsExec(Unknown Source)
at org.apache.cordova.engine.SystemExposedJsApi.exec(Unknown Source)
at org.chromium.base.SystemMessageHandler.nativeDoRunLoopOnce(Native Method)
at org.chromium.base.SystemMessageHandler.handleMessage(SystemMessageHandler.java:7)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:154)
at android.os.HandlerThread.run(HandlerThread.java:61)
Run Code Online (Sandbox Code Playgroud)
这是我的 proguard 文件:
# ionic
-keep class org.apache.cordova.** { *; }
-keep class …Run Code Online (Sandbox Code Playgroud) 这是我的原始代码:
Viewport = {
rotate: function () {
setTimeout(function () {
this.startRotate();
}, 1000);
}
startRotate: function () {
console.log('in')
}
}
Run Code Online (Sandbox Code Playgroud)
当我尝试运行 setTimeout 时:
setTimeout(this.startRotate(), 2000);
Run Code Online (Sandbox Code Playgroud)
它失败了,因为这样 setTimeoout 中的代码会立即运行..
在我的原始代码中,我得到“未定义不是函数”。
这是为什么?
android ×2
cordova ×2
javascript ×2
encryption ×1
gradle ×1
markdown ×1
plugins ×1
pnpm ×1
proguard ×1
python-jira ×1
symlink ×1
timeout ×1
typechecking ×1
types ×1
typescript ×1