I need to open my .doc file in quickoffice in my app without looking for suitable apps (options)

I need to open my .doc file in quickoffice in my app without looking for suitable apps (options).

Here I have used this

    Intent intent = new Intent();

    intent.setAction(android.content.Intent.ACTION_VIEW);
    Uri uri = Uri.fromFile(file);
    //String type = MimeTypeMap.getSingleton().getMimeTypeFromExtension(
    //      MimeTypeMap.getFileExtensionFromUrl(uri.toString()));
    //intent.setDataAndType(uri, type == null ? "*/*" : type);
    intent.setDataAndType(uri, "application/msword");

    startActivity((Intent.createChooser(intent,
            getString(R.string.open_using))));

This Code shows suitable target apps which i dont need actually

Upvotes: 0

Views: 405

Answers (2)

It worked for me.

        PackageManager packageManager = getPackageManager();
        Intent quickOffice = packageManager
            .getLaunchIntentForPackage("com.quickoffice.android");

        File sdcard = Environment.getExternalStorageDirectory();
        //your file location
        File file = new File(sdcard, "Meta Data.doc");
        Uri path = Uri.fromFile(file);

        quickOffice.setAction(Intent.ACTION_VIEW);
        quickOffice.setDataAndType(path, "application/msword");// ---->application/msword

        startActivity(quickOffice);

Upvotes: 0

Gabe Sechan
Gabe Sechan

Reputation: 93614

Remove the createChooser call, and just pass the intent to startActivity. Then it will open the default app for the mime type, assuming one is set. If none is set, it may still pop up a chooser among those apps which claim they can open it. If you want to only open quick office you can do so by activity name, but then it will fail (and possibly throw an exception) if quick office is not installed.

Upvotes: 1

Related Questions