Bu kılavuzda, en yeni SDK'yı girin. 1.0.0-beta SDK, önceki 0.0.4 önizlemesi. Hemen önceki önizlemelerden taşıma işlemini gerçekleştirmeniz gerekir yapmasını sağlar. 0.0.4 SDK'sı Mart 2023'e kadar çalışmaya devam edecektir.
Bağımlılığı güncelleme
Kitaplık artık hazır olduğundan 0.0.4 kitaplığını libs
dizininizden silin
maven'de kullanılabilir. Ardından bu satırı modül düzeyindeki build.grade
sayfanızda bulun
dosya:
implementation files('libs/inputmapping-0.0.4.aar')
Bu kodu aşağıdaki kodla değiştirin:
implementation 'com.google.android.libraries.play.games:inputmapping:1.0.0-beta'
Yeni Giriş Eşleme Sağlayıcısı arayüzünü uygulama
Eski soyut sınıf InputMappingProvider
şurada arayüze dönüştürüldü:
1.0.0-beta
sürümü onProvideInputMap()
yöntemi hâlâ
kullanır.
Kotlin
Şurada çağrılacak kurucu olmadığından ()
öğesini sınıf tanımından kaldırın
InputMappingProvider
.
InputMappingProvider
uygulamanızı bulun:
class MyInputMapProvider : InputMappingProvider() {
override fun onProvideInputMap(): InputMap {
TODO("Not yet implemented")
}
}
Ardından, bunu şu şekilde güncelleyin:
class MyInputMapProvider : InputMappingProvider {
override fun onProvideInputMap(): InputMap {
TODO("Not yet implemented")
}
}
Java
Şunu belirtmek için extends
yerine implements
kullanın:
bir arayüzü kullanmayı tercih edebilirsiniz.
InputMappingProvider
uzantısını genişlettiğiniz yeri bulun:
public class MyInputMapProvider extends InputMappingProvider {
@NonNull
@Override
public InputMap onProvideInputMap() {
// TODO: return an InputMap
}
}
Ve InputMappingProvider
kodunu uygulamak için bunu değiştirin:
public class MyInputMapProvider implements InputMappingProvider {
@NonNull
@Override
public InputMap onProvideInputMap() {
// TODO: return an InputMap
}
}
Yeni GirişClient'ı kullanma
registerInputMappingProvider
ve unregisterInputMappingProvider
setInputMappingProvider
ve clearInputMappingProvider
ile değiştirildi.
Dahası, clearInputMappingProvider
artık tartışma kabul etmeyecek. Bu nedenle
artık sağlayıcınızın kaydını iptal etmek için sağlayıcınıza referansta tutmanız gerekiyor.
Kotlin
Giriş haritası sağlayıcınızı kaydetmek için şu numaraya yaptığınız çağrıyı bulun:registerInputMappingProvider
:
private val myInputMapProvider by lazy {
MyInputMapProvider()
}
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val inputMappingClient = Input.getInputMappingClient(this)
inputMappingClient.registerInputMappingProvider(myInputMapProvider)
}
Ve bunu setInputMappingProvider
ile değiştirin:
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val inputMappingClient = Input.getInputMappingClient(this)
inputMappingClient.setInputMappingProvider(MyInputMapProvider())
}
Giriş haritanızı temizlemek için unregisterInputMappingProvider
aramanızı bulun:
override fun onDestroy() {
val inputMappingClient = Input.getInputMappingClient(this)
inputMappingClient.unregisterInputMappingProvider(myInputMapProvider)
super.onDestroy()
}
Ve bunu clearInputMappingprovider
ile değiştirin:
override fun onDestroy() {
val inputMappingClient = Input.getInputMappingClient(this)
inputMappingClient.clearInputMappingProvider()
super.onDestroy()
}
Java
Giriş haritası sağlayıcınızı kaydetmek için şu numaraya yaptığınız çağrıyı bulun:
registerInputMappingProvider
:
private final MyInputMapProvider myInputMapProvider = new MyInputMapProvider();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
InputMappingClient inputMappingClient = Input.getInputMappingClient(this);
inputMappingClient.registerInputMappingProvider(myInputMapProvider);
}
Ve bunu setInputMappingProvider
ile değiştirin:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
InputMappingClient inputMappingClient = Input.getInputMappingClient(this);
inputMappingClient.setInputMappingProvider(new MyInputMapProvider());
}
Giriş eşleme sağlayıcınızı temizlemek için şu çağrıyı bulun:
unregisterInputMappingProvider
:
@Override
protected void onDestroy() {
InputMappingClient inputMappingClient = Input.getInputMappingClient(this);
inputMappingClient.unregisterInputMappingProvider(myInputMapProvider);
super.onDestroy();
}
Ve bunu clearInputMappingProvider
ile değiştirin:
@Override
protected void onDestroy() {
InputMappingClient inputMappingClient = Input.getInputMappingClient(this);
inputMappingClient.clearInputMappingProvider();
super.onDestroy();
}