我正在尝试使用IONIC构建APK文件。我跟踪了所有教程,一切正常,直到我尝试使用此命令构建APK:
$ ionic cordova build --release android
并告诉我这个错误:
$ ionic cordova build --release android
Running app-scripts build: --platform android --target cordova
[22:57:28] build dev started ...
[22:57:28] clean started ...
[22:57:28] clean finished in 9 ms
[22:57:28] copy started ...
[22:57:30] deeplinks started ...
[22:57:31] deeplinks finished in 416 ms
[22:57:31] transpile started ...
[22:57:38] transpile finished in 7.50 s
[22:57:38] preprocess started ...
[22:57:38] preprocess finished in less than 1 ms
[22:57:38] webpack started ...
[22:57:40] copy finished in 11.79 s
[22:57:57] webpack finished in 18.34 s
[22:57:57] sass started ...
[22:57:59] sass finished in 2.21 s
[22:57:59] postprocess started ...
[22:57:59] postprocess finished in 17 ms
[22:57:59] lint started ...
[22:57:59] build dev finished in 30.98 s
> cordova build android --release
You have been opted out of telemetry. To change this, run: cordova telemetry on.
Android Studio project detected
(node:7784) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): TypeError: Cannot read property 'variables' of undefined
(node:7784) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
[22:58:05] tslint: ...der (8)/App Source Code/App Source Code/src/providers/shared-data/shared-data.ts, line: 71
Property 'push' is declared but never used.
L70: public events: Events,
L71: private push: Push,
L72: public platform: Platform,
[22:58:05] tslint: ...der (8)/App Source Code/App Source Code/src/providers/shared-data/shared-data.ts, line: 8
'PushObject' is declared but never used.
L7: import { LoadingProvider } from '../loading/loading';
L8: import { Push, PushObject, PushOptions } from '@ionic-native/push';
L9: import { Device } from '@ionic-native/device';
[22:58:05] tslint: ...der (8)/App Source Code/App Source Code/src/providers/shared-data/shared-data.ts, line: 8
'PushOptions' is declared but never used.
L7: import { LoadingProvider } from '../loading/loading';
L8: import { Push, PushObject, PushOptions } from '@ionic-native/push';
L9: import { Device } from '@ionic-native/device';
[22:58:05] tslint: ...der (8)/App Source Code/App Source Code/src/providers/shared-data/shared-data.ts, line: 10
All imports are unused.
L9: import { Device } from '@ionic-native/device';
L10: import { Facebook } from '@ionic-native/facebook';
L11: import { FCM } from '@ionic-native/fcm';
[22:58:05] tslint: ...zm/Desktop/New folder (8)/App Source Code/App Source Code/src/pages/cart/cart.ts, line: 44
Property 'storage' is declared but never used.
L43: public toast: Toast,
L44: private storage: Storage,
L45: public events: Events,
[22:58:05] tslint: ...op/New folder (8)/App Source Code/App Source Code/src/pages/products/products.ts, line: 8
All imports are unused.
L7: import { TranslateService } from '@ngx-translate/core';
L8: import { share } from 'rxjs/operator/share';
L9: import { CartPage } from '../cart/cart';
[22:58:05] lint finished in 6.59 s
答案 0 :(得分:0)
构建应用程序与提供应用程序不同。由于您的应用需要尊重您所定位的平台的规范,因此限制性更强。 所以你必须纠正你在日志中看到的错误(比如删除你没有使用的一些变量或导入,例如:
`import { Device } from '@ionic-native/device';`
修改强> 你有未使用的进口。虽然这不是错误,但这是一个错误。因此,在构建应用程序时,您不应该这样做。 你也有一些未使用的私有变量所以请删除它们。 只需阅读日志,您就会知道错误的位置&要删除的内容。