1

これが私がセットアップしようとしているものです: 私の Android アプリは電子メールの確認を必要とします。私のアプリを使って登録すると、リンクが記載されたメールが送信されます。そのリンクでアプリを直接開くようにしたいのですが、リダイレクトを使用してアプリを開くリンクを開くページを自分の Web サイトに配置する方がよいと言われました。このリンクは、ユーザーの電子メール アドレスと確認コードも送信します。

私の理解では、このコードを my に追加する必要があるということですAndroidManifest.xml(ここで、MYAPP は私の Web サイトの名前です)。

        <intent-filter>
            <action android:name="android.intent.action.VIEW" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.BROWSABLE" />
            <data android:scheme="http" android:host="MYAPP.com" android:path="/confirmation.html" />
        </intent-filter>

そして、私のWebサイトには、これを含むページがあります<head>(MYAPPは私のアプリの名前です):

meta http-equiv="refresh" content="0;URL=MYAPP://?verification=' . $_GET["verification"] . '&email=' . $_GET["email"] . '"/>

それは機能していません。複数の間違いを犯している可能性があります。

最初の質問は、どこに<intent-filter>行くのですか? <activity>タグ内にあると読んだだけですが、私AndroidManifest.xmlの には2つの<activity>タグがあります。

    <activity android:label="@string/app_name" android:name=".MYAPP" android:screenOrientation="unspecified" android:configChanges="locale|keyboard|keyboardHidden|orientation|screenSize">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity android:label="@string/app_name" android:name="com.phonegap.DroidGap">
        <intent-filter />
    </activity>

私は自分<intent-filter>のものを追加しようとしましたが、うまくいかないようです:

    <activity android:label="@string/app_name" android:name=".MYAPP" android:screenOrientation="unspecified" android:configChanges="locale|keyboard|keyboardHidden|orientation|screenSize">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
        <intent-filter>
            <action android:name="android.intent.action.VIEW" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.BROWSABLE" />
            <data android:scheme="http" android:host="MYAPP.com" android:path="/confirmation.html" />
        </intent-filter>
    </activity>
    <activity android:label="@string/app_name" android:name="com.phonegap.DroidGap">
        <intent-filter />
    </activity>

どこに置くの<intent-filter>ですか?

コードの残りの部分、特にリダイレクト URL は大丈夫ですか?

私は初心者であり、Phonegap を使用してこのアプリを作成していることに注意してください。そのため、Android アプリ開発について十分に理解しているとは思わないでください。わかってくれてありがとう。

4

2 に答える 2

2

次のようなアクティビティタグの内部:

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >
    <activity
        android:name=".My_Activity_Name"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application

あなたのこのコードでは、最後のアクティビティの開始インテントフィルタータグはどこにありますか:

<activity android:label="@string/app_name" android:name=".MYAPP" android:screenOrientation="unspecified" android:configChanges="locale|keyboard|keyboardHidden|orientation|screenSize">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
    <intent-filter>
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.DEFAULT" />
        <category android:name="android.intent.category.BROWSABLE" />
        <data android:scheme="http" android:host="MYAPP.com" android:path="/confirmation.html" />
    </intent-filter>
</activity>
<activity android:label="@string/app_name" android:name="com.phonegap.DroidGap">
    <intent-filter />
</activity>
于 2013-08-21T09:04:00.773 に答える