将Nativescript升级到6后,缺少android.support.v4并且项目无法编译

时间:2019-07-18 06:08:00

标签: nativescript android-support-library nativescript-angular

将Nativescript升级到6个 android.support.v4 库后,我的项目无法编译并抛出以下错误:

  

错误TS2339:类型'typeof v4'上不存在属性'文本'

  

错误TS2339:类型'typeof v4'上不存在属性'widget'

这就是我在做什么:

android.support.v4.widget.TextViewCompat.setAutoSizeTextTypeWithDefaults((this.whatLabel.nativeElement as Label).android, android.support.v4.widget.TextViewCompat.AUTO_SIZE_TEXT_TYPE_UNIFORM);

android.support.v4.text.BidiFormatter.getInstance(new java.util.Locale("iw")).unicodeWrap(text, android.support.v4.text.TextDirectionHeuristicsCompat.RTL)

我的 reference.d.ts 文件包含以下行:

<reference path="../node_modules/tns-platform-declarations/android-22.d.ts" />

也尝试过

<reference path="../node_modules/tns-platform-declarations/android.d.ts" />

enter image description here

2 个答案:

答案 0 :(得分:0)

自v6.0支持库起,不再受支持。

Migrating to v6.0 / AndroidX

  

NativeScript 6.0支持Android扩展库(AndroidX)。不再支持Android支持库。依赖于支持库的任何应用程序和插件代码都必须开始使用AndroidX。要了解如何迁移,请遵循dedicated blog post

答案 1 :(得分:0)

最后找到了解决方案。 刚刚添加了“全局”。像这样在“ android”之前:

global.android.support.v4.widget.TextViewCompat.setAutoSizeTextTypeWithDefaults((this.whatLabel.nativeElement as Label).android, global.android.support.v4.widget.TextViewCompat.AUTO_SIZE_TEXT_TYPE_UNIFORM);

global.android.support.v4.text.BidiFormatter.getInstance(new java.util.Locale("iw")).unicodeWrap(text, global.android.support.v4.text.TextDirectionHeuristicsCompat.RTL)