标签: google-app-indexing

iOS通用链接和GET参数

我们正在尝试使用Apple Universal Links在iOS上实现应用程序索引(我正在查看https://developer.apple.com/library/ios/documentation/General/Conceptual/AppSearch/UniversalLinks.html#//apple_ref/doc/uid/TP40016308-CH12-SW2).

在"创建和上传关联文件"部分中,我看到我可以将索引限制为特定页面,这很好.

我想将索引限制为https://www.mywebsite.com?parameter=something,我该怎么办?

我在考虑这样的事情:

{
  "applinks": {
    "apps": [],
    "details": [
      {
        "appID": "MYID",
        "paths":[ "*?parameter=*" ]
      }
    ]
  }
}
Run Code Online (Sandbox Code Playgroud)

你觉得它可行吗?我无法测试它,因为获取授权在网站根目录上上传文件需要时间,这就是为什么我问你是否认为它可以工作,我想上传文件一次,如果我能够.

谢谢

ios google-app-indexing ios-universal-links

11
推荐指数
2
解决办法
7835
查看次数

如何将我的应用程序内容与描述和预览添加到Google搜索结果中?

我找到了这篇文章:一种在您的应用中搜索内容的新方法,我对这个机会感到非常兴奋.我想在谷歌搜索结果中显示我的应用程序内容,如下所示:

Google In Apps Search

但是,本文没有关于如何在您的应用中实现此功能的任何信息.

我在我的应用程序中使用App Indexing API,如文章中所述:

这是我的代码:

...
  private GoogleApiClient mClient;

  @Override protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.ac_main);
    mClient = new GoogleApiClient.Builder(this).addApi(AppIndex.API).build();
  }

  public Action getAction() {
    Thing object = new Thing.Builder()
        .setName("Test Content")
        .setDescription("Test Description")
        .setUrl(Uri.parse("myapp://com.example/"))
        .build();

    return new Action.Builder(Action.TYPE_VIEW).setObject(object)
        .setActionStatus(Action.STATUS_TYPE_COMPLETED)
        .build();
  }

  @Override
  public void onStart() {
    super.onStart();
    mClient.connect();
    AppIndex.AppIndexApi.start(mClient, getAction());
  }

  @Override
  public void onStop() {
    AppIndex.AppIndexApi.end(mClient, getAction());
    mClient.disconnect();
    super.onStop();
  }
...
Run Code Online (Sandbox Code Playgroud)

这是结果:

搜索结果

谷歌显示我的应用程序的测试内容,但没有描述和预览图像.有没有办法在Google搜索结果中添加说明和预览图片?(如Youtube或Twitter)

android google-search android-search google-app-indexing

11
推荐指数
1
解决办法
303
查看次数

您能查询Firebase App Indexing的个人内容吗?

我有一个实施Firebase应用程序索引的应用程序.它还有自己的全文搜索实现.谷歌显然更好,我喜欢杀死我使用的那个,而不是他们的.是否可以根据自己应用的个人内容查询Firebase应用索引?我不需要/想要任何其他应用程序的内容,只有我自己的内容.

android android-app-indexing google-app-indexing firebase-app-indexing

8
推荐指数
1
解决办法
192
查看次数

应用程序崩溃AppIndexing爬行

我们注意到我们的android崩溃报告工具中的应用程序崩溃数量激增.它开始发生在大约一周前(1月7日).遇到崩溃的设备报告为运行Android 4.4.4的Calypso AppCrawler(eng.hendriks.20151229.110347).

这是堆栈跟踪:

