小编Shi*_*e85的帖子

我应该使用什么事件在Firebase Analytics上发送"按下按钮"事件

我发现最适合的是SELECT_CONTENT,但正如文档所说:

选择内容事件.此通用事件表示用户已在应用中选择了某种类型的某些内容.内容可以是您应用中的任何对象.此活动可以帮助您识别应用中的热门内容和内容类别.

我正在将我的GA事件移动到FB,我希望保持我所拥有的舒适格式:
screen_name(category)| button_name(动作)| 值(opt_value)

我怎样才能实现这一目标?我知道我可以使用屏幕名称和按钮名称和值的自定义参数创建自定义事件但是我的参数不会在FB仪表板中可用,除非我使用值为param的int(我需要一个字符串)正如我在这里写的那样,我需要为每个按钮提前创建一个观众,这样我以后就可以用它来过滤,这完全没有任何意义(!).

此外,我现在不想与BigQuery集成.

谢谢.

android google-analytics firebase firebase-analytics

14
推荐指数
1
解决办法
2784
查看次数

android:support:fragments 保存的 Activity 越来越大导致 TransactionTooLargeException

我有一个控制多个片段的活动。默认片段是HomepageFragment. 当替换到不同的 Fragment 时,我总是确保堆栈保持平坦 - 这意味着只有HomepageFragment保持在堆栈中并在其顶部是当前 Fragment。例如:

  1. 活动开始于 HomepageFragment
  2. FragmentA需要替换 to - 一切都是好的原因HomepageFragment是最后一个 Fragment
  3. 现在堆栈是HomepageFragment->FragmentA
  4. FragmentB需要替换为- 首先弹出堆栈上的最后一个 Fragment ( fragmentA) 然后替换为FragmentB
  5. 现在堆栈是HomepageFragment->FragmentB

在生产中,我看到很多TransactionTooLargeException崩溃。

我曾经TooLargeTool跟踪问题的来源,我发现当我在活动中的片段之间切换时,其中有一个android:support:fragmentsSaveInstanceState变得越来越大(呈指数级),直到发生崩溃。

似乎即使从堆栈中弹出时,有关原始事务的一些数据也会继续保存。

按照此处的建议将其删除会导致 Activity 在被操作系统杀死后无法正确恢复。

我压平堆栈的方法有什么问题吗?有没有更好的方法?究竟保存在什么数据下android:support:fragments

注意:我没有为这些片段设置任何参数。此外,它们在其 saveInstanceState 包中保存了非常小的数据。

谢谢!

android android-fragments android-activity onsaveinstancestate transactiontoolargeexception

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

使用Libgdx和TexturePacker与xxxdpi图像失真

我是一个Android开发人员,使用LibGDX构建我的第一个游戏.阅读A LOT后,还有一件事我不明白.

我意识到我应该拥有一组图像,最高分辨率为2560x1440(用于防止丑陋的放大而不是矢量图像).

我正在使用TexturePacker打包我的图像,甚至使用线性线性来获得最高质量:

TexturePacker.Settings settings = new TexturePacker.Settings();
settings.filterMin = Texture.TextureFilter.Linear;
settings.filterMag = Texture.TextureFilter.Linear;
settings.maxWidth = 4096;
settings.maxHeight = 2048;
TexturePacker.process(settings, inputDir, outputDir, packFileName);
Run Code Online (Sandbox Code Playgroud)

我按照几个SO的建议将我的相机设置为固定的仪表并避免所有的PPM.来自Screen的C'TOR:

mCamera = new OrthographicCamera();
mCamera.viewportWidth = 25.6f; ; // 2560 / 100
mCamera.viewportHeight = 14.4f ; // 1440 / 100
mCamera.position.set(mCamera.viewportWidth / 2, mCamera.viewportHeight / 2, 0f);
mCamera.update();
Run Code Online (Sandbox Code Playgroud)

如你所见,我选择使用1米= 100像素.

现在,这意味着我应该用1/100大小绘制我的精灵,我在这里做:

TextureAtlas atlas = new TextureAtlas(Gdx.files.internal("images/pack.atlas"));
mImage = atlas.createSprite("image"));
mImage.setSize(mImage.getWidth() / 100 , mImage.getHeight() / 100);
Run Code Online (Sandbox Code Playgroud)

这有效,图像按预期显示.但是,他们被歪曲了!一个完美的圆形图像看起来像边缘像素化而不是圆形.

所以,我的问题是:

  1. 这是最佳做法还是应该以不同的方式工作?
  2. 我是否只有最高质量的图像?
  3. 失真意味着我的代码真的缩小了精灵,不知何故libgdx再次缩放它并损坏了质量?

谢谢!

编辑
我要适应@ …

sprite orthographic libgdx texturepacker texture-atlas

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

使用Linkify查找和设置文本内的链接时,处理TextView链接的单击

我有一个TextView充满了我从服务器获得的文本.我正在使用Linkify处理所有链接搜索,并在其addLinks方法中需要设置URLSpan.

问题是单击链接时的默认行为是在浏览器中打开它,我想要的是获取单击的链接并自行处理它.

我没有看到Linkify的任何方法让我设置"OnClick"或其他东西......

谢谢您帮忙 :)

android textview linkify spannable urlspan

6
推荐指数
2
解决办法
4799
查看次数

由于newrelic异常,应用程序在onCreate中崩溃

我已经使用Android Studio beta 0.8.2创建了一个Android应用程序,直到过去几天我开始得到这个异常,就像我运行它一样:

    07-24 14:50:11.044    1176-1176/com.vme.vme I/Crashlytics? Initializing Crashlytics 1.1.11.10
07-24 14:50:11.764    2325-2325/system_process D/MobileDataStateTracker? default: Broadcast received: android.intent.action.ANY_DATA_STATE apnType=default
07-24 14:50:11.769    2325-2325/system_process D/MobileDataStateTracker? default: Received state=CONNECTED, old=CONNECTED, reason=(unspecified)
07-24 14:50:15.079    1176-1176/com.vme.vme W/Crashlytics? Crashlytics initialization was not completed in the allotted time.
07-24 14:50:15.104    1176-1176/com.vme.vme I/dalvikvm? Could not find method com.newrelic.agent.android.instrumentation.Instrumentation.openConnection, referenced from method com.vme.vme.model.network.httpClient.BasicRequestHandler.openConnection
07-24 14:50:15.104    1176-1176/com.vme.vme W/dalvikvm? VFY: unable to resolve static method 30466: Lcom/newrelic/agent/android/instrumentation/Instrumentation;.openConnection (Ljava/net/URLConnection;)Ljava/net/URLConnection;
07-24 14:50:15.104    1176-1176/com.vme.vme D/dalvikvm? VFY: replacing opcode 0x71 at 0x0009
07-24 14:50:15.114 …
Run Code Online (Sandbox Code Playgroud)

android newrelic android-studio

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