Meta Quest 2: пользовательский запуск не распознается как приложение для дома по умолчанию (Android 2D Application)Android

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Meta Quest 2: пользовательский запуск не распознается как приложение для дома по умолчанию (Android 2D Application)

Сообщение Anonymous »

Я разрабатываю пользовательскую пусковую установку для Meta Quest 2 с помощью Kotlin и Jetpack Compose. Цель состоит в том, чтобы заменить по умолчанию Oculus Home Launcher на собственном приложении. Однако после добавления необходимых фильтров намерения в AndroidManifest.xml приложение не признается в качестве пускового установки. < /P>

Код: Выделить всё
























< /code>
Основной класс активности заключается в следующем < /p>
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)

setContent {
TestOrbitterApplicationTheme {
AppListScreen()
}
}
}

private fun getInstalledApps(): List  {
val pm = packageManager
val apps = mutableListOf()

val packages = pm.getInstalledApplications(PackageManager.GET_META_DATA)

for (app in packages) {
val label = pm.getApplicationLabel(app).toString()
val icon = pm.getApplicationIcon(app)
val packageName = app.packageName

// Exclude system apps (optional)
if (pm.getLaunchIntentForPackage(packageName) != null) {
apps.add(AppInfo(label, icon, packageName))
}
}
return apps
}

@Composable
fun AppListScreen() {
val apps = remember { getInstalledApps() }

LazyColumn(modifier = Modifier.fillMaxSize()) {
items(apps) { app ->
AppItem(app)
}
}
}

@Composable
fun AppItem(app: AppInfo) {
Row(
modifier = Modifier
.fillMaxWidth()
.padding(10.dp)
.clickable {
launchApp(app.packageName)
},
horizontalArrangement = Arrangement.Start
) {
Image(
bitmap = app.icon.toBitmap().asImageBitmap(),
contentDescription = app.name,
modifier = Modifier.size(48.dp)
)
Spacer(modifier = Modifier.width(10.dp))
Text(text = app.name, style = MaterialTheme.typography.bodyLarge)
}
}

private fun launchApp(packageName: String) {
val intent = packageManager.getLaunchIntentForPackage(packageName)
if (intent != null) {
startActivity(intent)
} else {
Log.e("Launcher", "App not found: $packageName")
}
}
}

data class AppInfo(val name: String, val icon: Drawable, val packageName: String)

fun Drawable.toBitmap(): Bitmap {
if (intrinsicWidth 
< /blockquote> 

Подробнее здесь: [url]https://stackoverflow.com/questions/79471782/meta-quest-2-custom-launcher-not-recognized-as-default-home-app-android-2d-app[/url]
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»