java - 如何通过 Viber 消息从 Android 应用程序发送消息

标签 java android viber

我想编写小型 Android 应用程序以通过 Viber 发送消息 给我的联系人列表中列出的人。但我找不到 执行此任务的任何示例代码。 如果您知道如何完成这项任务。

请教我。

冯贝克

最佳答案

如果您的设备中安装了 viber 应用程序,您可以调用 intent 来共享文本。

boolean found = false;
Intent share = new Intent(android.content.Intent.ACTION_SEND);
        share.setType("text/plain");

        // gets the list of intents that can be loaded.
        List<ResolveInfo> resInfo = context.getPackageManager()
                .queryIntentActivities(share, 0);
        if (!resInfo.isEmpty()) {
            for (ResolveInfo info : resInfo) {
                if (info.activityInfo.packageName.toLowerCase(
                        Locale.getDefault()).contains("com.viber.voip")
                        || info.activityInfo.name.toLowerCase(
                                Locale.getDefault()).contains("com.viber.voip")) {
                    share.putExtra(Intent.EXTRA_TEXT, "Your text to share");
                    share.setPackage(info.activityInfo.packageName);
                    found = true;
                    context.startActivity(Intent.createChooser(share, "Select"));
                    break;
                }
            }
            if (!found) {

                displayToast(context, "Install viber android application");
                Uri marketUri = Uri.parse("market://details?id="
                        + "com.viber.voip");
                Intent marketIntent = new Intent(Intent.ACTION_VIEW, marketUri);
                context.startActivity(marketIntent);
            }

        }

我不确定它是否有效。但这值得一试。

您还可以使用要求用户选择和分享的普通 Intent 进行分享:

Like this

         Intent sharingIntent = new Intent(Intent.ACTION_SEND);    
         sharingIntent.setType("text/html"); 
         sharingIntent.putExtra(android.content.Intent.EXTRA_TEXT, Html.fromHtml("<p>This is the text that will be shared.</p>")); 
        startActivity(Intent.createChooser(sharingIntent,"Share using"));

关于java - 如何通过 Viber 消息从 Android 应用程序发送消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19683297/

相关文章:

Java Android : BufferedInputStream to byte Array

android - 在 ImageView 中设置图像时内存不足

java - Spring-Data Repository @Query by class with generic class

android - 如何动态编辑和保存列表项文本?

android - 是否可以创建自定义 Viber 贴纸?

ios - 以编程方式在 swift 3 中调用 viber whatsapp

android - 如何避免 viber 弹出窗口以编程方式获得我的 android 应用程序的焦点?

java - 通过 vertx 事件总线传输文件是否明智

java - 将字节数组转换为 .wav java

Java如何使用模式匹配器使用正则表达式来查找特定字符串