42

リソース ファイルでこのUnicode 文字を使用したいと考えています。

しかし、私が何をしても、dalvikvm クラッシュで終了します (Android 2.3 および 4.2.2 でテスト済み):

W/dalvikvm( 8797): JNI WARNING: input is not valid Modified UTF-8: illegal start byte 0xf0
W/dalvikvm( 8797):              string: ''
W/dalvikvm( 8797):              in Landroid/content/res/StringBlock;.nativeGetString:(II)Ljava/lang/String; (NewStringUTF)
E/dalvikvm( 8797): VM aborting
F/libc    ( 8797): Fatal signal 11 (SIGSEGV) at 0xdeadd00d (code=1), thread 8797 (cz.ipex...)

リソースファイルでこれらのバージョンを試しました:

<string name="geolocation_icon" translatable="false">&#x1f4e1;</string> <!-- HTML -->
<string name="geolocation_icon" translatable="false">\uD83D\uDCE1</string> <!-- escaped unicode -->
<string name="geolocation_icon" translatable="false"></string> <!-- unicode character -->

コード内の Java String で使用すると問題なく動作することに注意してください。

final String geolocation_icon = "\uD83D\uDCE1";
4

2 に答える 2