/*
* Copyright (C) 2009 University of Washington
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
* in compliance with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software distributed under the License
* is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
* or implied. See the License for the specific language governing permissions and limitations under
* the License.
*/
package org.odk.collect.android.utilities;
import java.io.UnsupportedEncodingException;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLDecoder;
import android.content.Context;
import android.database.Cursor;
import android.net.Uri;
public class UrlUtils {
public static boolean isValidUrl(String url) {
try {
new URL(URLDecoder.decode(url, "utf-8"));
return true;
} catch (MalformedURLException e) {
return false;
} catch (UnsupportedEncodingException e) {
return false;
}
}
public static String getPathFromUri(Uri uri, Context context) {
if (uri.toString().startsWith("file")) {
return uri.toString().substring(6);
} else {
// find entry in content provider
String colString = null;
Cursor c = null;
try {
c = context.getContentResolver().query(uri, null, null, null, null);
c.moveToFirst();
// get data path
colString = c.getString(c.getColumnIndex("_data"));
} finally {
if ( c != null ) {
c.close();
}
}
return colString;
}
}
}