java.lang.ClassNotFoundException:在路径上找不到类"com.app.package.here.Module $$ ModuleAdapter $ ProvideApplicationProvidesAdapter":DexPathList [[zip file"/system/framework/com.google.android.maps.jar ",zip文件"/system/framework/android.test.runner.jar",zip文件"/data/app/com.google.android.apps.appcrawler.espressocrawler-1.apk",zip文件"/ data/app/com.app.package.here-1.apk"],nativeLibraryDirectories = [/ data/app-lib/com.google.android.apps.appcrawler.espressocrawler-1,/ data/app-lib/app.app .package.here-1,/ vendor/lib,/ system/lib]]在java.lang.ClassLoader.loadClass()的dalvik.system.BaseDexClassLoader.findClass()(BaseDexClassLoader.java:56)中(ClassLoader.java: 497)在java.lang.ClassLoader.loadClass()(ClassLoader.java:457)com.app.package.here.Module $$ ModuleAdapter.getBindings()(Module $$ ModuleAdapter.java:31)at com.app .package.here.Module $$ ModuleAdapter.getBindings()(Module $$ ModuleAdapter.java:16)at dagger.ObjectGraph $ DaggerObjectGraph.makeGraph()(ObjectGraph.java:185 )at dagger.ObjectGraph $ DaggerObjectGraph.access $ 000()(ObjectGraph.java:138)at dagger.ObjectGraph.create()(ObjectGraph.java:129)at com.app.package.here.Application.buildObjectGraphAndInject()(Application .java:247)位于android.support.test上的android.app.Instrumentation.callApplicationOnCreate()(Instrumentation.java:1007)的com.app.package.here.Application.onCreate()(Application.java:126).在android.app.ActivityThread.access $ 1500()(ActivityThread.java:135)的android.app.ActivityThread.handleBindApplication()(ActivityThread.java:4328)上的runner.MonitoringInstrumentation.callApplicationOnCreate()(MonitoringInstrumentation.java:323) android.app.ActivityThread $ H.handleMessage()(ActivityThread.java:1256)位于android.os.Loper.loop()的android.os.Handler.dispatchMessage()(Handler.java:102)(Looper.java: 136)在java.lang.reflect.Method.invoke上的java.lang.reflect.Method.invokeNative()(Method.java: - 2)中的android.app.ActivityThread.main()(ActivityThread.java:5001) )(Method.java:515)在com.and roid.internal.os.ZygoteInit $ MethodAndArgsCaller.run()(ZygoteInit.java:785)位于dalvik.system.NativeStart.main的com.android.internal.os.ZygoteInit.main()(ZygoteInit.java:601) )(NativeStart.java:-2)

它似乎不会影响我们的任何用户,但显然这里有一些问题.我想知道以前有没有人遇到过这个问题?任何解决方法,修复?

android android-app-indexing google-app-indexing

7
推荐指数
0
解决办法
446
查看次数

ERROR ITMS-90046:"无效的代码签名权利".使用自定义applinks

我尝试使用Application Loader包含Associated Domains在应用程序权利中的应用程序上传应用程序,但我有一个错误:

错误ITMS-90046:"无效的代码签名权利.您的应用程序包的签名包含iOS上不支持的代码签名权利.具体而言,值'applinks:http://XXX.internal/ '用于密钥'com.apple.developer.不支持"Payload/MyApp.app/MyApp"中的关联域."

  • 我使用发行证书
  • 我已经ON在苹果开发者的App Ids中检查了Associated Domains
  • 我使用app id(启用了Associated Domains)和分发证书创建了配置文件

可能是什么问题?我已经尝试重新创建所有证书,配置文件等.

itunesconnect ios application-loader google-app-indexing

7
推荐指数
1
解决办法
4091
查看次数

Android应用程序索引和深层链接:我一直都错了吗?

我正在实现应用程序索引,我想我错过了什么,但我不知道是什么.

按照指南,我将我的intent-filters添加到应用程序并实现了我的活动所需的内容.

我的应用程序的包是com.towers.hotelsclick和相关的网站(我还没有把链接rel元标记,因为我只是测试)是www.hotelsclick.com

我在指南中看到了以下intent-filter示例

<activity
  android:name="com.example.android.PetstoreActivity"
 android:label="@string/title_petstore">
    <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.examplepetstore.com" />
    </intent-filter>
</activity>
Run Code Online (Sandbox Code Playgroud)

所以我用这种方式写了我的:

    <activity
        android:name=".ActivityForAppIndexing"
        android:label="@string/title_activity"
        android:screenOrientation="portrait" >
        <intent-filter android:label="@string/app_name">
            <data android:scheme="android-app"
                android:host="com.package.myappname" />
            <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"
                android:host="www.mywebsite.com" />
            <data android:scheme="https"
                android:host="www.mywebsite.com" />
        </intent-filter>
    </activity>
Run Code Online (Sandbox Code Playgroud)

此外,我编写了一个内容提供程序来解析URI

    <provider
        android:name=".contentproviders.HotelDetailsContentProvider"
        android:authorities="com.towers.hotelsclick" >
    </provider>
