. \ key.p12: abierto fallido: ENOENT (No hay tal archivo o directorio)
En mi aplicación Android accedo al almacenamiento en la nube de Google. He generado la llave privada xxxxxxxkey.p12 . He puesto mi archivo dominante en carpeta de los activos. Pero mientras ejecuta el proyecto no está abriendo el archivo key.p12. He intentado ponerlo fuera de la carpeta de activos, todavía no hay resultado.
httpTransport = AndroidHttp.newCompatibleTransport(); AssetManager am = getAssets(); InputStream inputStream = am.open("xxxxxxxxxxKey.p12"); File file = createFileFromInputStream(inputStream); GoogleCredential credential = new GoogleCredential.Builder() .setTransport(httpTransport) .setJsonFactory(JSON_FACTORY) .setServiceAccountId(xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx@developer.gserviceaccount.com") .setServiceAccountScopes(Collections.singleton(STORAGE_SCOPE)) .setServiceAccountPrivateKeyFromP12File(file).build();
createFileFromInputStream ()
- Si se proporciona un recurso dibujable para ldpi, mdpi, hdpi, xhdpi, este dibujable no necesita proporcionarse para nodpi?
- ¿Cómo se determinan los valores de identificador de recursos en Android?
- Cómo los recursos drawables almacenados en el dispositivo
- Programación de Scala para Android
- ¿Por qué Android está buscando los recursos QVGA en el orden incorrecto mdpi> hdpi> ldpi?
private File createFileFromInputStream(InputStream inputStream) { try { File f = new File("download/MyKey.p12"); OutputStream outputStream = new FileOutputStream(f); byte buffer[] = new byte[1024]; int length = 0; while ((length = inputStream.read(buffer)) > 0) { outputStream.write(buffer, 0, length); } outputStream.close(); inputStream.close(); return f; } catch (IOException e) { // Logging exception } return null; }
He hecho lo mismo en el proyecto java. ¿Qué hace la diferencia, es debido a Android? o la ruta de acceso a la ubicación del archivo es incorrecta?
- Excepción en el ajuste del color de fondo
- Androide. Obtener el tamaño de la imagen desde su id de recurso
- Tamaños de imagen de Android
- Calabash Android: Error de ruta de acceso al intentar ejecutar una prueba en un APK
- Descargar y reemplazar archivos de recursos de Android
- Android: Cómo obtener un recurso id de un recurso de Android
- IDs de Android protegidas en R.java
- Recursos compilados de Android - resources.arsc
Después de alguna lucha tengo mi respuesta, muchas gracias por su apoyo. ¡Pulgares hacia arriba!
Archivo se puede recuperar utilizando AssetManager y también podemos obtenerlo como un recurso bruto
Uso de AssetManager
AssetManager am = getAssets(); InputStream inputStream = am.open("xxxxxxxxxxKey.p12"); File file = createFileFromInputStream(inputStream);
Como recurso en bruto , coloque el archivo en la carpeta en bruto dentro del directorio res
InputStream ins = getResources().openRawResource(R.raw.keyfile); File file = createFileFromInputStream(ins);
Mientras escribo el archivo de salida tienes que especificar dónde pertenece realmente tu keyfile, en mi caso estoy usando android, estoy creando el archivo dentro del almacenamiento interno (emulador / dispositivo) dentro de la carpeta KeyHolder / KeyFile
private File createFileFromInputStream(InputStream inputStream) { String path = ""; File file = new File(Environment.getExternalStorageDirectory(), "KeyHolder/KeyFile/"); if (!file.exists()) { if (!file.mkdirs()) Log.d("KeyHolder", "Folder not created"); else Log.d("KeyHolder", "Folder created"); } else Log.d("KeyHolder", "Folder present"); path = file.getAbsolutePath(); try { File f = new File(path+"/MyKey"); OutputStream outputStream = new FileOutputStream(f); byte buffer[] = new byte[1024]; int length = 0; while ((length = inputStream.read(buffer)) > 0) { outputStream.write(buffer, 0, length); } outputStream.close(); inputStream.close(); return f; } catch (IOException e) { // Logging exception e.printStackTrace(); } return null; }
y eso es !
- ¿Cómo construir la biblioteca estática de C + + usando NDK en Android usando Android Studio con Gradle?
- Aplicación de Android se bloquea para algunos usuarios al aplicar la transformación con Picasso