私のAndroidアプリでは、読み取り専用ファイルをコピーして、新しいバージョンも読み取り専用にできるようにしたいと考えています。
宛先ファイルでsetReadOnly()メソッドを使用すると、falseが返され、失敗したことが示されます。もちろん、ファイル自体をチェックすると、読み取り専用属性が設定されていないことが示されます。
--編集--DavidGivenが以下に示唆しているように、これはSDカード上のファイルにのみ適用されます。内部ファイルはsetReadOnly()で適切に動作します。
マニフェストファイルに行が<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
あり、アプリで他のあらゆる種類のファイル操作を正常に実行できます。
解決策を探しているときに、Linuxコマンドを使用している人を何人か見ましたが、これは「汚い」方法だと言われました。代わりの「クリーンな」方法がありますか?
私が書いているアプリは、関連する場合はAndroid2.1を使用しています。