Run Code Online (Sandbox Code Playgroud)

应该如下映射URI:

    private static final String BASE_PATH = "https";
private static final String AUTHORITY …
Run Code Online (Sandbox Code Playgroud)

android uri deep-linking android-app-indexing google-app-indexing

7
推荐指数
1
解决办法
1324
查看次数

Android Studio只给我SHA1,我需要SHA256

我想使用assetlinks.json进行appindexing.我应该使用SHA256指纹,但是当我在Android Studio中打印出signedReport时,我只有SHA1.我可以使用SHA1,如果没有,我如何获得SHA256签名应用程序?

使用Manish Jain的答案我已经设法只列出调试键,这比我自己做的更多,但是如果我将实际的keystore路径和jks文件放在路径中,"keytool -list -v -keystore"C:\Users\_自我\ Keystores\android.jks"-alias mykey -storepass 1password -keypass 2password"出现了一组不同的密钥,我假设它是释放密钥集.

大问题是为什么android studio只在我从Gradle打印出signedReport时列出了调试键,为什么它说"Variant:releaseUnitTest,Config:none"?任何的想法?

顺便说一句,这个问题与建议的副本无关.

编辑:回复jyomin的问题2.我希望它也能帮助其他人.

*****对于Release:1,请转到:C:\ Program Files\Java\jdk1.7.0_25\bin(或者你的jdk文件所在的位置)2,在win explorer 3的地址栏中输入"cmd",添加:keytool -list -v -keystore"C:\ Users\yourUserName\Keystores\android.jks"-alias yourAppName -storepass yourPasswordToKeystore -keypass yourPasswordToRequiredAppKey

小心!!!如果密钥库中有多个密钥,它可能无法为您提供与给定应用程序匹配的正确密钥!

为您的应用获取SHA256的另一种方法:在开发者控制台或Firebase上,您可以在某处找到相关的SHA256密钥.我现在找不到它,但是如果你继续寻找它,它就在那里.

我刚在Google Play开发者控制台上找到它:

  • 上传您应用的第一个版本(如果您尚未完成)
  • 转到版本管理中的App Releases
  • 点击管理测试版
  • 在APK版本中,单击右侧的"i"信息按钮

它会显示SHA键

祝好运!

android sha android-app-indexing google-app-indexing firebase-app-indexing

7
推荐指数
8
解决办法
1万
查看次数

iOS DeepLinking中是否需要Google App Indexing SDK?

我想在我的网页和iOS应用中使用Google App Indexing.我确实支持使用Apples Search的Universal Links(或Google lingo中的深层链接)并相应地设置我的网页.

谷歌文档我无法确定是否真的需要添加谷歌应用程序索引SDK.SDK没有给我任何必需的功能,我宁愿跳过它 - 但谷歌是否依靠SDK才能做到这一点?

我没有对应用程序内容进行任何索引,我唯一想要编入索引的是网页,并获得相应的深层链接.

ios google-app-indexing

6
推荐指数
1
解决办法
502
查看次数

我不完全了解应用程序索引

好的,所以我知道如果我有一个网站和一个应用程序大致显示相同的内容,应用程序索引可用于在应用程序中打开指向该网站的链接(如果用户安装了它)。

为此,需要在网页中指定深层链接,以指定应用程序和内容的 URI。这也让 Googlebot 知道网页到应用程序的意图连接,以便它可以在搜索结果等中显示内容(即indexing)。还可以指定处理网站 URL 的意图过滤器,因此指向您网站的链接可以自动打开应用程序并在那里显示内容,甚至无需在浏览器中打开网页。

我在理解上遇到问题的部分是,在 Android 应用程序中,您添加了“相反”的代码(可以由 Android Studio 自动生成)。

例如

@Override
public void onStart() {
    super.onStart();

    // ATTENTION: This was auto-generated to implement the App Indexing API.
    // See https://g.co/AppIndexing/AndroidStudio for more information.
    client.connect();
    Action viewAction = Action.newAction(
            Action.TYPE_VIEW, // TODO: choose an action type.
            "Main Page", // TODO: Define a title for the content shown.
            // TODO: If you have web page content that matches this app activity's content,
            // make sure this …
Run Code Online (Sandbox Code Playgroud)

android android-app-indexing google-app-indexing firebase-app-indexing

5
推荐指数
1
解决办法
594
查看次数