gpt4 book ai didi

android - android 内容提供程序中的 urimatcher

转载 作者:行者123 更新时间:2023-11-30 04:22:22 26 4
gpt4 key购买 nike

我是 Android 新手。我浏览了 Android ContentProvider 的代码,我对 UriMatcher 有点困惑,因为 static 中的语句将首先执行。在 UriMatcher 内的代码中,有一个 static block ,但不知道 PROVIDER_NAME。它如何使用它,因为在 PROVIDER_NAME 初始化之前,static block 应该运行。

public class CustomContentProvider extends ContentProvider {

public static final String PROVIDER_NAME =
"net.learn2develop.provider.Book";

public static final Uri CONTENT_URI =
Uri.parse("content://"+ PROVIDER_NAME + "/books");

public static final String _ID = "_id";
public static final String TITLE = "title";
public static final String ISBN = "isbn";

private static final int BOOKS = 1;
private static final int BOOK_ID = 2;

private static final UriMatcher uriMatcher;
static {
uriMatcher = new UriMatcher(UriMatcher.NO_MATCH);
uriMatcher.addURI(PROVIDER_NAME, "books", BOOKS);
uriMatcher.addURI(PROVIDER_NAME, "books/#", BOOK_ID);
}

任何帮助都会被大大接受......提前致谢

最佳答案

静态初始化代码按文本顺序运行。这包括静态字段和静态 block 。

PROVIDER_NAME 因此在静态 block 执行时已经初始化

关于android - android 内容提供程序中的 urimatcher,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9074378/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com