0

txt ファイルを開くアクティビティがあります。ユーザーが txt ファイルを開こうとするたびに、私のアプリはそれを開くことができます。私の質問は、開くファイルのパスをアクティビティに渡すにはどうすればよいですか? また、プログラムでパスを受け取るにはどうすればよいですか? つまり、マニフェスト ファイルでインテント フィルターを設定して、アプリがそのファイルをクリックしたときに txt ファイルを開くことができるようにする以外に、私がしなければならないことは何ですか?

4

2 に答える 2

0

File(http://developer.android.com/reference/java/io/File.html)またはFileInputStream(http://developer.android.com/reference/java/io/FileInputStream.html)クラスを使用できますファイルパスを保持し、入力を処理します。インテントを渡す場合は、putExtra()メソッドを使用して、ファイル名を含む文字列をインテントに追加し、反対側で取得することをお勧めします。

于 2012-06-21T22:24:39.467 に答える
0

ブロードキャスト レシーバーを使用する必要がありますが、どのインテント フィルターを使用する必要があるかわかりません。

マニフェストに次のようなものを追加してみてください。

<receiver android:name="MyBroadcastReceiver">
  <intent-filter>
    <action android:name="android.intent.action.ACTION_VIEW" />
    <action android:name="android.intent.action.ACTION_EDIT" />
    <action android:name="android.intent.action.ACTION_PICK" />
  </intent-filter>
</receiver>

次に、次のように MyBroadcastReceiver クラスを作成する必要があります。

public final class MyBroadcastReceiver extends BroadcastReceiver
{
  @Override
  public void onReceive(Context context, Intent intent)
  {
    // Your receiver code here...
  }
}

次に、ファイルを開こうとしたときに、Intent で受信したデータを onReceive メソッドにチェックインします。そうすれば、どのデータがインテントに到着するかを知ることができます。

それが役に立てば幸い。

于 2012-06-21T22:56:50.750 に答える