Как открыть другое приложение в Tabhost / Как открыть Word Doc в Tabhost Android? - PullRequest
1 голос
/ 12 января 2012

Я пытался создать приложение, которое могло бы открыть несколько действий с помощью tabhost.одна из тех поддержки - я хотел бы открыть текстовый документ в моем приложении.

Я знаю, как открыть один документ в другом приложении, но я надеюсь, что он может быть открыт в моем приложении, вместо того, чтобы нажиматькнопка возврата, чтобы вернуться в мое приложение.

код, который я использую для открытия слова doc:

File file = new File
            (Environment.getExternalStorageDirectory(),"/MLT/student.doc");
Intent intent = new Intent();
intent.setAction(android.content.Intent.ACTION_VIEW);
intent.setDataAndType(Uri.fromFile(file),  "application/msword");
startActivity(intent); 

Я попытался добавить его на свою вкладку, используя

File file = new File (Environment.getExternalStorageDirectory(),"/MLT/student.doc");
    intent = new Intent();
    intent.setAction(android.content.Intent.ACTION_VIEW);
    intent.setDataAndType(Uri.fromFile(file),  "application/msword");
    spec = tabHost.newTabSpec("Info").setIndicator("Info",
                      res.getDrawable(R.drawable.ic_tab_info)).setContent(intent);
    tabHost.addTab(spec);

но я получаю ошибку во время выполнения, с основным

01-12 13:16:32.945: E/AndroidRuntime(10066): java.lang.SecurityException: Requesting code from com.infraware.polarisoffice (with uid 10053) to be run in process com.app.mlt (with uid 10128) "

Ответы [ 2 ]

0 голосов
/ 16 января 2012

Я пытался использовать приложение MIME / тип msword, оно не работало, поэтому я использовал application / vnd.ms-word

0 голосов
/ 12 января 2012

Вы можете передать это намерение как содержимое указанной вкладки.

Но вы должны быть осторожны - могут быть устройства, которым не нужны приложения для открытия файлов документов, или может быть несколько приложений для этого.В любом случае для таких операций лучше использовать метод Intent.createChooser().

...