Intereting Posts
Как обновить некоторые данные в Listview без использования notifyDataSetChanged ()? Биллинг в приложении: «Элементы запроса, доступные для покупки», возвращает 0 пунктов Android 6.0 RuntimeException: не удается подключиться к службе камеры Невозможно изменить FOV на карточной плате google Изменение цвета курсора в searchView Отправка MMS с помощью приложения vCard на устройствах Android Новый для android нужно понимать "? Android: attr / actionBarSize" Служба поддержки Paho MQTT Android пробуждает активность Как войти в исходный код ОС Android при отладке? Ленивая выборка разбитых объектов с использованием RxJava Использование Qt / C ++ для вызова кода Java через JNI. FindClass не находит класс Запланированный адаптер синхронизации запускается каждые 30 секунд Огромная задержка между onPreExecute и doInBackground в AsyncTask Android игнорирует максимальный масштаб при использовании метатега с фиксированной шириной viewport Таблица абстрактных классов ActiveAndroid

Как открыть приложение ВКонтакте с конкретным другом?

Задний план

Чтобы открыть приложение Facebook со своим другом Facebook, вы можете использовать это намерение:

final Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(String.format("fb://profile/%s", friendId))); 

Аналогичное решение найдено для LinkedIn:

 final Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(String.format("linkedin://profile/%s", friendId))); 

Я думаю, что следующий будет работать для Google Plus (не тестировал, но кажется многообещающим):

 final Intent intent =new Intent(Intent.ACTION_VIEW, Uri.parse(String.format("https://plus.google.com/%s/posts", friendId))); 

Вопрос

Я попытался найти, как открыть приложение социальной сети ВКонтакте (ВК), используя такие намерения, но не смог найти его.

Есть ли такое намерение? Если так, то, что это?

    Ответ от разработчика следующий:

    Да, это делается точно так же:

     final Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(String.format("vkontakte://profile/%d", friendId))); 

    Если вам нужно открыть сообщество, используйте тот же URL-адрес, но добавьте знак минус в идентификатор сообщества.

    Ответ на этот вопрос

    Вот список url, который я нашел в манифесте VK app

    • Http: //vk.com/.*
    • Http: //vkontakte.ru/.*
    • Https: //vk.com/.*
    • Https: //vkontakte.ru/.*
    • Http: //m.vk.com/.*

    Примечание: удалите пробел после http / https. SO не позволит мне размещать более двух ссылок, которые вы можете использовать для запуска vk из своего приложения

    Вот как я это делаю

      private void sendIntentToVkApp() { Intent intent = new Intent(Intent.ACTION_VIEW); intent.setData(Uri.parse("http://vk.com/hmrussia")); try { startActivity(intent); } catch (ActivityNotFoundException e) { Toast.makeText(this, e.getMessage(), Toast.LENGTH_LONG).show(); } } 

    И вот часть манифеста VK, где все схемы определены

     <intent-filter> <category android:name="android.intent.category.DEFAULT"/> <action android:name="android.intent.action.VIEW"/> <data android:scheme="vklink"/> </intent-filter> <intent-filter> <action android:name="android.intent.action.VIEW"/> <category android:name="android.intent.category.DEFAULT"/> <category android:name="android.intent.category.BROWSABLE"/> <data android:scheme="http" android:host="vk.com" android:pathPattern="/.*"/> </intent-filter> <intent-filter> <action android:name="android.intent.action.VIEW"/> <category android:name="android.intent.category.DEFAULT"/> <category android:name="android.intent.category.BROWSABLE"/> <data android:scheme="http" android:host="vkontakte.ru" android:pathPattern="/.*"/> </intent-filter> <intent-filter> <action android:name="android.intent.action.VIEW"/> <category android:name="android.intent.category.DEFAULT"/> <category android:name="android.intent.category.BROWSABLE"/> <data android:scheme="https" android:host="vk.com" android:pathPattern="/.*"/> </intent-filter> <intent-filter> <action android:name="android.intent.action.VIEW"/> <category android:name="android.intent.category.DEFAULT"/> <category android:name="android.intent.category.BROWSABLE"/> <data android:scheme="https" android:host="vkontakte.ru" android:pathPattern="/.*"/> </intent-filter> <intent-filter> <action android:name="android.intent.action.VIEW"/> <category android:name="android.intent.category.DEFAULT"/> <category android:name="android.intent.category.BROWSABLE"/> <data android:scheme="vkontakte" android:pathPattern="/.*"/> </intent-filter>