今日の驚くべき発見:Android上のJNIを使用すると、Javaのルールに従って、想定外のオブジェクトフィールドにアクセスできます。
アクセス制限を回避するこの機能はどこかに文書化されていますか?これは公式のJNIの動作ですか、それともJNIのAndroidフレーバーに固有のものですか?これは未定義の動作ですか?OOP警察は今すぐ私のために来ますか?
未公開のオブジェクトフィールドに依存することは本質的に危険であり、いつでも壊れることがあることを理解しています。それはここでの問題ではありません。
更新:API28をターゲットとするアプリケーションにはこの機能がなくなったようです。