标签: android-file

在项目中存储声音文件的位置以及选择哪种解决方案来存储对它们的引用?

我正在制作一些花哨的应用程序,需要很多短音才能使用它.几乎没有问题你可以回答.

  • 我在android项目中存储的地方有一些限制吗?目前我把它们放在bin/res/sounds文件夹中.

  • 是否对文件格式有限制并且.wav可以吗?

  • 我需要一些东西来存储对那些声音的引用.我想出了一个字典,它包含一个声音名称(键)和一个文件路径,所以我可以使用这种方法:

    mp = MediaPlayer.create(Test.this, R.raw.mysound);

我应该如何存储R.raw.mysound,它不是一个字符串对吗?

我道歉如果我对一切都不太清楚,我会尽我所能.干杯

android android-music-player android-file

6
推荐指数
1
解决办法
7971
查看次数

如何在不使用"setImageBitmap()"的情况下使用png文件加载ImageView?

我对一个Bitmap对象进行了一些处理(质量改进和一些调整大小),然后bitmap.compress()通过给出一个文件名"myfile.png" 来使用函数存储它.

newbitmap = processImage(bitmap);
FileOutputStream fos = context.openFileOutput("myfile.png", Context.MODE_PRIVATE);
newbitmap.compress(CompressFormat.PNG, 100, fos);
Run Code Online (Sandbox Code Playgroud)

现在我想加载这个图像,ImageView但我不能用setImageBitmap()它来做.还有其他选择吗?

我无法使用的原因setImageBitmap()是我正在使用RemoteViews一个小部件,并且当图像很大时,使用位图方法会导致Failed Binder Transaction错误.

我尝试使用下面的代码设置图像uri,但图像不会加载到ImageView:

RemoteViews rv = new RemoteViews(context.getPackageName(), R.layout.widget_layout);

File internalFile = context.getFileStreamPath("myfile.png");
Uri internal = Uri.fromFile(internalFile);
rv.setImageViewUri(R.id.widgetImageView, internal);
updateAppWidget(awID, rv);
Run Code Online (Sandbox Code Playgroud)

谢谢你的帮助!

android android-imageview android-file

6
推荐指数
1
解决办法
2064
查看次数

使用EPUBLIB显示图像

我正在使用epublib在WebView中读取.epub文件.

