天道酬勤,学无止境

链接在某些设备中未作为免安装应用打开(Link is not opened as instant app in some devices)

问题

我已在 Play 商店中发布了我的免安装应用。 当我单击 gmail 中的链接时,它会在某些设备中作为即时应用程序打开(三星 s6 note、moto g4 plus)

在某些设备中它不工作,但这些设备有设置->谷歌->免安装应用选项。 但即时应用程序不起作用。

我的数字资产链接是 https://abdcoop.mybuzztm.com/.well-known/assetlinks.json

任何人都能够建议我缺少什么?

我已经添加了我的日志。

I/Timeline: Timeline: Activity_launch_request time:74970969
I/ActivityManager: START u0 {act=android.intent.action.VIEW dat=https://www.google.com/... pkg=com.android.chrome cmp=com.android.chrome/com.google.android.apps.chrome.Main (has extras)} from uid 10087 on display 0
D/WtProcessController: onAMCreateActivity callback
D/ActivityTrigger: ActivityTrigger activityPauseTrigger 
E/ANDR-PERF-MPCTL: Invalid profile no. 0, total profiles 0 only
E/ActivityManager: Invalid thumbnail dimensions: 0x0
D/PowerManagerService: acquireWakeLockInternal: lock=176192276, flags=0x1, tag="*launch*", ws=WorkSource{10059}, uid=1000, pid=1562
D/PowerManagerService: updateWakeLockSummaryLocked: mWakefulness=Awake, mWakeLockSummary=0x1
D/PowerManagerService: updateUserActivitySummaryLocked: mWakefulness=Awake, mUserActivitySummary=0x1, nextTimeout=2222436507 (in 2147465528 ms)
D/WtProcessController: onAMPauseActivity callback
I/art: Note: end time exceeds epoch: 
I/art: Note: end time exceeds epoch: 
D/WtProcessController: onAMRestartActivity callback
D/WtProcessController: set foreground process size 2 pid:10443pacakgeName:com.android.chrome
I/Timeline: Timeline: App_transition_ready time:74971012
D/ConnectivityService: listenForNetwork for Listen from uid/pid:10059/10443 for NetworkRequest [ id=49, legacyType=-1, [ Capabilities: INTERNET&NOT_RESTRICTED&TRUSTED] ]
I/cr_InstantAppsHandler: Not handling with Instant Apps
I/Timeline: Timeline: Activity_launch_request time:74971029
D/Babel: onCreate: Shutdown runnable posted in onCreate with a delay of 5000 ms.
W/AD-PLUGIN-AppInstallActivateManager: Two apps are same
I/ActivityManager: START u0 {act=android.intent.action.VIEW dat=https://www.google.com/... flg=0x800000 pkg=com.android.chrome cmp=com.android.chrome/org.chromium.chrome.browser.customtabs.CustomTabActivity (has extras)} from uid 10059 on display 0
I/Timeline: Timeline: App_transition_ready time:74971039
D/WtProcessController: onAMCreateActivity callback
D/ActivityTrigger: ActivityTrigger activityPauseTrigger 
D/PowerManagerService: acquireWakeLockInternal: lock=176192276, flags=0x1, tag="*launch*", ws=WorkSource{10059}, uid=1000, pid=1562
D/PowerManagerService: updateWakeLockSummaryLocked: mWakefulness=Awake, mWakeLockSummary=0x1
D/PowerManagerService: updateUserActivitySummaryLocked: mWakefulness=Awake, mUserActivitySummary=0x1, nextTimeout=2222436507 (in 2147465465 ms)
D/DisplayPowerController: requestPowerState: policy=BRIGHT, useProximitySensor=false, screenBrightness=102, screenAutoBrightnessAdjustment=0.96850395, brightnessSetByUser=true, useAutoBrightness=true, blockScreenOn=false, lowPowerMode=false, boostScreenBrightness=false, dozeScreenBrightness=-1, dozeScreenState=UNKNOWN, waitForNegativeProximity=false
D/PowerManagerService: updateDisplayPowerStateLocked: mDisplayReady=true, policy=3, mWakefulness=1, mWakeLockSummary=0x1, mUserActivitySummary=0x1, mBootCompleted=true, mScreenBrightnessBoostInProgress=false
D/WtProcessController: onAMPauseActivity callback
D/Babel: Idle: Shutdown runnable posted in release with a delay of 5000 ms.
D/ActivityThreadInjector: clearCachedDrawables.
D/wpa_supplicant: wlan0: Control interface command 'SIGNAL_POLL'
D/wpa_supplicant: CTRL-DEBUG: global_ctrl_sock-sendto: sock=11 sndbuf=229376 outq=0 send_len=48
D/WtProcessController: onAMRestartActivity callback
I/Timeline: Timeline: App_transition_ready time:74971054
D/WtProcessController: onAMDestroyActivity callback
D/PowerManagerService: releaseWakeLockInternal: lock=16046967 [hangouts_rtcs], flags=0x0
D/PowerManagerNotifier: onWakeLockReleased: flags=1, tag="hangouts_rtcs", packageName=com.google.android.talk, ownerUid=10087, ownerPid=10590, workSource=null
D/PowerManagerService: updateWakeLockSummaryLocked: mWakefulness=Awake, mWakeLockSummary=0x1
D/PowerManagerService: updateUserActivitySummaryLocked: mWakefulness=Awake, mUserActivitySummary=0x1, nextTimeout=2222436507 (in 2147465446 ms)
D/DisplayPowerController: requestPowerState: policy=BRIGHT, useProximitySensor=false, screenBrightness=102, screenAutoBrightnessAdjustment=0.96850395, brightnessSetByUser=true, useAutoBrightness=true, blockScreenOn=false, lowPowerMode=false, boostScreenBrightness=false, dozeScreenBrightness=-1, dozeScreenState=UNKNOWN, waitForNegativeProximity=false
D/PowerManagerService: updateDisplayPowerStateLocked: mDisplayReady=true, policy=3, mWakefulness=1, mWakeLockSummary=0x1, mUserActivitySummary=0x1, mBootCompleted=true, mScreenBrightnessBoostInProgress=false
D/Babel: Idle: Shutdown runnable posted in release with a delay of 5000 ms.
I/Babel_Conv: Conversation loader finished for Ugxb1fhtNlDEfBW1SlN4AaABAagBiKycDw, count# 1
V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@5d28c18
V/BoostFramework: BoostFramework() : mPerf = com.qualcomm.qti.Performance@3e52671
I/ActivityManager: Start proc 12361:com.android.chrome:sandboxed_process3/u0i10 for service com.android.chrome/org.chromium.content.app.SandboxedProcessService3
I/art: Late-enabling -Xcheck:jni
D/WtProcessController: onAMProcStart callback
W/cr_tabmodel: Starting to fetch tab list.
E/cr_tabmodel: State file does not exist.
W/Binder_8: type=1400 audit(0.0:477087): avc: denied { ioctl } for path="socket:[978012]" dev="sockfs" ino=978012 ioctlcmd=7704 scontext=u:r:system_server:s0 tcontext=u:r:system_server:s0 tclass=unix_stream_socket permissive=0
D/ActivityThreadInjector: clearCachedDrawables.
W/Binder_8: type=1400 audit(0.0:477088): avc: denied { ioctl } for path="socket:[978012]" dev="sockfs" ino=978012 ioctlcmd=7704 scontext=u:r:system_server:s0 tcontext=u:r:system_server:s0 tclass=unix_stream_socket permissive=0
I/Timeline: Timeline: App_transition_ready time:74971116
D/TidaProvider: TidaProvider()
I/art: Background partial concurrent mark sweep GC freed 10565(740KB) AllocSpace objects, 1(1600KB) LOS objects, 30% free, 36MB/52MB, paused 3.391ms total 139.710ms
I/Timeline: Timeline: App_transition_ready time:74971143
I/Timeline: Timeline: App_transition_ready time:74971145
W/System: ClassLoader referenced unknown path: /system/app/Chrome/lib/arm
I/Timeline: Timeline: App_transition_ready time:74971151
I/Timeline: Timeline: App_transition_ready time:74971154
W/dboxed_process3: type=1400 audit(0.0:477089): avc: denied { search } for name="tmp" dev="dm-1" ino=21 scontext=u:r:isolated_app:s0:c512,c768 tcontext=u:object_r:shell_data_file:s0 tclass=dir permissive=0
I/Timeline: Timeline: App_transition_ready time:74971166
I/cr_ChildProcessService: Creating new ChildProcessService pid=12361
I/ActivityManager: Displayed com.android.chrome/org.chromium.chrome.browser.customtabs.CustomTabActivity: +116ms (total +162ms)
V/PhoneStatusBarPolicy: updateManagedProfile mManagedProfileFocused: false mKeyguardVisible: false mCurrentUserId:0 mCurrentProfileId:0 mSecondSpaceStatusIconVisible: true showIcon:false
回答1

从文档中它显示:

Android Instant Apps 支持从 Android 6.0(API 级别 23)到 Android O 的最新 Android 设备,覆盖 40 多个国家/地区。 我们很快就会向更多设备和国家/地区推出,包括很快扩大对 Android 5.0(API 级别 21)设备的支持。

因此,请确保您所在的国家/地区受支持并且设备包含 Android 版本 6 或更高版本。(您可以在设备中查看)。 如果设备是 Lollipop (Android 5.0)。 该功能可能尚未添加,尽管手机显示了设置。 因此,请访问并与 Android 资源保持联系,以检查支持功能是否已添加到 Lollipop 设备中!

受限制的 HTML

  • 允许的HTML标签:<a href hreflang> <em> <strong> <cite> <blockquote cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <h2 id> <h3 id> <h4 id> <h5 id> <h6 id>
  • 自动断行和分段。
  • 网页和电子邮件地址自动转换为链接。

相关推荐
  • 预发布免安装应用无法通过动态链接启动(pre-release instant app cannot be launched through dynamic link)
    问题 在这里,我开发了一个带有Android Instant App 文档支持的即时应用程序。 App 和免安装应用版本号相同,应用发布为公测,免安装应用发布为预发布。 它在我的设备上运行良好,可以通过 Google App、Chrome、电子邮件中的动态链接启动,但从几个小时前开始它总是跳转到相关网站。 我已经清除了 Google Play Service 和 Google Play Service for Instant App 的缓存数据和应用数据,重新登录了我的 Google 帐户,重新启用了免安装应用,清除了 Chrome 历史记录和缓存数据,重新登录了我的 Google 帐户铬合金。 重新检查assetslink.json,重新检查manifest文件中的urls intent,都和之前的版本一样,除了版本代码build.gradle没有变化。 我测试了 Wish,它的即时应用程序可以在 Chrome 中打开,但我的即时应用程序无法打开,只显示网站,即使使用 adb 命令启动。 adb shell am start -a android.intent.action.VIEW -c android.intent.category.BROWSABLE -d https://xxxx.xxxx.com/index.html -n "com.google.android
  • Android Instant App - Play Console 发布/部署错误和 DAL(数字资产链接)未链接(Android Instant App - Play Console release/deploy error and DAL(digital Asset Link) not linked)
    问题 我想弄清楚为什么 Play 商店不接受我的即时应用程序构建。 我已成功向测试人员部署了Alpha常规应用程序版本,因为它是发布免安装应用程序的先决条件。 我正在尝试部署开发版即时应用程序。 我究竟做错了什么? 我试图添加尽可能多的细节。 我是否需要将以下链接中的 Digital Asset Link API 服务用于生产即时应用程序,还是用于其他用途? https://console.developers.google.com/apis/api/digitalassetlinks.googleapis.com/overview 将免安装应用程序版本上传到播放控制台时出现以下错误: 您的网站“example.com”尚未通过数字资产链接协议链接到您的应用。 请通过数字资产链接协议将您的网站链接到您的应用程序。 我有点困惑的一件事是为什么当我单击链接并验证时会收到错误消息“添加资产报表失败。 ”如下图所示: 我注意到当我单击链接并验证按钮时,它修改base 中的 strings.xml 文件并添加以下字符串: <string name="asset_statements" translatable="false">[{\n \"relation\": [\"delegate_permission/common.handle_all_urls\"],\n \"target\": {
  • 发布免安装应用:无法启动,如何排查?(Published an instant app: can't make it to start, how do I troubleshoot?)
    问题 我刚刚发布了我的第一个免安装应用程序 - 现在它是一个非常基本的 Hello World,但我已将它链接到我的个人网站。 我在我的网站上启用了 Android 应用程序链接,并且我已经验证它可以正常工作:当安装了“普通”apk 时,如果我点击我网站的链接,它会打开应用程序,而不会询问我是否想要在 Chrome 中打开它。 但是当没有安装 apk 时,如果我点击我网站的链接,Instant App 不会启动 - 我的网站在 Chrome(或 Chrome 标签)中打开,我不知道为什么。 我该如何解决这个问题? 注意:当我发布时,我确实在 Play 商店控制台上收到了这个警告: PROBLEM Some users of this Instant App APKs will not be eligible for any of the APKs in your installed app. RESOLUTION Ensure that the targeting of your Instant App APKs matches the targeting of your APKs. 我不知道它是否相关,不幸的是我不知道这意味着什么或如何解决它...... 编辑 2017-07-01 实际上它在几天后开始工作。 我想这意味着即使可安装的应用程序在几分钟后就可以在商店中使用
  • Android中有什么方法可以强制打开要在Chrome中打开的链接?(Is there any way in Android to force open a link to open in Chrome?)
    问题 我目前正在测试使用许多jQuery动画开发的Web应用程序,并且我们注意到内置Web浏览器的性能确实很差。 在Chrome中进行测试时,Web应用程序的性能令人难以置信地更快。 我只是想知道是否有任何一种脚本会强制在Android版Chrome浏览器中打开链接,就像在iOS中那样。 回答1 实现此目的的一种更优雅的方法是Intent.ACTION_VIEW使用Intent.ACTION_VIEW intent,但将com.android.chrome包添加到该intent中。 无论Chrome是否为默认浏览器,此方法均有效,并且可以确保行为与用户从选择器列表中选择Chrome时完全相同。 String urlString = "http://mysuperwebsite"; Intent intent = new Intent(Intent.ACTION_VIEW,Uri.parse(urlString)); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent.setPackage("com.android.chrome"); try { context.startActivity(intent); } catch (ActivityNotFoundException ex) { // Chrome browser
  • 在iOS 8中未调用didRegisterForRemoteNotificationsWithDeviceToken,但didRegister…Settings为(didRegisterForRemoteNotificationsWithDeviceToken not called in ios8, but didRegister…Settings is)
    问题 我遵循了这个线程,但是方法didRegisterForRemoteNotificationsWithDeviceToken仍然没有被调用: 该文件说: 调用UIApplication对象的registerForRemoteNotifications方法后,设备注册成功完成后,应用程序将调用此方法 didRegisterUser看起来不错,但是did register notif 。 这是我在AppDelegate中的代码(应用程序版本为8.1): - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { //register notif UIUserNotificationType userNotificationTypes = (UIUserNotificationTypeAlert | UIUserNotificationTypeBadge | UIUserNotificationTypeSound); UIUserNotificationSettings *settings = [UIUserNotificationSettings settingsForTypes:userNotificationTypes
  • 从另一个应用程序打开TestFlight应用程序并深度链接到特定应用程序(Opening TestFlight app from another app and deep link to specific app)
    问题 我如何找到另一个应用程序的方案并从自己的iOS应用程序进行深链接? 更具体地说,我想在某些条件(由我的代码设置)下深入链接到Testflight应用。 我假设该人已安装了Testflight(这可能是一个错误的假设,但我们可以接受该假设)。 我知道在Android上,您可以查询应用程序并发送意图以深层链接到其他人的应用程序。 在iOS上相当于什么? 回答1 您需要做两件事。 首先,检查是否已安装TestFlight。 然后创建一个指向您的应用程序的新链接。 NSURL *customAppURL = [NSURL URLWithString:@"itms-beta://"]; if ([[UIApplication sharedApplication] canOpenURL:customAppURL]) { // TestFlight is installed // Special link that includes the app's Apple ID customAppURL = [NSURL URLWithString:@"https://beta.itunes.apple.com/v1/app/978489855"]; [[UIApplication sharedApplication] openURL:customAppURL]; } 这个特殊的https:/
  • 是否可以在模拟设备上发现和运行第三方 Android Instant Apps?(Is it possible to discover and run third-party Android Instant Apps on an emulated device?)
    问题 我目前正在尝试了解 Android 即时应用程序。 由于我没有任何支持它们的真实设备,我使用的是模拟器(来自 Android Studio 3.0 Canary 9)。 我可以在我模拟的 Nexus 5x(带有 Play 商店)上成功运行“玩具”即时应用程序(像这样),所以我相信我的开发环境配置正确。 但是,我很想了解第三方应用程序的发现过程,并了解用户体验是什么样的。 由于缺乏适合自己的设备,我使用模拟的 Chrome 浏览器来搜索启用了即时应用程序的站点(如 Stack Exchange)。 但这些搜索只给我常用的网站(不是即时应用程序)。 我非常感兴趣地阅读了这篇文章,因为它似乎表明这应该有效。 但是,这些答案似乎对我没有帮助。 我在澳大利亚,这应该是支持 Instant Apps 的国家之一。 正如一个答案中所建议的那样,我尝试发送应该在电子邮件中的即时应用程序中打开的链接,然后单击它们,但它仍然只是将我发送到浏览器链接。 关于 DAL 验证的答案很有趣,但在浏览器中打开链接时似乎不应该适用? API 24 和 API 26 模拟设备(两者都包括 Play 商店)目前的情况有些不同,可能是因为我一直在尝试各种技巧来使其工作。 (TLDR:没有什么对我有用。) 在 API 24 模拟设备上,如果我输入adb shell pm list packages grep
  • 如何修复Android中未安装应用程序错误(How to fix App not installed error in Android)
    问题 我开发了 android 应用程序,当从此应用程序创建 APk(使用Generate Signed APK )以及在其他设备上安装此 apk 时未安装并在手机上向我显示此错误:未安装应用程序 我该如何解决? 回答1 这通常是在您有一个使用不同证书签名的调试 apk 并且您尝试安装具有不同证书的发布版本时引起的。 如果设备上有调试 apk,请尝试将其卸载并重试。 回答2 对我来说, **disabling Google Play Protect**从 Play 商店应用程序中**disabling Google Play Protect**选项是有效的,并且我能够摆脱应用程序未安装错误。 检查 Google Play 商店导航菜单中提供的播放保护选项。 回答3 从您的项目中删除构建文件夹,然后再次构建项目.. 为我工作 回答4 向 Google Play Protect 提出上诉 创建 URL 以下载 APK 文件的正确方法 您需要创建一个直接链接来下载应用程序,而不是驱动器。 首先,我将我的应用程序上传到谷歌驱动器并分享了链接。 提交上诉后,我立即收到了一封邮件 你好您最近向 Google Play 保护机制提交了针对某个应用的申诉。 您提供的链接没有指向 APK 文件或文件已损坏。 请提交新的申诉并检查您提供的链接是否指向正确的 APK 文件。 感谢 Google Play
  • 通过重定向链接在Google Play中打开应用(Opening app in Google Play from a redirect link)
    问题 在Android设备上,打开指向Google Play上的应用的链接: https://play.google.com/store/apps/details?id=com.rovio.angrybirds&hl=zh_CN 默认情况下会自动打开Goog​​le Play应用。 但是,如果您具有重定向到Google Play链接的链接,则设备会打开浏览器,然后导航到Google Play的浏览器版本。 为什么会发生这种现象? 不幸的是,我无法将Market://与可以打开Play的Intents一起使用,我只能控制一个Web链接。 编辑:好像我有链接重定向到market://网址,它可以在设备上的Google Play上打开。 如果在浏览器中打开了链接,尽管浏览器不支持market://,但它仍可以通过某种方式重定向到Google Play的浏览器版本。 回答1 基本上,https:// play ....只是一个Web URL。 我怀疑它的工作方式(这是Android工作的标准方式)是: Market Play应用程序进行注册以能够处理此类URL(您可以注册以处理某些意图,并应用过滤器以进一步定义应用程序将处理的内容)。 该应用程序使用https:// play ... URL启动Intent。 系统会向用户显示所有已注册用于处理该意图的应用程序的列表。 这样
  • 是否可以为iPhone应用程序(例如YouTube和地图)注册基于http +域的URL方案?(Is it possible to register a http+domain-based URL Scheme for iPhone apps, like YouTube and Maps?)
    问题 每当手机上安装了我的应用程序时,我都希望iOS可以使用我的应用程序打开域中的URL(例如,http://martijnthe.nl),如果没有安装,则可以使用Mobile Safari打开。 我读到可以为此创建一个唯一的协议后缀并将其注册到Info.plist中,但是如果未安装该应用程序,Mobile Safari将给出错误消息。 有什么解决方法? 一个想法: 1)使用在任何桌面浏览器中打开的http:// URL,并通过浏览器呈现服务 2)检查User-Agent,如果是Mobile Safari,请打开myprotocol:// URL(尝试)以打开iPhone应用程序,并打开Mobile iTunes以下载该应用程序,以防尝试失败 不知道这是否行得通...建议? 谢谢! 回答1 我认为这样做的最不麻烦的方式如下: 检查用户代理是否为iPhone / iPod Touch的用户代理检查是否有应用appInstalled cookie 如果cookie存在并且设置为true,则将window.location设置为your-uri:// (或执行重定向服务器端) 如果cookie不存在,请打开“您是否知道您的站点名称具有iPhone应用程序?” 并带有“是的,我已经知道了”,“不,但我想尝试一下”和“让我一个人”按钮的模式。 “是
  • 从iOS应用打开指向Facebook页面的链接(Open link to Facebook page from iOS app)
    问题 我想将用户重定向到我的应用程序的Facebook页面,所以我有以下代码: [[UIApplication sharedApplication] openURL: [NSURL URLWithString: @"https://facebook.com/myAppsPage"]]; 如果设备上没有Facebook应用程序,则效果很好。 然后,链接在Safari中打开。 如果设备上安装了Facebook应用程序,则在执行上述代码后,Facebook应用程序将打开,但它显示的是用户时间轴,而不是我的应用程序页面。 我试图将链接更改为@"fb://pages/myAppsPage"和@"fb://profile/myAppsPage ,但这再次打开了用户时间轴。 所以,我的问题是:如果没有Facebook应用程序,如何在野生动物园中打开我的应用程序页面;如果安装了Facebook应用程序,如何在Facebook应用程序中打开我的应用程序页面。 回答1 您必须使用给定页面的Facebook ID而不是虚荣网址。 要获取页面ID,请在以下URL中输入页面的别名,然后复制“ id”的值: https://graph.facebook.com/yourappspage 拥有ID后,您可以设置方法以使用canOpenURL方法检查FB是否已安装,并为两种状态提供适当的内容: NSURL
  • 浏览器中的phonegap打开链接(phonegap open link in browser)
    问题 <a target="_blank" data-rel="external" href="http://www.kidzout.com">www.kidzout.com</a> 嘿专家,我正在使用phonegap 2.9.0,我正在使用上面的代码在浏览器中打开链接,但它在同一应用程序中打开了……如何打开Safari浏览器? 它会在同一个应用程序中打开网站,然后我无法返回到该应用程序,因此我需要删除该应用程序并重新安装..... 回答1 根据类似问题的建议,根据InAppBrowser文档,使用JavaScript调用window.open并将target参数设置为_system : <a href="#" onclick="window.open('http://www.kidzout.com', '_system'); return false;">www.kidzout.com</a> 这应该可行,尽管更好,更灵活的解决方案是拦截所有链接的click事件,并使用从链接属性中读取的参数调用window.open 。 请记住,您必须安装InAppBrowser插件才能起作用: cordova plugin add cordova-plugin-inappbrowser 回答2 正如其他帖子中回答的那样,针对不同的平台,您有两种不同的选择。 我要做的是: document
  • Branch 深层链接打不开申请(Branch Deep link not opening application)
    问题 我一直在尝试(失败)使用 Branch 来实现到我们的 iOS 应用程序的深度链接。 分支 URL 直接重定向到 App Store,从不尝试打开应用程序。 我肯定错过了什么。 我所做的: 包括科SDK(的CocoaPods)新增branch_key应用的plist 将 URL Scheme 添加到应用程序 plist 中的 URL 类型在开发者控制台中的项目和 App ID 中启用Associated Domains 。 确保权利文件包含在构建中。 在 AppDelegate 中注册的深层链接处理程序 仪表板:设置 -> 链接设置: 选中“始终尝试打开应用程序” “IOS URI Scheme”设置为应用程序的自定义 URI 方案。 选中“启用通用链接”。 Bundle Identifier & Apple App Prefix 都设置正确。 在 Branch Dashboard 中的“Marketing”选项卡下,我创建了一个链接。 我正在通过电子邮件将此链接发送给自己并在设备 (Mail.app) 上打开它。 Safari 会打开,然后 App Store 也会打开,就好像应用程序没有安装一样。 application:openURL:sourceApplication:annotation和application:continueUserActivity
  • 从链接打开应用程序的意图过滤器在三星浏览器/火狐等中不起作用但在 Chrome 中运行(Intent filter for opening app from a link not working in Samsung Browser/Firefox etc. but working in Chrome)
    问题 在过去的几个小时里,我一直在试验意图过滤器,我真的很困惑为什么通过意图过滤器处理应用程序链接的 Google 教程代码在我的物理三星 S8 设备的默认三星浏览器或安装在上面的 Firefox 上不起作用但是在 Google Chrome 应用程序中工作。 该代码也适用于默认的 Android Studio Nexus 5 模拟器默认浏览器应用程序以及 Google Chrome。 这是我试图诊断问题的准系统应用程序的AndroidManifest.xml中的相关代码: <intent-filter"> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <data android:scheme="http" /> <data android:scheme="https" /> <data android:host="www.android.com" /> </intent-filter> 我正在做什么来测试: 我从 Google 的搜索结果页面单击 https://www
  • 在iPhone中未收到任何推送通知(Not receiving any push notification in iPhone)
    问题 我已经使用本教程制作了一个用于Push Notification的PushTest应用程序示例。 在上面的教程中,我得到消息“ PushTest”想向您发送“推送通知”(恰好一次),然后我从iPhone中删除了该应用程序,重新启动iPhone,但无法再次获得相同的消息。 我已经运行了脚本sample.php(更新建议的更改),并得到了“已连接到APNS”和“您的消息发送”消息。 但是我没有收到任何推送通知。 请指导我哪里错了? 还是我尝试推送通知的方式。 回答1 仅在2种情况下您不会收到“推送”通知 1.)如果您的应用程序位于前台。 2.)您的设备令牌对于接收推送通知无效,请检查两个条件,如果您仍然没有收到推送,请通知我。 谢谢 回答2 确保您使用的是启用了推送通知的设置配置文件。 然后检查您是否正在向服务器发送令牌。 回答3 注意电池问题,将您封锁一天或更长时间 除非手机已充满电,否则切勿在开发模式(系留电话)中开始测试推送。 https://developer.apple.com/library/archive/technotes/tn2265/_index.html 如果您的通知有效内容包含内容可用的密钥,则如果iOS或OS X确定这样做是节能的,则您的应用将收到通知。 如果超出设备的能源或数据预算,则在重置预算之前,您的应用将不会再收到带有可用内容密钥的通知。
  • 网址方案:如何创建链接,该链接将在Google云端硬盘应用中打开文档(URL Scheme: How can I create a link, which will open a document in the Google Drive app)
    问题 我正在尝试创建一个网页,其中嵌入了多个Google文档。 我的问题是,当在android设备上查看此页面时,会向用户显示基于Web的可怕的Google文档编辑器。 因此,我想在页面上创建一个链接,该链接会在用户手机上打开本机Google云端硬盘应用,以便他/她可以在此处编辑文档。 搜索两个小时后,我无法弄清楚如何建立链接,该链接会自动在本机应用程序中打开文档。 我使用以下链接成功查看了Google市场中的Google云端硬盘应用: market:// details?id = com.google.android.apps.docs 我也尝试过 googledrive:// no-idea-what-to-write-here 但这也没有成功。 这有可能吗,还是仅在iOS上有效? 回答1 似乎没有一种执行所需操作的好方法(至少根据我对Android 4.0.4的测试;也许其他版本的情况有所不同)。 使用应用拦截到的http:或https:链接 从理论上讲,仅使用文档的https://docs.google.com/...链接即可为您工作。 根据StackOverflow上的此答案,从Android浏览器打开链接时,拦截http:或https: URL是启动应用程序的正确方法。 Google云端硬盘应用正是这样做的-它为https://drive.google.com
  • AOSP>设计>测试>(第三节)兼容性测试套件CTS
    AOSP>设计>测试>兼容性测试套件CTS 第三节 兼容性测试套件(CTS)概览工作流程测试用例的类型涵盖的领域 设置CTS物理环境蓝牙 LE 信标相机GPS/GNSSWLAN 和 IPv6Wi-Fi RTT(往返时间) 台式机设置ADB 和 AAPTJava 开发套件 (JDK)CTS 文件设备检测 Android 设备设置用户版本初始 API 级别版本属性CTS Shim 应用示例小程序存储空间要求屏幕和存储空间开发者 UICC Android 设备配置 运行CTS (Android S)概览CTS tradefed 使用入门使用 CTS v2 控制台选择计划CTS v2 控制台命令参考 使用 CTS v1 控制台选择计划CTS v1 控制台命令参考 在本地运行媒体测试资料下载设置CTS媒体测试SD卡方法(仅适用于CtsMediaTestCases)本地服务器方法(仅适用于CtsMediaTestCases)主机方法(对于所有三个模块) 运行CTS媒体测试SD卡方法(仅适用于CtsMediaTestCases)本地服务器方式主机方法 命令控制台CTS v2 命令控制台使用CTS v2控制台选择计划CTS v2控制台命令参考 CTS v1 命令控制台 免安装应用免安装应用限制在免安装应用模式下运行的测试免安装模式下的测试失败情况问题排查 运行CTS验证程序概览要求设置运行测试
  • IOS10 Firebase 动态链接显示带有打开按钮的空白页面。 但为什么?(IOS10 Firebase Dynamic Link Show a Blank Page with Open Button. But Why?)
    问题 如果未安装应用程序,则显示空白图像 我试图实现 firebase 动态链接。 如果应用程序安装在设备中,它可以完美运行,但如果未安装应用程序,它会显示此页面。每次我尝试去应用程序商店时都会发生这种情况。 有没有人有任何解决方案? 请告诉我。 谢谢 回答1 如果您已通过 Firebase 控制台手动创建链接。 您可以通过从控制台编辑链接来跳过应用程序预览页面。 -> Dynamic Links -> Edit Link -> under 'Campaign tracking, social tags and advanced options' -> check 'Skip the app preview page' 回答2 这是一种有意为之的方式,旨在帮助您绕过以下事实:某些应用更喜欢在其应用内 WebView 中显示所有网页内容,并且让 JavaScript 重定向(如 Firebase 动态链接通常所做的那样)难以将您带到应用商店。 也就是说,我知道这并不总是很好的体验,因此团队正在考虑添加一个选项,使此插页式页面对于您的链接是可选的。 编辑:如果您愿意,现在有一种方法可以跳过插页式广告。 将参数efr=1添加到您的链接 URL,它将跳过该页面并尝试将您直接重定向到适当的位置。 如果您在控制台中生成链接,则可以单击高级选项中的“跳过应用预览页面”复选框。 回答3 这是正常的
  • 通过USB自动启动应用程序(通过自动运行?)(Automatically launch app on USB (through autorun?))
    问题 是否可以从USB闪存驱动器中自动启动应用程序(绕过Windows提示询问用户他想做什么)? 在Windows XP或Vista上。 我查看了“ autorun.inf”,“打开”条目似乎仅适用于Windows XP SP2 +和Vista的CD驱动器。 是否可以在所有Windows版本上自动启动程序? 我不在乎用户是否在Windows设置中禁用了自动运行。 回答1 首先,出于安全考虑,有些人选择禁用自动运行。 但是Windows Vista或更高版本的Windows计算机已启用它。 编辑:显然,该功能已从Windows 7开始删除。 将名为autorun.inf的文件放在USB闪存驱动器的根目录中。 这是我的: [Autorun] Open=PStart.exe Action=Start portable apps Icon=diskicon.ico 它的作用:插入此磁盘后,启动PStart.exe 在较旧的计算机上, Open=指定的程序将自动启动。 在大多数现代计算机(Windows XP SP2 +,Vista)上,将显示“您要做什么”对话框(出于安全原因),但是autorun.inf将显示为选定的默认值,其中Icon=作为图标和Action=作为说明。 如果要启动它,只需单击对话框中的“确定”按钮。 因此,尽管我不知道有什么方法可以立即启动应用程序(例如PStart)
  • Firebase动态链接无法打开应用iOS(Firebase dynamic link not opening the app iOS)
    问题 我已经在设备上本地开发并安装了iOS应用。 并在info.plist中将自定义方案设置为mydlink 将关联的域设置为applinks:<myapp>.app.goo.gl 在Firebase上创建的动态链接为: https://<myapp>.app.goo.gl/?link=http://<mysite.com>/&ibi=<app bundle id>&ius=mydlink&ifl=https://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id%3D<app store id>%26mt%3D8&pt=<app store id> 当我打开或单击动态链接时,它会在“ App Store”应用程序中打开应用程序页面,尽管已安装但未打开应用程序本身。 我在这里想念什么? 回答1 如果您使用的是iOS 9,则将使用通用链接。 通用链接在许多情况下不起作用,例如: 如果您使用模拟器如果您尝试直接在设备上的safari中打开链接(将其键入浏览器中的address字段) 我花了很多时间尝试此操作,却无法使其以可靠的方式在模拟器上正常工作。 我最终要做的是通过电子邮件将链接发送给我,然后从收件箱中打开它。 然后它每次都能工作! 回答2 抱歉,您的回复很晚-希望您的问题已解决,这对其他可能遇到相同问题的人有所帮助