这是我在Facebook上分享高分的代码:
ShareLinkContent content = new ShareLinkContent.Builder()
.setImageUrl(Uri.parse("http://www.example.com/myicon.png"))
.setContentTitle("I scored "+numPoints+" points!")
.setContentUrl(Uri.parse("https://play.google.com/store/apps/details?id=com.my.package"))
.setContentDescription("Get the game free on Google Play and beat my score.")
.build();
ShareDialog shareDialog = new ShareDialog(this);
shareDialog.show(content);
Run Code Online (Sandbox Code Playgroud)
当URL是一些随机网站(如developers.facebook.com)时,这很有用,但是当它是Google Play的链接时,内容标题和内容描述会被覆盖 - 标题会被Play商店的标题和内容描述覆盖是空白的.
那么如何链接到Play商店的应用程序,但保留自定义标题和描述?我知道这是可能的,因为我见过其他应用程序这样做:

我即将将我的第一个应用程序上传到Google Play商店,当我将APK上传到开发者控制台时,它会在"本地化"下显示:default + 55 languages.我不希望我的应用程序列为支持任何这些语言/本地化,因为它只有英文版本.我应该如何在我的应用中让Google Play知道没有本地化并且该应用仅使用英语?
如果我说 aSimpleDialog()并且它接受children[]并且我想从 a 填充它Map<int, String>,我该怎么做?我需要键和值来创建子小部件。
const optionsMap = {
111:"First option",
222:"Second option",
}
return SimpleDialog(
title: Text('Choose one'),
children: // I don't know what to put here
// I want to have widgets based on optionsMap keys and values
)
Run Code Online (Sandbox Code Playgroud)
我通过List<Widget>在 return 语句上方预先创建一个来解决它,但只是为了方便(并在 Dart 中变得更好)我想知道是否有办法内联。
所以我有一个导航栏,它有一条水平线,我想删除.
我从屏幕截图中删除了导航栏颜色,使线条更加明显.
我已经尝试将导航栏的阴影图像属性设置为空白png(1x1像素pngs为1x,2x和3x),但没有效果.
所以我在我Screen的同一个类中有两个实现InputProcessor的对象,具有以下内容InputProcessor:
@Override
public boolean keyDown(int keycode) {
if (keycode==fireKey) {
System.out.println("Reporting keydown "+keyCode);
}
return false;
}
Run Code Online (Sandbox Code Playgroud)
问题是当我实例化这两个对象时,只有最后一个实例接收到任何keyDown事件.我需要两个对象(或者有许多对象)来接收keyDown事件.
所以我有一个容器视图(停靠在屏幕的边缘)和一个应该滑入和滑出的子视图.
func slideOut() {
UIView.animateWithDuration(Double(0.5), animations: {
self.container.bottomAnchor
.constraintEqualToAnchor(self.child.bottomAnchor).active = false
self.view.layoutIfNeeded()
})
}
func slideIn() {
UIView.animateWithDuration(Double(0.5), animations: {
self.container.bottomAnchor
.constraintEqualToAnchor(self.child.bottomAnchor).active = true
self.view.layoutIfNeeded()
})
print("numConstraints: \(container.constraints.count)")
}
Run Code Online (Sandbox Code Playgroud)
该slideIn()动画是很好,只是因为它应该是.问题是我不知道怎么做slideOut()动画.如果我只是停用NSLayoutConstraint上面的那个,那么什么都没发生.如果相反,我尝试:
self.container.bottomAnchor
.constraintEqualToAnchor(self.child.topAnchor).active = true
Run Code Online (Sandbox Code Playgroud)
再有一个自己无法同时满足的约束警告,并没有任何反应直观.此外,每当我NSLayoutConstraint激活时,约束(print(container.constraints.count))的数量都会增加,这不是一件好事.
所以我的问题是:
slideIn()在这种情况下,如何反转动画?我将ADT从22.x更新到最新的23.x,现在我在尝试运行项目时遇到以下错误:
Errors occurred during the build.
Errors running builder 'Android Package Builder' on project 'Sample-project-1'.
com/android/utils/GrabProcessOutput$IProcessOutput
这是日志中的错误:
java.lang.NoClassDefFoundError:com/android/utils/GrabProcessOutput $ IProcessOutput位于org.eclipse.core.internal的com.android.ide.eclipse.adt.internal.build.builders.PostCompilerBuilder.build(PostCompilerBuilder.java:212) .events.BuildManager $ 2.run(BuildManager.java:733)位于org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)的org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager. java:206)org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:328)atg.eclipse.core.internal.events.BuildManager.build(BuildManager.java:403)org.eclipse .core.internal.resources.Project $ 1.run(Project.java:618)org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2345)org.eclipse.core.internal.resources. Project.internalBuild(Project.java:597)位于org.eclipse.core.internal.resources.Project.build(Project.java:124)的com.android.ide.eclipse.adt.internal.project.ProjectHelper.doFullIncrementalDebugBuild( Project.Helper.java:1143)在com.andr oid.ide.eclipse.adt.internal.launch.LaunchConfigDelegate.launch(LaunchConfigDelegate.java:155)位于org.eclipse.debug的org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:858).在org.eclipse.debug.internal.ui.DebugUIPlugin $ 8.run的org.eclipse.debug.internal.ui.DebugUIPlugin.buildAndLaunch(DebugUIPlugin.java:1018)中的internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:707) (DebugUIPlugin.java:1222)org.eclipse.core.internal.jobs.Worker.run(Worker.java:53)引起:java.lang.ClassNotFoundException:com.android.utils.GrabProcessOutput $ IProcessOutput无法找到位于org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader)的org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:501)的com.android.ide.eclipse.adt_23.0.2.1259578 .java:421)在org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassL)的org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:412)oader.java:107)java.lang.ClassLoader.loadClass(Unknown Source)... 17更多
当然这对我来说都是胡言乱语.为什么会发生这种情况,我该如何解决?
就像标题所说的那样.我不得不存储Int64在NSUserDefaults,我发现这样做的唯一方法是将其存储为NSNumber像
NSNumber(longLong: someInt64)
Run Code Online (Sandbox Code Playgroud)
但我不知道如何将其转换回Int64.
我有一个struct,有时,对于某些用户,在尝试访问该类型的变量时会出现崩溃.
struct AppSettings {
var mute:Bool {
didSet {
if mute != oldValue {
let savedSettings = NSUserDefaults.standardUserDefaults()
savedSettings.setBool(mute, forKey: KEY_SETTING_MUTE)
}
}
}
init() {
let savedSettings = NSUserDefaults.standardUserDefaults()
if let savedMute = savedSettings.objectForKey(KEY_SETTING_MUTE) as? Bool {
mute = savedMute
} else {
mute = false
}
}
}
var appSettings = AppSettings()
Run Code Online (Sandbox Code Playgroud)
在应用程序启动期间的某个地方,它有时会崩溃
if appSettings.mute { // This will sometimes cause a crash
} // in AppDelegate or the methods it calls
Run Code Online (Sandbox Code Playgroud)
这仅适用于某些用户,我似乎无法重现它.不是重现它是最糟糕的,因为它让我没有任何工作.
搜索unsafe mutable …
谷歌现在要求发布商识别带有广告的应用.好吧,我的游戏没有广告,所以我去选择否,但开发者控制台说他们已经在我的应用程序中检测到了AdMob SDK 11.问题是我确定我的游戏没有AdMob.它从未显示广告,AdMob不在清单中,我似乎无法在其他任何地方找到它.我怎么能确定?
android ×4
swift ×4
ios ×2
admob ×1
adt ×1
autolayout ×1
dart ×1
eclipse ×1
eclipse-adt ×1
facebook ×1
flutter ×1
google-play ×1
java ×1
libgdx ×1
localization ×1
swift2 ×1