WebView wv = (WebView) getView().findViewById(R.id.chaptercontent);
    try {
        String abspath = FILEPATH+file;
        File filePath = new File(abspath+".epub");   
        InputStream epubInputStream = new BufferedInputStream(new FileInputStream(filePath));
        book = (new EpubReader()).readEpub(epubInputStream);
        int pos = abspath.lastIndexOf('/');
        DownloadResource(abspath.substring(0, pos));
        try {
            for(int i = 1; i< book.getContents().size(); i++) {
                InputStream is = book.getSpine().getSpineReferences().get(i).getResource().getInputStream(); 
                BufferedReader reader = new BufferedReader(new InputStreamReader(is)); 
                StringBuilder sb = new StringBuilder(); 
                String line = null; 
                while ((line = reader.readLine()) != null)
                { 
                    sb.append(line + "\n");
                    Log.d("display line", line);
                } 
                is.close(); 
                wv.loadDataWithBaseURL(abspath.substring(0, pos)+"/", sb.toString(), …
Run Code Online (Sandbox Code Playgroud)

android epub android-webview android-file epublib

6
推荐指数
1
解决办法
1669
查看次数

Android中允许的最大文件路径是多少

这里的问题讨论了文件名长度限制,我对整体允许的路径长度感兴趣(如果重要的话).
这里有这个文件系统限制表,但我不确定哪个适用于哪个版本的Android.

filesystems android android-file

6
推荐指数
1
解决办法
4464
查看次数

图片未在图库中显示

使用intent启动默认摄像头,并使用以下路径将这些摄像头图像存储外部存储中:

File file = new File(Environment.getExternalStorageDirectory()
                   + File.separator + fileName);
Run Code Online (Sandbox Code Playgroud)

但它没有在画廊中显示.问题出现在nexus 4,7和带有OS 4.4.2的moto G设备上

我试着用

mContext.sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED, Uri
                .parse("file://" + Environment.getExternalStorageDirectory()))); 
Run Code Online (Sandbox Code Playgroud)

但它不起作用

android android-camera android-file

6
推荐指数
1
解决办法
655
查看次数

如何在Android中获取文件的绝对路径?

btnimport.setOnClickListener(new View.OnClickListener() {

 @Override

 public void onClick(View v) {


 Intent fileintent = new Intent(Intent.ACTION_GET_CONTENT);

 fileintent.setType("*/*");

            try {

                startActivityForResult(fileintent, requestcode);

            } catch (ActivityNotFoundException e) {

            }
        }
    });`
Run Code Online (Sandbox Code Playgroud)

我正在尝试在我的Android应用程序中导入sky.csv文件.

但是,当我选择文件时,我会得到:

IO例外:打开失败:ENOENT(没有这样的文件或目录)

我将检查路径:

日志>内容://com.android.externalstorage.documents/document/38F0-D5E4%3ADCIM%2Fsky.csv我正在使用这种方法获取路径

protected void onActivityResult(int requestCode, int resultCode, Intent data) 
{ 

if (data == null)

 return;

switch (requestCode) {

  case requestcode:

 Uri filepath1 = data.getData();

 String filepath = filepath1.toString();
Run Code Online (Sandbox Code Playgroud)

请帮我解决一下这个.我尝试了很多方法.但是,我没有得到任何适当的解决方案.

csv android android-intent android-file

6
推荐指数
1
解决办法
8607
查看次数

如何从MediaStore.File和MediaStore.File.FileColumn获取数据

我试图让所有文件名都包含音频文件我已经使用Mediastore来获取媒体商店音频,专辑,播放列表和音频数据,但我如何获得包含音频文件的文件或文件夹标题.这是我尝试过的代码,但它不正确,因为我无法设置External_Content_uri.这是我试过的代码.

  private void External() {
    try {
        String[] proj = {MediaStore.Files.FileColumns.TITLE,
                MediaStore.Files.FileColumns._ID,
                MediaStore.Files.FileColumns.PARENT,
                MediaStore.Files.FileColumns.DATA
        };// Can include more data for more details and check it.

        String selection =MediaStore.Files.FileColumns.MEDIA_TYPE+"=?";

        String[] selectionArgs = {"MediaStore.Files.FileColumns.MEDIA_TYPE_AUDIO"};

        String sortOrder = MediaStore.Audio.Media.TITLE + " ASC";

        Cursor audioCursor = getContentResolver().query(MediaStore.Files.getContentUri("\"external\""), proj, selection, selectionArgs, sortOrder);

        if (audioCursor != null) {
            if (audioCursor.moveToFirst()) {
                do {
                    int filetitle = audioCursor.getColumnIndexOrThrow(MediaStore.Files.FileColumns.TITLE);
                    int file_id = audioCursor.getColumnIndexOrThrow(MediaStore.Files.FileColumns._ID);
                    int fileparent = audioCursor.getColumnIndexOrThrow(MediaStore.Files.FileColumns.PARENT);
                    int filedata = audioCursor.getColumnIndexOrThrow(MediaStore.Files.FileColumns.DATA);
                    Mediafileinfo info = new Mediafileinfo(); …
Run Code Online (Sandbox Code Playgroud)

android mediastore android-file android-mediaplayer

6
推荐指数
1
解决办法
4929
查看次数

在 Android 中使用 SQLCipher 加密现有数据库

我的资产中有一个数据库文件,我将其复制到应用程序数据库文件夹中。复制后(它有效),我想用 SQLCipher 加密复制的数据库。

出于某种原因,我收到此错误:

Database: sqlite returned: error code = 26, msg = statement aborts at 5: [ATTACH DATABASE '/data/user/0/com.grandeguru.lagmeup/databases/AIRPORTS_DB.db' AS encrypted KEY 'password';] file is encrypted or is not a database

如果我用根资源管理器查看数据库,它仍然没有加密和可见,所以我认为错误与 encrypt 方法中的文件逻辑有关。

这是我创建的 DatabaseHelper 类的代码,它也管理来自资产的副本:

public class DatabaseHelper extends SQLiteOpenHelper {

private SQLiteDatabase myDB;
private Context context;
public static String DB_NAME = "AIRPORTS_DB.db";
public static String DB_PATH = "/data/data/com.grandeguru.lagmeup/databases/";
public static final int DB_VERSION = 1;


public DatabaseHelper(Context context) {
    super(context, DB_NAME, null, DB_VERSION);
    myDB.loadLibs(context);
    this.context = …
Run Code Online (Sandbox Code Playgroud)

database encryption android android-file sqlcipher

6
推荐指数
1
解决办法
2888
查看次数

android客户端解析多部分表单数据到非ascii

你能解释为什么android客户端将多重数据解析为非ascii聊天.虽然文件上传工作好使用postman这里是我的app.js代码

var multipart = require('connect-multiparty');
var apiRoutes = require('./routes/apiRoutes');
app.set('views', path.join(__dirname, 'views'));
app.use(logger('dev'));
app.use(bodyParser.json({limit: '50mb'}));
app.use(bodyParser.urlencoded([{extended: false},{ uploadDir:path.join(__dirname, 'uploads') }, {parameterLimit:100000}, {limit: '50mb'}]));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));
app.use(express.static(path.join(__dirname, 'uploads')));
app.use(multipart());
app.use(apiRoutes);
Run Code Online (Sandbox Code Playgroud)

和apiRoutes指向我的上传功能包含简单的print req param.using postman它工作得很好

console.log("mediaChat called", req.body, req.files);
Run Code Online (Sandbox Code Playgroud)

响应

mediaChat called { apiKey: '123' } { media: 
   { fieldName: 'media',
     originalFilename: 'default.png',
     path: '/tmp/KFnwsKGp-f4woTaBH6aPR-qa.png',
     headers: 
      { 'content-disposition': 'form-data; name="media"; filename="default.png"',
        'content-type': 'image/png' },
     size: 716,
     name: 'default.png',
     type: 'image/png' } }
Run Code Online (Sandbox Code Playgroud)

这是我的android客户端代码(注意这个代码工作文件与php $ _FILE但不使用快递)

com.info.acruss.wave;

import android.os.AsyncTask;
import android.util.Log;

import …
Run Code Online (Sandbox Code Playgroud)

android multipartform-data multipart node.js android-file

6
推荐指数
1
解决办法
306
查看次数

缺少android.support.FILE_PROVIDER_PATHS元数据

我正在尝试打开我下载并保存在外部存储中的pdf文件.但是当我打开我的应用程序时,它会崩溃并显示以下错误;

08-31 00:58:31.304 1807-1807/? E/AndroidRuntime: FATAL EXCEPTION: main
Process: medimanage.corporate.mobile, PID: 1807
    java.lang.RuntimeException: Unable to get provider android.support.v4.content.FileProvider: java.lang.IllegalArgumentException: Missing android.support.FILE_PROVIDER_PATHS meta-data
    at android.app.ActivityThread.installProvider(ActivityThread.java:5856)
    at android.app.ActivityThread.installContentProviders(ActivityThread.java:5445)
    at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5384)
    at android.app.ActivityThread.-wrap2(ActivityThread.java)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1545)
    at android.os.Handler.dispatchMessage(Handler.java:102)
    at android.os.Looper.loop(Looper.java:154)
    at android.app.ActivityThread.main(ActivityThread.java:6119)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)
      Caused by: java.lang.IllegalArgumentException: Missing android.support.FILE_PROVIDER_PATHS meta-data
    at android.support.v4.content.FileProvider.parsePathStrategy(FileProvider.java:586)
    at android.support.v4.content.FileProvider.getPathStrategy(FileProvider.java:557)
    at android.support.v4.content.FileProvider.attachInfo(FileProvider.java:375)
    at android.app.ActivityThread.installProvider(ActivityThread.java:5853)
    at android.app.ActivityThread.installContentProviders(ActivityThread.java:5445) 
    at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5384) 
    at android.app.ActivityThread.-wrap2(ActivityThread.java) 
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1545) 
    at android.os.Handler.dispatchMessage(Handler.java:102) 
    at android.os.Looper.loop(Looper.java:154) 
    at android.app.ActivityThread.main(ActivityThread.java:6119) 
    at java.lang.reflect.Method.invoke(Native Method) 
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886) 
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776) …
Run Code Online (Sandbox Code Playgroud)

android android-file android-fileprovider

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