2014-02-16 42 views
3

我正在为Android创建应用程序,我需要一个按钮将我的应用程序发送给另一部手机。打包我的应用程序并分享到其他+ android

我试图把apk发送给其他人,但我不能这样做。 我使用此代码:

Intent sharei=new Intent(Intent.ACTION_SEND); 
sharei.putExtra(Intent.EXTRA_STREAM,Uri.parse("android.resource://com.packa.ge/raw/hafez.apk")); 
sharei.setType("application/vnd.android.package-archive"); 
startActivity(Intent.createChooser(sharei, "share")); 

但它不工作。


我看到一个波斯应用程序做到这一点:在上下文菜单中的项目之一是:“通过蓝牙发送”当我碰到这种情况,发送的apk文件到其他手机。

我打包了我的应用程序,并将其发送到原始文件夹发送,但这不适用于第二或第三部手机。

他说:“我创造的Android,我需要把按钮,我的应用程序发送给其他手机应用程序”,我想他是在谈论他发送运行相同的应用程序....
安德烈Bellitto

是的。我需要发送正在运行的应用程序。

+0

@GabeSechan它可以做,但它确实是一个不好的做法:http://stackoverflow.com/a/18552517/812598。但是,我和你在一起,电子邮件是最好的方式。 – GoRoS

+0

感谢分享链接:stackoverflow.com/a/18552517/812598 - 但这不能帮助我! –

回答

11

解决...

try { 
    PackageManager pm = getPackageManager(); 
    ApplicationInfo ai = pm.getApplicationInfo(getPackageName(), 0); 
    File srcFile = new File(ai.publicSourceDir); 
    Intent share = new Intent(); 
    share.setAction(Intent.ACTION_SEND); 
    share.setType("application/vnd.android.package-archive"); 
    share.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(srcFile)); 
    startActivity(Intent.createChooser(share, "PersianCoders")); 
} catch (Exception e) { 
    Log.e("ShareApp", e.getMessage()); 
} 
相关问题