0

私のモバイルアプリケーションを使用してSDカードにデータ(.csv)を保存しようとすると、appceleratorを使用して開発します。アンドロイド6以上のappceleratorを使用してSDカードにデータを保存

アンドロイド5以下では、csvはSDカードに保存できますが、アンドロイド6と7ではファイルが見つかりません。

私はこのコードを使用しています:コードhttp://docs.appcelerator.com/platform/latest/#!/guide/Filesystem_Access_and_Storage

からTi.Filesystem.externalStorageDirectoryは

exports.exportCsvData = function(input) 
{ 
var rowTxt = ""; 
for(var i=0;i < input.length; i++){ 
    for(var j = 0; j < input[i].length; j++){ 
     rowTxt += '"' + input[i][j] + '"'; 

     if(j < (input[i].length-1)) 
     { 
      rowTxt += ','; 
     } 
    } 
    rowTxt += '\n';// adding new line at end of row 
} 

// creating output file in application data directory 
// option 1 
    var outputFile = Ti.Filesystem.getFile(Ti.Filesystem.externalStorageDirectory,'output.csv'); 

outputFile.write(rowTxt); 


if(outputFile.exists){ 
    alert("CSV generated!!!"); 
} 

return outputFile.nativePath; 
}; 

である私もSDカードにファイルを保存する権限を与える:

<manifest> 
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> 
</manifest> 

この問題を解決するのに役立ちます。

答えて

0

Android 6.0以降では、実行時に特定のアクセス許可を求める必要があります。

http://docs.appcelerator.com/platform/latest/#!/api/Titanium.Android

あなたがそれを行うことができる方法の例があります: あなたはここで、「アクセス権」セクションを確認することができます。 Androidの側の より詳細な説明は、あなたがここで見つけることができます答えを

https://developer.android.com/training/permissions/requesting.html

+0

感謝を:) –

関連する問題