在Android中向一个应用发送通知到另一个应用

时间:2014-08-25 09:15:11

标签: android

我正在创建用于发送通知的android应用程序。我已经创建了两个Android应用程序。在这里,我想通过从第一个Android应用程序到Android中的第二个Android应用程序的通知发送一些表单详细信息。

接收通知后,点击我要打开第二个Android应用程序的通知。如何将推送通知发送给Android中的特定个人用户?

这是我的活动代码

public class Activity_One extends Activity
{
    public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main_one);
        Button btn =(Button)findViewById(R.id.button1);
        btn.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View arg0) {
                // TODO Auto-generated method stub

                Intent intent = new Intent(Intent.ACTION_MAIN);
                intent.setComponent(new ComponentName("com.customer.Activity_One","com.vendor.Activity_B"));
                startActivity(intent);
            }
        });
    }

}

这是AndroidManifest.xml文件

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.customer"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="10"
        android:targetSdkVersion="10" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >

        <activity
            android:name=".Activity_One"
            android:label="@string/app_name" 
            android:launchMode="singleTask">
            <intent-filter>
             <action android:name="android.intent.action.MAIN"  />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

    </application>

</manifest>

这是活动二代码

public class Activity_B extends Activity
{
    public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main_two);
        Button bn = (Button)findViewById(R.id.button1Send);
        bn.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                Intent intent = new Intent();
                intent.setAction("com.customer.Activity_One");
                startActivity(intent);
            }
        });
    }

}

清单:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.vendor"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="10"
        android:targetSdkVersion="10" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >

         <activity
            android:name=".Activity_B"
            android:label="@string/app_name" 
            android:launchMode="singleTask">
            <intent-filter>
                <action 
                  android:name="com.vendor.Activity_B" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

    </application>

</manifest>

2 个答案:

答案 0 :(得分:2)

您根本不需要使用通知。你可以使用意图。这是实现您想要实现的目标的标准方法。有关详细信息,请参阅Interacting with Other Apps

答案 1 :(得分:0)

从第一个应用程序开始,您可以开始正常通知,从第二个应用程序初始化广播接收器并阅读通知