gpt4 book ai didi

android - DeepLinkDispatch - 不兼容的类型 : List cannot be converted to List
转载 作者:塔克拉玛干 更新时间:2023-11-02 23:01:06 36 4
gpt4 key购买 nike

按照 github page 上的教程进行操作我有:

添加到我项目的父级build.gradle:

dependencies {
classpath 'com.android.tools.build:gradle:2.3.0'
classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8' <---

// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}

添加到我的应用程序的build.gradle:

apply plugin: 'com.neenbedankt.android-apt'

...

compile 'com.airbnb:deeplinkdispatch:3.0.0'
apt 'com.airbnb:deeplinkdispatch-processor:3.0.0'

创建一个模块类并对其进行注解:

@DeepLinkModule
public class AppDeepLinkModule
{

}

现在,当我尝试构建时,它会显示上述错误消息:

Error:(12, 82) error: incompatible types: List<Object> cannot be converted to List<DeepLinkEntry>

然后它指向这个自动生成的类:

public final class AppDeepLinkModuleLoader implements Parser {
public static final List<DeepLinkEntry> REGISTRY = Collections.unmodifiableList(Arrays.asList(
)); <-- this line here

@Override
public DeepLinkEntry parseUri(String uri) {
for (DeepLinkEntry entry : REGISTRY) {
if (entry.matches(uri)) {
return entry;
}
}
return null;
}
}

我引用了他们的示例应用程序,我的似乎是一样的。 Here is a link到他们做同样事情的类(class)。

我完成了进一步的步骤,直到我需要使用自动生成的类以防这是问题所在,但这也没有解决问题。 AndroidManifest.xml:

<activity
android:name=".deeplink.DeepLinkActivity"
android:theme="@android:style/Theme.NoDisplay">
<intent-filter>
<action android:name="android.intent.action.VIEW"/>

<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>

<data
android:host="slackwebsocket"
android:scheme="http"/>
</intent-filter>
</activity>

DeepLinkActivity:

@DeepLinkHandler({AppDeepLinkModule.class})
public class DeepLinkActivity extends AppCompatActivity
{
@Override
protected void onCreate(@Nullable Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
}
}

我该如何解决这个问题?

最佳答案

当应用程序未指定任何深层链接目标时会出现此问题。在这种情况下,代码生成器会创建一个空列表,从而引发编译器错误。

您可以通过注释一个类来在句法上解决这个问题,例如一个Activity,带有@DeepLink:

@DeepLink("scheme://authority")
public class TargetActivity extends Activity {
}

代码生成器将向该列表添加一个元素。

关于android - DeepLinkDispatch - 不兼容的类型 : List<Object> cannot be converted to List<DeepLinkEntry>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43168268/

36 4 0