That did the trick.  Exactly what I was looking for.  Thanks to both
of you.  I'll remember to keep my question specific next time.

- Nick

On Oct 7, 3:31 am, hackbod <[EMAIL PROTECTED]> wrote:
> You need to explicit set the MIME type to application/
> vnd.android.package-archive.  I have no idea what MIMETag is or why
> you are prefixing it in the URI, but basically you want something
> like:
>
> Intent intent = new Intent(Intent.ACTION_VIEW);
> intent.setDataAndType(uriToApk, "application/vnd.android.package-
> archive");
>
> On Oct 6, 8:22 pm, nknize <[EMAIL PROTECTED]> wrote:
>
> > Either I'm not stating my question correctly or it just isn't being
> > understood.  So I'll keep it specific and to the point.  What is the
> > MIME type to "view an .apk" as you have so simply stated?  I have an
> > apk that is already downloaded to the sdcard and I'm simply trying to
> > launch an intent to view it.
>
> > e.g. /sdcard/myapk.apk
>
> > If I understand what you are saying, it should be as easy as...
>
> >                 Intent myIntent = new Intent(
> >                                Intent.ACTION_VIEW,
> >                                Uri.parse(MIMETag +
> > apkFile.getAbsolutePath().toString()));
> >                 startActivity(myIntent);
>
> > So what is that correct MIMETag that will cause the system to find and
> > call the appropriate content provider that launches the install UI you
> > mentioned (that subsequently "asks the user if it is okay to install
> > the app..etc")?
>
> > Thx again...
>
> > - Nick
>
> > On Oct 6, 5:01 pm, hackbod <[EMAIL PROTECTED]> wrote:
>
> > > As I already said, you can not do that.  If an app gets a permission
> > > to do that, it effectively gets a permission to do ANYTHING possible.
> > > This is not really a path we want to go down.
>
> > > If you want to install an app, you need to start an activity to view
> > > the .apk (which you have already downloaded, and supplying the proper
> > > MIME type for the data), which will allow the system to bring up its
> > > UI to ask the user if it is okay to install the app with the
> > > permissions it requires etc.
>
> > > That is the way it works.  Period.
>
> > > On Oct 6, 1:23 pm, nknize <[EMAIL PROTECTED]> wrote:
>
> > > > That's right...  "You can't directly install an apk without the user
> > > > being involved."  This is exactly what I want/am trying to do - let
> > > > the user install the apk through a customized application.  Is there
> > > > an "out of the box" intent or activity that can be integrated with
> > > > one's application that allows the user to install the apk?  Because
> > > > right now.. any attempt to install an apk programmatically inevitably
> > > > throws a permissions exception.  I'm still unclear what is meant by
> > > > "launch an intent to view it."
>
> > > > - Nick
>
> > > > On Oct 6, 9:50 am, Al Sutton <[EMAIL PROTECTED]> wrote:
>
> > > > > Are you sure that INSTALL_PACKAGES will be a user grantable 
> > > > > permission?,
> > > > > I can see an argument for INSTALL_PACKAGES having uses, but I can also
> > > > > see the ability for it to be abused to install Spyware/Adware which 
> > > > > the
> > > > > user did not want.
>
> > > > > Al.
> > > > > --http://andappstore.com/
>
> > > > > nknize wrote:
> > > > > > Adding android.permission.INSTALL_PACKAGES to the manifest results 
> > > > > > in
> > > > > > the following:
>
> > > > > > 10-05 18:50:45.631: WARN/PackageManager(57): Not granting permission
> > > > > > android.permission.INSTALL_PACKAGES to package com.test
> > > > > > (protectionLevel=2 flags=0x44)
>
> > > > > > Subsequently tried the following without any luck...
>
> > > > > > try {
> > > > > >    Intent myIntent = new Intent(
> > > > > >                Intent.ACTION_PACKAGE_INSTALL,
> > > > > >                Uri.parse("file://" +
> > > > > > apkFile.getAbsolutePath().toString());
> > > > > >    startActivity(myIntent);
> > > > > > } catch (Exception e) {
> > > > > >    Log.e(tag, e.getMessage();
> > > > > > }
>
> > > > > > Results in the following:
>
> > > > > > 10-05 18:50:49.440: ERROR/APKInstaller(316): No Activity found to
> > > > > > handle Intent { action=android.intent.action.PACKAGE_INSTALL
> > > > > > data=file:///c:/test.apk }
>
> > > > > > I'm assuming thePackageManagerand/or IPackageInstallObserver must
> > > > > > play a role somewhere in this process.
>
> > > > > > What exactly do you mean by "launch an intent to view it?"
>
> > > > > > Thx to anyone that can help clear this up.
>
> > > > > > - Nick
>
> > > > > > On Aug 26, 4:27 am, hackbod <[EMAIL PROTECTED]> wrote:
>
> > > > > >> You can download an apk and launch an intent to view it, allowing 
> > > > > >> the
> > > > > >> user to install it, like the browser does.  You can't directly 
> > > > > >> install
> > > > > >> an apk without the user being involved (and thus approving the
> > > > > >> action).
>
> > > > > >> On Aug 26, 1:26 am, Wesley <[EMAIL PROTECTED]> wrote:
>
> > > > > >>> hi,
>
> > > > > >>> oic
>
> > > > > >>> so this is means we cannot download the apk and install it or 
> > > > > >>> somehow delete
> > > > > >>> the package using our application???
>
> > > > > >>> :)
>
> > > > > >>> Wesley.
>
> > > > > >>> On Tue, Aug 26, 2008 at 3:36 PM, hackbod <[EMAIL PROTECTED]> 
> > > > > >>> wrote:
>
> > > > > >>>> This is not available to applications, sorry.
>
> > > > > >>>> On Aug 26, 12:25 am, Wesley Sagittarius <[EMAIL PROTECTED]> 
> > > > > >>>> wrote:
>
> > > > > >>>>> hi,
>
> > > > > >>>>> Does anyone successful use thePackageManager to install apk???
>
> > > > > >>>>> wesley.
>
> > > > > --
> > > > > Al Sutton
>
> > > > > W:www.alsutton.com
> > > > > B: alsutton.wordpress.com
> > > > > T: twitter.com/alsutton
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to android-developers@googlegroups.com
To unsubscribe from this group, send email to
[EMAIL PROTECTED]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to