Die Android-Version wird hochgehen. Android 11 steht kurz vor der Veröffentlichung. Es scheint, dass die japanische Originalausgabe "Reiwa" endlich von der Standard-API auf Android 11 unterstützt wird.
Ich werde zuerst die Schlussfolgerung ziehen.
Der Codename für den Namen der Süßigkeit ist übrigens aus "Q" verschwunden.
KitKat, Lutscher, Marshmallow, Nougat, Oreo, Pie. Gelegentlich mit einer Mischung aus eingetragenen Marken. Die Android-Kinder waren begeistert von den Süßigkeiten, die mit "Q" begannen, aber Google sagte: "Ich habe aufgehört, Süßigkeiten zu benennen."
Android 10 ist "Q". Die 11, die bald veröffentlicht wird, ist "R".
Unterstützt "Reiwa" mit "R" auf Android ... Auf keinen Fall! Ist das "R" das R von "Reiwa"? !! Was?
Abgesehen von dieser Versionsnummer 10 oder 11 und dem Codenamen ist die für Entwickler wichtige Nummer "API-Ebene. Element? hl = ja) ". Android 8.0 ist Oreo und hat eine API-Stufe von 26. Wenn es um Android 8.1 geht, ist es auch Oreo, aber die API-Stufe ist 27. Es ist kompliziert!
Und wie lautet die API-Level-Nummer, die "R" zugewiesen ist ...? Ich habe es gegen Ende dieses Artikels geschrieben, also bleibt dran. (Sumimasen)
http://site.icu-project.org/home
Es ist eine Abkürzung für "International Components for Unicode". Auf jeden Fall werden verschiedene nützliche APIs aufgezeichnet. Quelloffene Software.
Die Klasse com.ibm.icu.util.JapaneseCalendar
entspricht dem japanischen Yuan.
Von der ersten Originalausgabe "Daiga" bis heute. Ich habe nicht überprüft, wie man mit der Nord- und Süddynastie umgeht.
Die Seltsamkeit von Honnoji
import java.util.Locale;
import com.ibm.icu.text.DateFormat;
import com.ibm.icu.text.DateFormatSymbols;
import com.ibm.icu.text.SimpleDateFormat;
import com.ibm.icu.util.GregorianCalendar;
import com.ibm.icu.util.JapaneseCalendar;
public class Honnoujinohen {
public static void main(String[] args) {
JapaneseCalendar jpCalendar = new JapaneseCalendar();
DateFormatSymbols dfs = new DateFormatSymbols(jpCalendar, Locale.JAPANESE);
DateFormat dateFormat = new SimpleDateFormat("Gyy Jahr MM Monat dd Tag", dfs);
dateFormat.setCalendar(jpCalendar);
//"Honnouji no Hen" 2. Juni 1582
int year = 1582;
int month = 6;
int day = 2;
String s = dateFormat.format(new GregorianCalendar(year, month - 1, day).getTime());
System.out.println(s);
}
}
Ausführungsergebnis
02. Juni, 10. Tensho
Es ist unerträglich für Okawa-Drama-Fans und erfahrene Frauen. Kirin kommt. War es die ursprüngliche Ausgabe, die "Heaven is right" schrieb? Oh, die Turbulenzen von Ojin. Reform von Tenpo. Anseis Gefängnis. Sie können durch die Zeiten in Ihrem Gehirn laufen, indem Sie nur an das ursprüngliche Problem denken.
Diese Intensivstation ist kompatibel mit "Reiwa" aus Version 64.2, die am 17. April 2019 veröffentlicht wurde.
In der Android-Standard-API wurde die Intensivstation von API-Level 24 (Android 7.0 Nougat) importiert.
Das Paket hat sich geändert, nur weil es importiert wurde. Die oben genannte Klasse "JapaneseCalendar" lautet beispielsweise android.icu.util.JapaneseCalendar
.
Und. schließlich. Auf der API-Ebene von Android 11 (R)
python
public static final int REIWA
Wird hinzugefügt werden! Regentag int enum Muster! !! !! Nein! !! !! Ich weiß es nicht, weil die IBM ICU in erster Linie ein int enum Muster ist! !! !!
Ich habe so eine App gemacht.
"Kenbu no Shinsei" ist eine neue Politik, die Kaiser Daigo am 17. Juli 1333 nach dem Sieg über das Kamakura-Shogunat begann, aber an diesem Tag ist die ursprüngliche Ausgabe immer noch "Motohiro", nicht wahr? Ich denke, ich werde die nächste Zwischenprüfung für das 2. Semester ablegen.
Von Heisei nach Reiwa.
Die Entwicklungsumgebung ist wie folgt.
Android Studio 3.6.1 Build #AI-192.7142.36.36.6241897, built on February 27, 2020 Runtime version: 1.8.0_212-release-1586-b04 amd64 VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o Windows 10 10.0 GC: ParNew, ConcurrentMarkSweep Memory: 1237M Cores: 8 Registry: ide.new.welcome.screen.force=true Non-Bundled Plugins:
Muss auf API-Ebene von Android 11 (R) erstellt werden. Nehmen Sie in der Gradle-Einstellungsdatei Folgendes vor (teilweise weggelassen).
build.gradle
android {
compileSdkVersion 'android-R'
buildToolsVersion "29.0.2"
defaultConfig {
applicationId "com.example.gengou"
minSdkVersion 24
}
compileOptions {
sourceCompatibility = 1.8
targetCompatibility = 1.8
}
}
Zum Zeitpunkt dieses Schreibens sind der Android 11 (R) API-Ebene keine Nummern zugewiesen. Es scheint, dass es immer noch eine Vorschau-Version ist. Es wird geschätzt, dass es wahrscheinlich "30" sein wird, wenn die offizielle Version veröffentlicht wird.
minSdkVersion
muss mindestens 24
sein. Wie oben erwähnt, wurde die Intensivstation ab API-Ebene 24 in die Android-Standard-API integriert.
Activity
MainActivity.java
package com.example.gengou;
import android.icu.text.DateFormat;
import android.icu.text.DateFormatSymbols;
import android.icu.text.SimpleDateFormat;
import android.icu.util.GregorianCalendar;
import android.icu.util.JapaneseCalendar;
import android.os.Bundle;
import android.widget.EditText;
import android.widget.TextView;
import androidx.appcompat.app.AppCompatActivity;
import java.util.Locale;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
EditText year = findViewById(R.id.year);
EditText month = findViewById(R.id.month);
EditText day = findViewById(R.id.day);
TextView gengo = findViewById(R.id.gengou);
findViewById(R.id.button).setOnClickListener(v -> {
int y = Integer.parseInt(year.getText().toString());
int m = Integer.parseInt(month.getText().toString());
int d = Integer.parseInt(day.getText().toString());
JapaneseCalendar jpCalendar = new JapaneseCalendar();
DateFormatSymbols dfs = new DateFormatSymbols(jpCalendar, Locale.JAPANESE);
DateFormat dateFormat = new SimpleDateFormat("Gyy Jahr MM Monat dd Tag", dfs);
dateFormat.setCalendar(jpCalendar);
String s = dateFormat.format(new GregorianCalendar(y, m - 1, d).getTime());
gengo.setText(s);
});
}
}
Obwohl die Android-Standard-API Reiwa unterstützt! Anstatt es zu benutzen, reagiert die Intensivstation von IBM auf das Dekret, etwas ist überwältigend! Sie mögen das denken, aber ich würde so etwas aus den folgenden Gründen tun.
So wird es gemacht.
build.gradle
dependencies {
implementation 'com.ibm.icu:icu4j:64.2'
}
Fügen Sie es als abhängige Bibliothek hinzu und es ist SyncNow. Geben Sie "64.2" oder höher an, das die Abstimmung unterstützt.
Die Anweisung import
sieht folgendermaßen aus, um Namenskonflikte zu vermeiden.
Achten Sie auf das Paket
import com.ibm.icu.text.DateFormat;
import com.ibm.icu.text.DateFormatSymbols;
import com.ibm.icu.text.SimpleDateFormat;
import com.ibm.icu.util.GregorianCalendar;
import com.ibm.icu.util.JapaneseCalendar;
import java.util.Locale;
Nur "Locale" ist ein stabiles "java.util" -Paket. Damit können auch Android 6, 5 und 4 die Abstimmung unterstützen.
Seien Sie versichert, dass die Intensivstation nicht die ursprüngliche Ausgabe von "Kobun" hat.
das ist alles.
Recommended Posts