将数据从一个应用程序发送到另一个应用程序(AIR for ANDROID)



因为我们可以使用Intent
将数据从一个活动发送到应用程序内的另一个活动,也可以从一个应用程序发送到另一个应用程序我能够使用以下代码
将数据从一个应用程序发送到另一个应用程序只需考虑有两个应用程序APP1APP2,我正在将数据从APP1发送到APP2,反之亦然。

APP1包名称中:(com.sush.myApp)

public class HomeActivity extends Activity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_home);
        // to receive data from com.my.demo package and display it to TextView
        TextView mText = (TextView)findViewById(R.id.textView1);
        String name=getIntent().getStringExtra("User_Message");
        mText.setText(name);
        // to send data from com.sush.myApp package to com.my.demo package
        Button btn1 =(Button)findViewById(R.id.button1);
        btn1.setOnClickListener(new OnClickListener()
        {
            public void onClick(View v)
              {
                try
                {
                    Intent i = new Intent(Intent.ACTION_MAIN);
                    PackageManager manager = getPackageManager();
                    i = manager.getLaunchIntentForPackage("com.my.demo");
                    i.putExtra("User_ID", "sush19");
                    i.addCategory(Intent.CATEGORY_LAUNCHER);
                    startActivity(i);
                }catch(Exception e)
                {
                    e.printStackTrace();
                    Toast.makeText(v.getContext(), "App Not Found", Toast.LENGTH_LONG).show();
                }
              }
        });
    }

和从APP2包名称:(com.my.demo)

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        // to receive data from com.sush.myApp package and display it to TextView
        final TextView txt1 = (TextView)findViewById(R.id.Text1);
        String name=getIntent().getStringExtra("User_ID");
        txt1.setText(name);
        // to send data from com.my.demo package to com.sush.myApp package
        Button btnSending = (Button)findViewById(R.id.btnSend);
        final EditText myMessage = (EditText)findViewById(R.id.txtMessage);
        btnSending.setOnClickListener(new OnClickListener()
        {
            public void onClick(View v)
            {
                if (myMessage.getText().toString().equals(""))
                {
                    Toast.makeText(v.getContext(), "Enter your message", Toast.LENGTH_SHORT).show();
                }
                else
                {
                    try
                    {
                        Intent i = new Intent(Intent.ACTION_MAIN);
                        PackageManager manager = getPackageManager();
                        i = manager.getLaunchIntentForPackage("com.sush.myApp");
                        i.putExtra("User_Message", myMessage.getText().toString());
                        i.addCategory(Intent.CATEGORY_LAUNCHER);
                        startActivity(i);
                    }catch(Exception e)
                    {
                        e.printStackTrace();
                        Toast.makeText(v.getContext(), "Error: "+e, Toast.LENGTH_LONG).show();
                    }
                }
            }
        });
    }

它的工作完美..
Now my problem is I want to do same operation i.e sending data from one app to another but my first app is in Java created using Eclipse and my second app is in ActionScript created using AIR for Android in Adobe Flash Professional CS6

有没有办法在Actionscript中使用IntentPackageManager,以便我可以轻松地将数据从AIR应用程序发送到Android应用程序,如果是,那么任何人都可以给我看一个例子
或者任何人都可以向我展示一个示例,说明如何将数据从Android应用程序发送到AIR的Android应用程序,反之亦然。
谢谢。。。

为此,我能想到 2 种方法。

第一种是使用您编写的(或类似)的 Java 代码,将其打包为本机扩展,并将其构建到您的应用程序中。

另一种替代方法是使用 URI 方案并从 InvokeEvent 读取数据。这个SO问题已经涵盖了该方法。

相关内容

最新更新