求问如何在手机上打开应用

Cre****rLv UID.2673160
2017-08-27 发表

不用协议!不用协议!不用协议!重要的事说三遍,不用协议!我试过用package.launch()但是会报错。。。明明我就是部署的手机T_T。。。

敬告:
为防止不可控的内容风险,本站已关闭新用户注册,新贴的发表及评论;
你现在看到的内容只是互联网用户曾经发表的言论快照,仅用于老用户留存纪念,且仅与科技行业相关,全部内容不代表本站观点及立场;
本站重新开放前已针对包括用户隐私、版权保护、信息安全、国家政策在内的各种互联网法律法规要求,执行了隐患内容的自查、屏蔽和删除;
本站目前所属个人主体,未有任何盈利安排与计划,且与原WFUN.COM所属公司不存在任何关联关系;
如果本帖内容或者相关资源侵犯到您的合法权益,或者您认为存在问题,那么请您务必点此举报或投诉!
全部回复:
箭士 UID.2864780
2017-08-27 回复

哦哦哦

Cre****rLv UID.2673160
2017-08-27 使用 Lumia 950美版 回复

Quote箭士 发表于 2017-8-27 10:07
哦哦哦


毫无意义的回复(lll¬ω¬)

vbfool UID.352791
2017-08-27 回复

不是Package去Launch,是它里边那个Package.GetAppListEntriesAsync(),然后获取到AppListEntry,有LaunchAsync方法。
Package的那个Launch,似乎只能启动XAP的程序。

Cre****rLv UID.2673160
2017-08-27 使用 Lumia 950美版 回复

Quotevbfool 发表于 2017-8-27 21:19
不是Package去Launch,是它里边那个Package.GetAppListEntriesAsync(),然后获取到AppListEntry,有LaunchA ...


我马上试试,谢谢!

Cre****rLv UID.2673160
2017-08-27 回复

Quotevbfool 发表于 2017-8-27 21:19
不是Package去Launch,是它里边那个Package.GetAppListEntriesAsync(),然后获取到AppListEntry,有LaunchA ...


