Articles of uri

如何检查Uri指向的资源是否可用?

我有Uri指出的资源(音乐文件)。 在尝试使用MediaPlayer播放之前,如何检查它是否可用? 它的Uri存储在数据库中,所以当删除文件或卸载的外部存储时,我只是在调用MediaPlayer.prepare()时遇到exception。 在上面的情况我想玩系统默认铃声。 在我遇到上述exception后,我当然可以这样做,但也许有一些更优雅的解决方案? 编辑:我忘了提到音乐文件Uri实际上是通过使用RingtonePreference获得的。 这意味着我可以让Uri指向内部存储,外部存储或默认系统铃声上的铃声。 Uri的例子是: content:// settings / system / ringtone – 用于选择默认铃声 content:// media / internal / audio / media / 60 – 用于内部存储上的铃声 content:// media / external / audio / media / 192 – 用于外部存储上的铃声 我对提议的“新文件(路径).exists()方法很满意,因为它将我从提到的exception中保存下来,但过了一段时间后我注意到它为我的所有铃声选择返回false …还有其他想法吗?

Uri.parse()总是在unit testing中返回null

这个简单的unit testing总是通过,我无法弄清楚原因。 @RunWith(JUnit4.class) class SampleTest { @Test testSomething() { Uri uri = Uri.parse(“myapp://home/payments”); assertTrue(uri == null); } } 到目前为止我尝试使用的是“传统”URI( http://example.com ),但uri也是null 。

java,android,解析url,重定向到uri

我有一个身份validation受保护的url:www.domain.com/alias 请求时将返回另一个url:www.another.com/resource.mp4(未受保护) 我想知道在Java中是否存在一个方法,它将返回给定的url。 类似于:second = resolve(first) 我正在考虑加载第一个并尝试读取响应可能是location属性,但由于我不是java大师,我想知道Java是否已经面临这个问题。

如何监听自定义URI

我正在开发一个具有自己的URI前缀的应用程序。 (dchub://在这种情况下) 搜索到所有并阅读了很多,但我有点困惑。 当有人点击浏览器中以dchub://开头的链接时,是否可以启动我的应用程序? 到目前为止,在你的应用程序打开浏览器的过程中发现了很多例子,但这不是我想要的。 更新 非常感谢,我想,现在我有点陷入下一部分。 Uri data = getIntent().getData(); if (data.equals(null)) { } else { String scheme = data.getScheme(); String host = data.getHost(); int port = data.getPort(); } 如果我正常启动应用程序,我会得到一些nullpointerexception ,如果我从网页打开它可以正常工作。 所以我想包括一些检查nullvalue但是没有解决它。 任何建议我如何才能通过选择它来启动应用程序?

Android 2.2 MediaPlayer可以正常使用一个SHOUTcast URL但不能与另一个一起使用

请参阅我用于流式传输shoutcast流的代码,它适用于一个URL但不适用于另一个URL。 这个工作: Uri myUri = Uri.parse(“http://fr3.ah.fm:9000/”); 但不是这个: Uri myUri = Uri.parse(“http://someOtherURL”); SimpleMusicStream.java import android.app.Activity; import android.media.AudioManager; import android.media.MediaPlayer; import android.net.Uri; import android.os.Bundle; import android.util.Log; import android.view.View; import android.widget.Button; public class SimpleMusicStream extends Activity implements MediaPlayer.OnCompletionListener, MediaPlayer.OnPreparedListener, MediaPlayer.OnErrorListener, MediaPlayer.OnBufferingUpdateListener { private String TAG = getClass().getSimpleName(); private MediaPlayer mp = null; private Button play; private Button pause; […]

将java.net.URI转换为android.net.Uri

我能够find如何将android.net.Uri转换为Java.net.URI ,但反之亦然。 所以花了一些时间后我才明白了。 这是解决方案(如果有其他解决方案,那么请发布它) 首先将javaURI转换为字符串,然后使用android.net.Uri的解析函数 android.net.URI androidUri = android.net.Uri.parse(javaURI.toString());

获取Uri Android的真实路径

我正在开发一个VideoPlayer 。 我将启动的意图的URI转换为字符串,它给了我content://media/external….. 但我需要得到真正的道路。 例如: /storage/extSdcard…. 我该怎么做呢? 如果需要,这是我的代码: videoURI = getIntent().getData(); vv.setVideoURI(videoURI); videoName = videoURI.toString(); tvTitle.setText(videoName);

android.content.UriMatcher的含义

什么是android.content.UriMatcher Uri Matcher 如何使用它? 有人可以解释以下三行代码的含义吗? uriMatcher = new UriMatcher(UriMatcher.NO_MATCH); uriMatcher.addURI(PROVIDER_NAME, “cte”, uriCode); uriMatcher.addURI(PROVIDER_NAME, “cte/*”, uriCode); int res = uriMatcher.match(uri);

Image uri不会在某些Android设备上的ImageView上显示图像

我有一个ImageView。 当您单击ImageView时,它将打开图库,您将获取图像并在ImageView上显示它。 我有一个条件,当我关闭我的应用程序,然后我打开它,图像将保留在那里。 所以,为此,我将图像Uri存储在sharedprefrence上。 在打开应用程序时,我正在检索相同的Uri并尝试在imageView上显示图像。 然而在某些手机中 – 图像看起来像Mi(棒棒糖),三星(KitKat),但它不会出现在像摩托罗拉(Marshmallow),One Plus One(Marshmallow)这样的手机中。 知道为什么会这样吗? 这是我的代码 拿起我正在使用的图像 Intent intent=new Intent();intent.setType(“image/*”); intent.setAction(Intent.ACTION_GET_CONTENT); startActivityForResult(Intent.createChooser(intent, “Select Picture”), Constants.SELECT_PICTURE); 在OnActivityResult()代码上 @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if(requestCode==Constants.SELECT_PICTURE && resultCode==RESULT_OK && null!=data) { Uri uri=data.getData(); Picasso.with(UsersProfileActivity.this) .load(uri) .centerCrop() .resize(200,200) .into(img_photo); // This profile image i am storing […]

CursorLoader,获取本地数据库的URI

我是一个新手Android程序员,我最近跟着一个教程,该教程展示了如何创建一个本地SQLite数据库,然后使用SQLiteDatabase.rawQuery来返回一个Cursor来访问数据库。 我想修改我的应用程序以使用CursorLoader,这显然是访问数据库的更好方法。 我的问题是CursorLoader构造函数需要给出一个URI。 我只输入“file:/// [db to path]”? 似乎有点凌乱。