小编Art*_*tem的帖子

从URI获取文件路径

我有Uri for Image文件.

我使用此代码从Uri获取文件路径:

public String getRealPathFromURI(Uri contentUri) {
    Cursor cursor = null;
    try {
        String[] proj = { MediaStore.Images.Media.DATA };
        cursor = mContext.getContentResolver().query(contentUri, proj, null, null, null);
        int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
        cursor.moveToFirst();
        return cursor.getString(column_index);
    } catch (Exception e) {
        Log.message(e.getMessage());
    } finally {
        if (cursor != null) {
            cursor.close();
        }
    }
    return null;
}
Run Code Online (Sandbox Code Playgroud)

如果我从Gallery应用程序(Android 4.4.2,arm-emu)中选择图像,

uri.getPath = /external/images/media/16 and it work's fine (My file path: /storage/sdcard/Download/0_cf15a_7800a7e5_orig.jpg)
Run Code Online (Sandbox Code Playgroud)

如果我从Documents app(Android 4.4.2,arm-emu)中选择图像,

 I have uri.getPath = /document/image:16 and function getRealPathFromURI returns …
Run Code Online (Sandbox Code Playgroud)

android android-contentresolver

8
推荐指数
1
解决办法
2万
查看次数

房间:未创建数据库

我尝试使用谷歌架构的房间库.我根据谷歌的BasicSample写了几个代码,但是没有创建数据库(对于我的代码).Logcat不包含错误和异常.请帮我找出错误:

//App.java
//...
public class App extends Application {
    private AppExecutors mAppExecutors;
    private static final String TAG = "App";

    @Override
    public void onCreate() {
        super.onCreate();
        Log.i(TAG, "onCreate: enter");
        mAppExecutors = new AppExecutors();
        getDatabase();
    }

    public AppDatabase getDatabase() {
        return AppDatabase.getInstance(this, mAppExecutors);
    }
}
Run Code Online (Sandbox Code Playgroud)

我的AppDatabase类看起来:

//AppDatabase.java
//...
@Database(entities = {Camera.class}, version = 1)
public abstract class AppDatabase extends RoomDatabase {
    private static final String DATABASE_NAME = "mydatabase";
    private static AppDatabase sInstance;
    private AppExecutors mExecutors;
    public abstract CameraDao cameraModel();

    public static AppDatabase …
Run Code Online (Sandbox Code Playgroud)

android android-room

8
推荐指数
1
解决办法
4936
查看次数