2012-03-12 68 views
1

我上的应用,在那里我期运用一个PackageManager使用此代码导入设备上的所有包名工作:从列表视图发送意图另一个活动

protected void onListItemClick(ListView l, View v, int position, long id) { 
    ResolveInfo launchable=adapter.getItem(position); 
    ActivityInfo activity=launchable.activityInfo; 
    ComponentName name=new ComponentName(activity.applicationInfo.packageName, 
             activity.name); 
    Intent i=new Intent(Intent.ACTION_MAIN); 


    i.addCategory(Intent.CATEGORY_LAUNCHER); 
    i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | 
       Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED); 
    i.setComponent(name); 

    startActivity(i);  
} 

此代码设法开始从应用程序一个ListView。但是我想将应用程序的详细信息发送给另一个类,从那里开始,而不是从这个类开始。然后,我希望结果可以保存,但稍后可以通过点击另一个应用程序进行更改。

有没有办法做到这一点?

+0

你能否详细说明为什么开始这样的活动是不够的?你为什么需要从另一个课程开始呢? – 2012-03-12 15:34:23

+0

我正在制作一个应用程序,在其中创建所选应用程序的快捷方式。 – Magakahn 2012-03-12 15:36:00

+0

此代码是否启动其他应用程序?目前还不清楚问题是什么。 – 2012-03-12 15:41:00

回答

1

如果你只是想从列表中选择应用程序,并使用单独的按钮,点击怎么样存储activity.applicationInfo.packageName和activity.name到SharedPreferences一旦列表项中选择启动它,然后。如果用户从列表中选择其他项目,则覆盖参数的SharedPreferences参数。

单击开始按钮时,请阅读这些参数并启动应用程序。

+0

你对一个好的教程? – Magakahn 2012-03-17 11:28:30

+0

Sharedpref是什么? [这里](http://developer.android.com/guide/topics/data/data-storage.html#pref) – Rohit 2012-03-17 14:45:35

0

如何绑定到服务,发送消息到该服务,服务将启动活动? 或注册一个广播接收机,向该接收机发送一个意图,请求的应用程序作为额外的信息,并让广播接收机完成这项工作?

+0

我该怎么做? – Magakahn 2012-03-12 16:03:04

+0

我发现你一个很好的教程:http://www.vogella.de/articles/AndroidServices/article.html – Steelight 2012-03-13 07:28:34

+0

我在做类似的东西在这里! http://stackoverflow.com/questions/14571564/android-pendingintent-extras-not-received-by-broadcastreceiver/14612215#14612215 – toobsco42 2013-01-31 07:47:25

相关问题