我用了你说的方法了但是会报错,代码如下: var a =InstallationManager.FindPackages(); Windows.Phone.Management.Deployment.InstallationManager.FindPackages(); var b = a.ElementAt((int)message["Where"]); try { var c = await (b).GetAppListEntriesAsync();//大概是在这一步会报错,应该是转换错误(lll¬ω¬) foreach (var item in c) { try { item.LaunchAsync(); } catch (Exception) { } } } catch (Exception) { }

Osi****o0O UID.2691740
2017-08-27 回复

QuoteCreeperLv 发表于 2017-8-27 23:08
我用了你说的方法了但是会报错,代码如下: var a =InstallationManager.FindPackage ...


报错信息是什么?

Cre****rLv UID.2673160
2017-08-28 使用 Lumia 950美版 回复

QuoteOsirisoo0O 发表于 2017-8-27 23:56
报错信息是什么?


无效的转换

vbfool UID.352791
2017-08-28 回复

Quote***链接停止解析***
我用了你说的方法了但是会报错,代码如下:
var a =InstallationManager.FindPackage ...


var b = a.ElementAt((int)message["Where"]);

我怎么觉得你报错的更可能是这句?

对了,不要用你现在的那个类,要用PackageManager类。

Cre****rLv UID.2673160
2017-08-28 使用 Lumia 950美版 回复

Quotevbfool 发表于 2017-8-28 03:24
var b = a.ElementAt((int)message[“Where“]);

我怎么觉得你报错的更可能是这句?


但是我是要在手机上找到所有包,PackageManager类里的FindPackages会有权限问题,关键是我也按照Doc里的说法,把packageManagement添加到了package.manifest,依然会有权限错我(lll¬ω¬)

vbfool UID.352791
2017-08-28 回复

Quote***链接停止解析***
但是我是要在手机上找到所有包,PackageManager类里的FindPackages会有权限问题,关键是我也按照Doc里的 ...


权限有两个,都要加上去,当然了,我猜测真正起作用的权限,是另一个你没加的packageQuery权限。
实际上也是因为PackageManager作用太大了,是受限制的。

Cre****rLv UID.2673160
2017-08-28 使用 Lumia 950美版 回复

Quotevbfool 发表于 2017-8-28 14:08
权限有两个,都要加上去,当然了,我猜测真正起作用的权限,是另一个你没加的packageQuery权限。
实际上 ...


packageQuery我都加了连ID_CAP_OEM_DEPLOYMENT都加了,基本InteropTools1.9的权限都加了

bryson UID.2870449
2017-08-28 使用 Lumia 950 XL 回复

这是一个技术贴

Cre****rLv UID.2673160
2017-08-28 使用 Lumia 950美版 回复

Quotebryson 发表于 2017-8-28 15:48
这是一个技术贴


这不是废话嘛(lll¬ω¬)

vbfool UID.352791
2017-08-28 回复

Quote***链接停止解析***
packageQuery我都加了连ID_CAP_OEM_DEPLOYMENT都加了,基本InteropTools1.9的权限都加了 ...


按说不应该啊,我成功启动过网易云音乐的。
难道手机上有什么其它的问题?

Cre****rLv UID.2673160
2017-08-28 使用 Lumia 950美版 回复

Quotevbfool 发表于 2017-8-28 18:54
按说不应该啊,我成功启动过网易云音乐的。
难道手机上有什么其它的问题? ...


能不能把你的相关代码发过来?反正在我的820,950上都会各种报错。。。

vbfool UID.352791
2017-08-29 回复

Quote***链接停止解析***
能不能把你的相关代码发过来?反正在我的820,950上都会各种报错。。。


[mw_shl_code=csharp,true] async void OpenApplication()
{
var manager = new PackageManager();
var ps = manager.FindPackagesForUser("");
foreach (var item in ps)
{
try
{
var ls = await item.GetAppListEntriesAsync();
foreach (var item1 in ls)
{
if (item1.DisplayInfo.DisplayName.Contains("网易"))
{
await item1.LaunchAsync();
}
}
}
catch (Exception ex)
{

// throw;
}
}
}[/mw_shl_code]

950亲测有效。
权限需要加
[mw_shl_code=xml,true] <rescap:Capability Name="packageQuery" />[/mw_shl_code]

vbfool UID.352791
2017-08-29 回复

如果你记得PackageId的话,也不用像我一样逐个去遍历了。还有,有的app在调用GetAppListEntriesAsync的时候好像是会报错的,所以我用Try Catch给忽略掉了。

Cre****rLv UID.2673160
2017-08-29 使用 Lumia 950美版 回复

Quotevbfool 发表于 2017-8-29 17:27
如果你记得PackageId的话,也不用像我一样逐个去遍历了。还有,有的app在调用GetAppListEntriesAsync的时候 ...


原来如此=_=

Cre****rLv UID.2673160
2017-08-29 使用 Lumia 950美版 回复

Quotevbfool 发表于 2017-8-29 17:25
[mw_shl_code=csharp,true] async void OpenApplication()
{
var manager = new Pac ...


你确定可以FindPackagesForUser("");?不会报错?不是需要用户的sid吗?

Cre****rLv UID.2673160
2017-08-29 回复

Quotevbfool 发表于 2017-8-29 17:25
[mw_shl_code=csharp,true] async void OpenApplication()
{
var manager = new Pac ...


加了权限依然报错=_=

vbfool UID.352791
2017-08-30 回复

Quote***链接停止解析***
你确定可以FindPackagesForUser("");?不会报错?不是需要用户的sid吗?


这个空着表示当前用户

vbfool UID.352791
2017-08-30 回复

你的Manfist贴出来看看,是不是把权限写错了。
或者说,你启动的那个app本身有问题?你试试启动其它的app呢?

Cre****rLv UID.2673160
2017-08-30 使用 Lumia 950美版 回复

Quotevbfool 发表于 2017-8-30 01:28
你的Manfist贴出来看看,是不是把权限写错了。
或者说,你启动的那个app本身有问题?你试试启动其它的app呢 ...


我试过很多app,我权限是照着微软Doc复制的(lll¬ω¬)明天贴代码,现在电脑关了=_=

Cre****rLv UID.2673160
2017-08-30 回复

Quotevbfool 发表于 2017-8-30 01:28
你的Manfist贴出来看看,是不是把权限写错了。
或者说,你启动的那个app本身有问题?你试试启动其它的app呢 ...


<?xml version="1.0" encoding="utf-8"?> <Package xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10" xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities" xmlns:mp="http://schemas.microsoft.com/appx/2014/phone/manifest" xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10" xmlns:uap3="http://schemas.microsoft.com/appx/manifest/uap/windows10/3" IgnorableNamespaces="uap mp uap3 rescap"> <Identity Name="LumiaConnector" Publisher="CN=Creeper Network Tech" Version="1.0.0.0" /> <mp:PhoneIdentity PhoneProductId="f46644f8-91d0-4d03-aa06-124949dba740" PhonePublisherId="00000000-0000-0000-0000-000000000000" /> <Properties> <DisplayName>LumiaConnector</DisplayName> <PublisherDisplayName>Creeper Network Tech</PublisherDisplayName> <Logo>Assets\StoreLogo.png</Logo> </Properties> <Dependencies> <TargetDeviceFamily Name="Windows.Universal" MinVersion="10.0.0.0" MaxVersionTested="10.0.0.0" /> </Dependencies> <Resources> <Resource Language="x-generate" /> </Resources> <Applications> <Application Id="App" Executable="$targetnametoken$.exe" EntryPoint="LumiaConnector.App"> <uap:VisualElements DisplayName="LumiaConnector" Square150x150Logo="Assets\Square150x150Logo.png" Square44x44Logo="Assets\Square44x44Logo.png" Description="LumiaConnector" BackgroundColor="transparent"> <uap:DefaultTile Wide310x150Logo="Assets\Wide310x150Logo.png" Square310x310Logo="Assets\LargeTile.png" Square71x71Logo="Assets\SmallTile.png"> </uap:DefaultTile> <uap:SplashScreen Image="Assets\SplashScreen.png" /> </uap:VisualElements> <Extensions> <uap3:Extension Category="windows.appService"> <uap3:AppService Name="lumiahelper" SupportsRemoteSystems="true"/> </uap3:Extension> </Extensions> </Application> </Applications> <Capabilities> <Capability Name="internetClient" /> <uap:Capability Name="removableStorage" /> <uap3:Capability Name="remoteSystem" /> <uap:Capability Name="userAccountInformation" /> <rescap:Capability Name="packageQuery"/> <rescap:Capability Name="packageManagement"/> <DeviceCapability Name="location" /> </Capabilities> </Package> 这就是我的Manifest(lll¬ω¬)

vbfool UID.352791
2017-08-30 回复

本帖最后由 vbfool 于 2017-8-30 13:25 编辑

看起来没什么错啊,为什么你那里会报错呢?你在PC上测试正常么?

Cre****rLv UID.2673160
2017-08-30 使用 Lumia 950美版 回复

Quotevbfool 发表于 2017-8-30 13:22
看起来没什么错啊,为什么你那里会报错呢?你在PC上测试正常么?


pc上没试过,毕竟这是为手机设计的应用=_=只能用另外一台设备来连接操控=__

vbfool UID.352791
2017-08-30 回复

Quote***链接停止解析***
pc上没试过,毕竟这是为手机设计的应用=_=只能用另外一台设备来连接操控=__ ...


我是指你把单独的这段代码弄一个PC版的UWP程序来测试一下。

artfly08 UID.2900999
2018-06-26 使用 Lumia 950 XL 回复

支持

artfly08 UID.2900999
2018-07-14 使用 Lumia 950 XL 回复

不懂

本站使用Golang构建,点击此处申请开源鄂ICP备18029942号-4联系站长投诉/举报