2012-05-01 4 views
3

電子メール経由でカスタムファイル拡張子を持つファイルを送信するアプリがありますが、これは基本的に暗号化されたXMLファイルです。私のアプリはこれらを開くインテントフィルタを持っていて、特定の電話(Samsung Galazy S Mesmerize)で動作しますが、他のいくつかの電話(Electrify、Thunderboltなど)で自分のカスタムファイル拡張子で添付ファイルを開くと、そのファイルを開くことができるものは何もありません。 (試している携帯電話には私のアプリがインストールされています)。ここでカスタムファイル拡張子を開けない一部のAndroid携帯電話

は私の意図-フィルタです:

<intent-filter> 
    <action android:name="android.intent.action.VIEW" /> 
    <category android:name="android.intent.category.DEFAULT" /> 
    <data android:scheme="file" /> 
    <data android:mimeType="*/*" /> 
    <data android:pathPattern=".*\\.tgtp" /> 
    <data android:host="*" /> 
</intent-filter> 

は、私は、すべてのAndroid携帯電話は、彼らが私のアプリをインストールしているとき、私のカスタムファイルの拡張子を開くことができるようになることを確実にするために何かできることはありますか?

おかげ

+0

を持っています。 しかし、私はそれを見てからしばらくしています。たぶん、その携帯電話で異なるアンドロイドのバージョン? –

+0

誰もそれが不可能であることを確認できますか?それが事実ならthats罰金、私はそれに応じて計画します。可能であれば、何が起きているのか本当に知りたいです。私がテストした携帯電話は確かにアンドロイドのバージョンが異なっています(2.3/4.0)。私は想像することができませんどのように/それが何かを変更するだろう – Nick

+0

これを試してログに何かが表示されますか? – Ronnie

答えて

3

は、私はそれは、ファイルを他のデバイス上に配置されているパスに依存しますね。インテントフィルタのpathPattern属性がファイルのフルパスに非常に敏感であることがわかりました。

同様の質問については、以下の答えを見てみましょう: https://stackoverflow.com/a/7102838/624109

を基本的には、あなたが最も可能性の高いファイルの場所をキャプチャしますいくつかのpathPatternの属性を持っている必要があります。

ローカルファイルを使用しても、まだport属性が必要だと思います。

これらの2つの変更は、何時間もの掘り起こしの後に私にとってうまくいくものです。開発者向けドキュメントが、それは同じだろうと言うにもかかわらず

+0

それはトリックでした!私は元のファイルはXMLベースのテキスト/ XMLスキームが理にかなっているからだと思います。ありがとう! – Nick

+0

@ニック:まだあなた自身のコメントを理解していますか?何がトリックでしたか?ポート属性?スキームやタイプは? –

0

、私はそれがないと信じて:

はすべて<データを配置しようとすると...>すなわち>一つだけ<のデータを持って、同じ要素の属性。

は、私は、可能波平既存のMIMEタイプを選択した場合を除きことを考え、完全に正直に言うだけで他のURIまたはMIMEタイプでフィルタを広げるために複数<データ> ...

関連する問題