У меня есть Ури, хранящийся в виде строки. Я назвал его launchIntent:
Почему есть дополнительная часть, когда parseUri() String?
Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10000000 pkg=com.facebook.katana cmp=com.facebook.katana/.LoginActivity }<br/>
Когда я использую этот
Intent i = Intent.parseUri(launchIntent, 0); Log.d("ABC", i.toString());
Logcat дает это как значение i.toString():
Intent { act=android.intent.action.VIEW dat=Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10000000 pkg=com.facebook.katana cmp=com.facebook.katana/.LoginActivity } flg=0x10000000 }<br/>
Почему есть дополнительные { act=android.intent.action.VIEW dat=...
часть?
Потому что именно так вы его и установили. Исходная строка не является URI. – Henry
String - это намерение запуска Facebook, но я должен разобрать его на String для хранения в базе данных. В другом слове, если эта строка была намерением, я могу начать с нее Facebook. Как я могу превратить это в намерение без добавления или опускания чего-либо? Это уже намерение, которое мне нужно, но единственная проблема в том, что он находится в String. – user4407462
@henry нет, это не так. Дополнительная часть просмотра проистекает из того факта, что это действие по умолчанию используется, когда формат проанализированного URI не соответствует таковому, заданному «Intent # toUri()», то есть, когда парсер выглядит как «errr I dunno what вы пытаетесь разобрать ». – ataulm