Открывайте StreetView App прямо по нажатию кнопки - Android
Я хочу открыть Google Street View Android прямо из моего приложения. Может ли кто-нибудь помочь мне в этом?
Я успешно открыл приложение Maps с Streeview благодаря SO, но это не то, что я ищу.
Я на самом деле хочу открыть Streetview камеру прямо из моего приложения, чтобы я мог сделать панорамный снимок.
Моя настоящая задача - разработать приложение для камеры, которое может снимать панорамные изображения, но я ничего не мог для этого найти, поэтому я работаю над тем, что можно сделать вместо приложения для камеры, такого как картон. Вот ссылка на вопрос, который я задавал ранее - приложение для захвата 360 View android
Пожалуйста, помогите в этом!
2 ответа
Вы можете получить намерение запуска через PackageManager
учебный класс:
PackageManager pm = context.getPackageManager();
Intent launchIntent = pm.getLaunchIntentForPackage("com.google.android.street");
context.startActivity(launchIntent);
Обратите внимание, что getLaunchIntentForPackage
возвращает ноль, если пакет не найден. Так что вы можете добавить нулевую проверку:
if (launchIntent != null) {
context.startActivity(launchIntent);
} else {
Toast.makeText(context, "StreetView not Installed", Toast.LENGTH_SHORT).show();
launchPlayStore(mContext,com.google.android.street);
}
Вы можете использовать приведенный ниже код для навигации по нему, чтобы установить приложение StreetView через игровой магазин
public void launchPlayStore(Context context, String packageName) {
Intent intent = null;
try {
intent = new Intent(Intent.ACTION_VIEW);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setData(Uri.parse("market://details?id=" + packageName));
context.startActivity(intent);
} catch (android.content.ActivityNotFoundException anfe) {
startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("https://play.google.com/store/apps/details?id=" + packageName)));
}
}
Вы также можете открыть камеру Streetview для нажатия на панорамное изображение из моего приложения с помощью следующего кода
Intent intent = new Intent();
intent.setComponent(new ComponentName("com.google.android.street", "com.google.android.street.CameraActivity"));
//provided you should know the camera activity name
startActivity(intent);
Также вам может понадобиться добавить android:exported="true"
к деятельности manifest
из которого вы вызываете вышеуказанный код.
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse("market://details?id=com.google.android.street"));
context.startActivity(intent);
@Rajat вы можете использовать вышеуказанный код, чтобы перенаправить пользователя в Google Street View
страница магазина игр.