- Siêu lớp và danh mục iOS/Objective-C
- object-c - -1001 lỗi khi NSURLSession vượt qua httpproxy và /etc/hosts
- java - Nhận địa chỉ url bằng lớp mạng
- ios - Âm thanh không phát trong thông báo đẩy
IllegalArgumentException: Nội dung URL không xác định://
^ Gặp ác mộng về những điều trên. Tôi đã kiểm tra các biến và đường dẫn của mình nhưng không thấy vấn đề là gì? Cảm ơn rất nhiều vì bất kỳ gợi ý nào!
Đây là dấu vết của tôi.
java.lang.IllegalArgumentException: URL không xác định
nội dung://com.purewowstudio.topmovies.data.FilmProvider/film_data
tại android.content.ContentResolver.insert(ContentResolver.java:1203)
tại com.purewowstudio.topmovies.data.DatabaseHelper.addFilm(DatabaseHelper.java:52)
tại com.purewowstudio.topmovies.fragments.FilmList$getFilms.onPostExecute(FilmList.java:72)
tại com.purewowstudio.topmovies.fragments.FilmList$getFilms.onPostExecute(FilmList.java:62)
tại android.os.AsyncTask.finish(AsyncTask.java:632)
tại android.os.AsyncTask.access$600(AsyncTask.java:177)
tại android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:645)
tại android.os.Handler.dispatchMessage(Handler.java:102)
tại android.os.Looper.loop(Looper.java:135)
tại android.app.ActivityThread.main(ActivityThread.java:5262)
tại java.lang.reflect.Method.invoke (Phương thức gốc)
tại java.lang.reflect.Method.invoke(Method.java:372)
tại com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:898)
tại com.android.internal.os.ZygoteInit.main(ZygoteInit.java:693)
nhà cung cấp nội dung
lớp công khai FilmProvider mở rộng ContentProvider {
chuỗi cuối cùng tĩnh công khai TABLE_NAME = "film_data";
chuỗi tĩnh cuối cùng AUTHORITY = "com.purewowstudio.topmovies.data.FilmProvider";
cuối cùng tĩnh công khai Uri CONTENT_URI = Uri.parse("content://" + AUTHORITY + "/" + TABLE_NAME);
chung tĩnh int PHIM = 1;
chung kết tĩnh int FILMS_ID = 2;
cuối cùng tĩnh công khai UriMatcher sURIMatcher =
UriMatcher mới(UriMatcher.NO_MATCH);
tĩnh {
sURIMatcher.addURI(AUTHORITY, TABLE_NAME, PHIM);
sURIMatcher.addURI(TÁC QUYỀN, TABLE_NAME + "/#",
FILMS_ID);
}
mDB DatabaseHelper riêng tư;
boolean công khai onCreate() {
mDB = Trình trợ giúp cơ sở dữ liệu mới (getContext(), null, null, 1);
trả về sai;
}
@Ghi đè
Chuỗi công khai getType(Uri uri) {
return null;
}
@Ghi đè
truy vấn con trỏ công khai(Uri uri, chuỗi [] chiếu, lựa chọn chuỗi, chuỗi [] lựa chọnArgs, chuỗi sắp xếp) {
SQLiteQueryBuilder queryBuilder = SQLiteQueryBuilder mới();
queryBuilder.setTables(MovieDataContract.TABLE_NAME);
int uriType = sURIMatcher.match(uri);
chuyển đổi (uriType) {
trường hợp FILMS_ID:
queryBuilder.appendWhere(MovieDataContract.FilmEntry._ID + "="
+ uri.getLastPathSegment());
phá vỡ;
trường hợp PHIM:
phá vỡ;
default:
ném IllegalArgumentException mới ("URI không xác định");
}
Con trỏ trỏ = queryBuilder.query(mDB.getReadableDatabase(),
phép chiếu, lựa chọn, lựa chọnArgs, null, null,
sắp xếp);
con trỏ.setNotificationUri(getContext().getContentResolver(),
uri);
trả về con trỏ;
}
@Ghi đè
chèn Uri công khai(Uri uri, giá trị ContentValues ) {
int uriType = sURIMatcher.match(uri);
SQLiteDatabase sqlDB = mDB.getWritableDatabase();
id dài = 0;
chuyển đổi (uriType) {
trường hợp PHIM:
id = sqlDB.insert(MovieDataContract.TABLE_NAME,
null, giá trị);
phá vỡ;
default:
ném IllegalArgumentException mới ("URI không xác định:"
+uri);
}
getContext().getContentResolver().notifyChange(uri, null);
return Uri.parse(MovieDataContract.TABLE_NAME + "/" + id);
}
Lớp trợ giúp cơ sở dữ liệu
lớp công khai DatabaseHelper mở rộng SQLiteOpenHelper {
Trình phân giải nội dung riêng myCR;
public DatabaseHelper(Ngữ cảnh, Tên chuỗi,
Nhà máy SQLiteDatabase.CursorFactory, phiên bản int) {
super(ngữ cảnh, MovieDataContract.DATABASE_NAME, nhà máy, MovieDataContract.DATABASE_VERSION);
myCR = bối cảnh.getContentResolver();
}
@Ghi đè
khoảng trống công khai onCreate(SQLiteDatabase db) {
db.execSQL(MovieDataContract.FilmEntry.SQL_CREATE_TABLE);
}
@Ghi đè
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL(MovieDataContract.FilmEntry.DELETE_TABLE);
onCreate(db);
}
public void addFilm(Phim phim){
SQLiteDatabase db = this.getWritableDatabase();
Giá trị ContentValues = new ContentValues();
value.put(MovieDataContract.FilmEntry.COLUMN_FILM_TITLE, film.getTitle());
value.put(MovieDataContract.FilmEntry.COLUMN_FILM_RATING, film.getRating());
value.put(MovieDataContract.FilmEntry.COLUMN_FILM_RUNTIME, film.getRuntime());
value.put(MovieDataContract.FilmEntry.COLUMN_FILM_CRITICS, film.getCritics());
value.put(MovieDataContract.FilmEntry.COLUMN_FILM_AUDIENCE, film.getAudience());
value.put(MovieDataContract.FilmEntry.COLUMN_FILM_SYNOPSIS, film.getSynopsis());
value.put(MovieDataContract.FilmEntry.COLUMN_FILM_PROFILE, film.getProfile());
myCR.insert(FilmProvider.CONTENT_URI, giá trị);
db.insert(MovieDataContract.TABLE_NAME,
vô giá trị,
giá trị);
db.close();
}
danh sách
<ứng>ứng>
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:theme="@style/TopMoviesTheme" >
android:name=".MainActivity"
android:label="@string/app_name" >
android:name=".DetailFragment"
android:label="@string/title_activity_detail_fragment"
android:parentActivityName=".MainActivity" >
android:name="android.support.PARENT_ACTIVITY"
android:value="com.purewowstudio.topmovies.MainActivity" />
android:name=".data.filmProvider"
android:authorities="com.purewowstudio.topmovies.data.filmProvider"
android:exported="true">
câu trả lời hay nhất
Đầu tiên, di chuyển
trở nên <ứng dụng="">ứng>
đứa trẻ, không
.
2. Thay đổiandroid:exported="true"
至 android:exported="false"
, cho đến khi bạn bảo vệ được Nhà cung cấp nội dung
.Hiện tại, sau khi bạn khắc phục xong
Vị trí phần tử Như đã đề cập ở trên, bất kỳ ứng dụng nào cũng có thể đọc và ghi bất kỳ thứ gì trong nhà cung cấp của bạn, điều này khó có thể là điều người dùng mong muốn.
Về java - Ngoại lệ tham số bất hợp pháp: Nội dung URL không xác định: // NỘI DUNG, chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/29175716/
简而言之:我想从可变参数模板参数中提取各种选项,但不仅通过标签而且通过那些参数的索引,这些参数是未知的 标签。我喜欢 boost 中的方法(例如 heap 或 lockfree 策略),但想让它与 S
我可以对单元格中的 excel IF 语句提供一些帮助吗? 它在做什么? 对“BaselineAmount”进行了哪些评估? =IF(BaselineAmount, (Variance/Baselin
我正在使用以下方法: public async Task Save(Foo foo,out int param) { ....... MySqlParameter prmparamID
我正在使用 CodeGear RAD Studio IDE。 为了使用命令行参数测试我的应用程序,我多次使用了“运行 -> 参数”菜单中的“参数”字段。 但是每次我给它提供一个新值时,它都无法从“下拉
我已经为信用卡类编写了一些代码,粘贴在下面。我有一个接受上述变量的构造函数,并且正在研究一些方法将这些变量格式化为字符串,以便最终输出将类似于 号码:1234 5678 9012 3456 截止日期:
MySql IN 参数 - 在存储过程中使用时,VarChar IN 参数 val 是否需要单引号? 我已经像平常一样创建了经典 ASP 代码,但我没有更新该列。 我需要引用 VarChar 参数吗?
给出了下面的开始,但似乎不知道如何完成它。本质上,如果我调用 myTest([one, Two, Three], 2); 它应该返回元素 third。必须使用for循环来找到我的解决方案。 funct
将 1113355579999 作为参数传递时,该值在函数内部变为 959050335。 调用(main.c): printf("%d\n", FindCommonDigit(111335557999
这个问题在这里已经有了答案: Is Java "pass-by-reference" or "pass-by-value"? (92 个回答) 关闭9年前。 public class StackOve
我真的很困惑,当像 1 == scanf("%lg", &entry) 交换为 scanf("%lg", &entry) == 1 没有区别。我的实验书上说的是前者,而我觉得后者是可以理解的。 1 =
我正在尝试使用调用 SetupDiGetDeviceRegistryProperty 的函数使用德尔福 7。该调用来自示例函数 SetupEnumAvailableComPorts .它看起来像这样:
Tôi cần triển khai hiển thị một số sự kiện trên dự án hiện có. Tôi không thể thay đổi cấu trúc cơ sở dữ liệu. Trong Bộ điều khiển của tôi, tôi đang chuyển dấu thời gian (từ yêu cầu ajax) và tôi cần hiển thị 8 sự kiện trước đó. Vì vậy, nếu dấu thời gian là (sau khi chuyển đổi)
rails 新手。按照多态关联的教程,我遇到了这个以在create 和destroy 中设置@client。 @client = Client.find(params[:client_id] || p
通过将 VM 参数设置为 -Xmx1024m,我能够通过 Eclipse 运行 Java 程序-Xms256M。现在我想通过 Windows 中的 .bat 文件运行相同的 Java 程序 (jar)
我有一个 Delphi DLL,它在被 Delphi 应用程序调用时工作并导出声明为的方法: Procedure ProduceOutput(request,inputs:widestring; va
浏览完文档和示例后,我还没有弄清楚 schema.yaml 文件中的参数到底用在哪里。 在此处使用 AWS 代码示例:https://github.com/aws-samples/aws-proton
程序参数: procedure get_user_profile ( i_attuid in ras_user.attuid%type, i_data_group in data_g
我有一个字符串作为参数传递给我的存储过程。 dim AgentString as String = " 'test1', 'test2', 'test3' " 我想在 IN 中使用该参数声明。 AND
这个问题已经有答案了: When should I use "this" in a class? (17 个回答) 已关闭 6 年前。 我运行了一些java代码,我看到了一些我不太明白的东西。为什么下
我输入 scroll(0,10,200,10);但是当它运行时,它会传递字符串“xxpos”或“yypos”,我确实在没有撇号的情况下尝试过,但它就是行不通。 scroll = function(xp
Tôi là một lập trình viên xuất sắc, rất giỏi!