我在私有存储库后面的GitHub上有一个项目.我想公开回购.但是,我的项目使用密钥.
如何在保护这些密钥的"历史"的同时公开项目?我猜我是SOL,应该只是使密钥无效以防止它们被使用.
请注意,这与 如何开源使用API密钥的应用程序不同
要么
由于我的项目已经在Git上,因此可以轻松查看整个源历史记录.我想我能做的就是隐藏一个单独的项目,隐藏API密钥,然后公开回购.但是用户会错过整个分支历史,他们可能会对此感到好奇(我知道我会).
随着我的应用程序中的数据库的增长,它将需要越来越多的内部手机空间.数据库中没有任何敏感/私人数据,所以我有兴趣将其移动到SD卡.
我正在使用SQLiteOpenHelper来协助数据库工作.我的理解是,您不能将其用于SD卡上的DB访问,因为您无法定义数据库路径.但是,Internet上有一些(非常差的)示例表明您可以覆盖此限制.但是我从来没有得到其中一个代码示例来编译.
可能吗?如果是这样 - 怎么样!请注意,Froyo的"SD卡上的应用程序"功能不起作用,因为它不会移动内部文件.
我想创建一个Ant目标,它将目录中的文件复制到具有相同文件夹结构的目标目录,再添加一个子文件夹.
例如,来源是:
a/b/c/foo.pdf
d/e/f/bar.pdf
Run Code Online (Sandbox Code Playgroud)
我希望目的地是:
a/b/c/x/foo.pdf
d/e/f/x/foo.pdf
Run Code Online (Sandbox Code Playgroud)
到目前为止,这是我的目标,但它似乎没有做任何事情:
<copy todir="${dest.dir}">
<fileset dir="${src.dir}" casesensitive="yes">
<include name="**${file.separator}foo.pdf" />
</fileset>
<mapper type="glob"
from="foo.pdf" to="x${file.separator}foo.pdf" />
</copy>
Run Code Online (Sandbox Code Playgroud)
我错过了什么?
我有一个包装ViewFlipper的ScrolLView.ViewFlipper中的内容高度不同,因此我的第二个屏幕有一个非常长的滚动条,随着空白内容一直打开:
<ScrollView android:id="@+id/outer_scroll"
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" android:layout_height="fill_parent"
android:fillViewport="true">
<ViewFlipper android:id="@+id/flipper"
android:layout_width="fill_parent" android:layout_height="fill_parent">
<EditText android:id="@+id/desc" style="@style/DescriptionArea"
android:layout_width="fill_parent" android:layout_height="wrap_content"
android:enabled="false" android:focusableInTouchMode="false"
android:background="@null" />
<LinearLayout android:id="@+id/details_root"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent" android:padding="10dp">
<TextView android:id="@+id/item_details" style="@style/DetailsLarge"
android:textColor="#000" android:visibility="gone"
android:layout_width="wrap_content" android:layout_height="fill_parent"
android:text="@string/item_details_tags" />
<TextView android:id="@+id/tags" android:layout_width="wrap_content"
android:layout_height="fill_parent" android:textColor="#000"
android:visibility="gone" />
</LinearLayout>
</ViewFlipper>
</ScrollView>
Run Code Online (Sandbox Code Playgroud)
因此,例如,EditText块非常长,滚动条捕获所有内容.我转向LinearLayout,滚动条继续通过TextView内容.我基本上需要它来"重新计算"视图高度.
此外,将EditText和LinearLayout包装在它们自己的ScrollViews中不是一个选项,因为软/虚拟键盘会阻止EditText内容.
在过去的一周里,我一直在询问有关十六进制和按位操作(此处和其他地方)的问题,试图将我的头围绕在Java中.经过大量的谷歌搜索和懊恼之后,我必须最后一次询问如何对应该是无符号的位执行逻辑运算,但在Java中表示为signed.
好的:我正在将一个C#程序移植到Java.该程序处理位图操作,因此应用程序中的大部分数据表示为byte无符号的8位整数.有许多建议改为short在Java中使用数据类型,以便"模仿"尽可能接近无符号的8字节整数.
我不相信这对我来说是可能的,因为C#代码用我的字节数据执行各种移位和AND操作.例如,if data是一个字节数组,并且这个代码块存在于C#中:
int cmdtype = data[pos] >> 5;
int len = (data[pos] & 0x1F) + 1;
if (cmdtype == 7)
{
cmdtype = (data[pos] & 0x1C) >> 2;
len = ((data[pos] & 3) << 8) + data[pos + 1] + 1;
pos++;
}
Run Code Online (Sandbox Code Playgroud)
这不是一个简单的问题,只需将其data作为一个short并完成它以使其在Java中工作.就逻辑而言,我的数据保持8位无符号的要求是显着的; 16位无符号将像上面那样拧动数学.我在这儿吗?事实上,在此之前"假铸造"之后byte与0XFF和charJava和没有得到正确的结果,恐怕我进入了死胡同.
现在,在代码的另一部分,我正在执行一些位图像素操作.由于这是一个漫长的过程,我决定通过JNI调用本机代码.我最近意识到,在那里我可以使用uint8_t数据类型并获得最接近C#byte数据类型的表示.
解决方案是否使我的所有数据相关功能都在JNI中运行?这似乎非常低效,无论是重写还是表演.解决方案是用Java重做数学所以逻辑保持不变吗?这似乎是正确的,但有可能诱发动脉瘤,更不用说错误的数学.
我感谢任何和所有的建议.
我有一个完全用C的Android NDK项目.我有一堆.po文件,目前配置了libintl.
不幸的是,根据Google开发人员的说法,我觉得我希望在我的项目中使用gettext,因为Android不支持在如此低级别设置区域设置.
有什么办法可以继续支持我的项目本地化吗?
我正在开发一个使用该-e标志的脚本,如
unless (-e $fileName)
{
...
}
Run Code Online (Sandbox Code Playgroud)
这在OS X上工作正常.或者说,它无法正常工作.我希望它区分大小写.该脚本也在Linux机器上运行,-e检查失败 - 正确! - 因为区分大小写.
我尝试使用替代路径open <FILEHANDLE, '$fileName'),但似乎这也是不区分大小写的.
编辑:感谢下面回答的所有人.我知道HFS +不区分大小写,但我认为我可以以某种方式"强迫"它.我最终通过执行以下操作来强制检查:
opendir my($dh), $dirName or die "Couldn't open dir '$dirName'";
my @refFiles = readdir $dh;
closedir $dh;
foreach $refFile (@refFiles)
{
if ($refFile eq $refFileName)
{
$found = 1;
}
}
Run Code Online (Sandbox Code Playgroud)
着名的口头禅:"它不漂亮,但它有效."
我正在使用Java从SNES ROM读取数据.我打开一个流并将字节读入数组:
InputStream stream = open("foo.rom");
final int startingSize = stream.available();
byte[] data = new byte[startingSize];
final int numberRead = stream.read(data, 0, startingSize);
Run Code Online (Sandbox Code Playgroud)
在ROM中,我有这个值:
E4 2B 00 02 03 00 FF 3A 00 83
228 43 0 2 3 0 255 58 0 131(十进制)
但是,我的代码表现得很奇怪.设置一些调试语句后,我使用String.valueOf(data [ref])打印时有这种模式:
-28 43 0 2 3 0 -1 58 0 -125
(ROM中的这个地址是第一个出现数据的地址,但我注意到程序中其他地方的值不正确.)
尽可能接近我可以告诉我的Java字节数组不尊重十六进制数据.如何设置我的字节数组呢?
这令人抓狂.我有以下XML布局:
<FrameLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:background="@drawable/shadow" android:focusable="true" android:focusableInTouchMode="true">
<ViewFlipper android:id="@+id/flipper" android:layout_width="fill_parent" android:layout_height="fill_parent">
<EditText android:id="@+id/reviews" style="@style/DescriptionArea" android:layout_width="fill_parent" android:layout_height="wrap_content" android:enabled="false" android:background="@null" />
<EditText android:id="@+id/notes" style="@style/DescriptionArea" android:hint="@string/detail_hint" android:layout_width="fill_parent" android:layout_height="wrap_content" android:enabled="false" android:maxLines="4"/>
</ViewFlipper>
</FrameLayout>
Run Code Online (Sandbox Code Playgroud)
和Java:
viewFlipper = (ViewFlipper)findViewById(R.id.flipper);
slideLeftIn = AnimationUtils.loadAnimation(this, R.anim.slide_left_in);
slideLeftOut = AnimationUtils.loadAnimation(this, R.anim.slide_left_out);
slideRightIn = AnimationUtils.loadAnimation(this, R.anim.slide_right_in);
slideRightOut = AnimationUtils.loadAnimation(this, R.anim.slide_right_out);
gestureDetector = new GestureDetector(new MyGestureDetector());
gestureListener = new View.OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event)) {
return true;
}
return false;
}
};
Run Code Online (Sandbox Code Playgroud)
看起来如果我尝试在EditText区域顶部进行操作,则手势不会注册.但是,如果我在它周围 …
我有一个Activity作为Theme.Dialog运行.我可以将其标题设置为"椭圆形"样式吗?目前,使用setText()在onCreate()中填充文本.在TextView上没有this.setEllipsize().
或者,我唯一的选择是编写自定义对话框并在那里设置标题样式?我想知道在走这条路之前是否可行.
"抽象类实例化",你说."不可能!"
这是我的代码:
public static AbstractFoo getAbstractFoo(Context context) {
try {
Class<?> klass = Class
.forName("com.bat.baz.FooBar");
Constructor<?> constructor = klass.getDeclaredConstructor(
String.class, String.class);
constructor.setAccessible(true);
AbstractFoo foo = (AbstractFoo) constructor.newInstance(
"1", "2");
return foo;
} catch (ClassNotFoundException e) {
// Ignore
} catch (NoSuchMethodException e) {
throw new InflateException(
"No matching constructor");
} catch (IllegalAccessException e) {
throw new InflateException("Could not create foo", e);
} catch (InvocationTargetException e) {
throw new InflateException("Could not create foo", e);
} catch (InstantiationException e) {
throw new …Run Code Online (Sandbox Code Playgroud) 我无法理解如何将glReadBuffer()和glDrawBuffer()调用移植到Open GL ES 1.1中.互联网上的各种论坛帖子只是说"使用维也纳国际中心",而不是更深入.
你能帮我理解一次合适的转换吗?说我有:
glReadBuffer(GL_FRONT);
Run Code Online (Sandbox Code Playgroud)
其次是
glDrawBuffer(GL_BACK_LEFT);
state->paint(state_id, f);
Run Code Online (Sandbox Code Playgroud)
如何写出像素?
android ×5
java ×2
viewflipper ×2
android-ndk ×1
ant ×1
api ×1
buffer ×1
byte ×1
bytearray ×1
c ×1
c# ×1
copy ×1
dialog ×1
gesture ×1
gettext ×1
git ×1
github ×1
hex ×1
localization ×1
macos ×1
open-source ×1
opengl-es ×1
perl ×1
proguard ×1
scrollview ×1
sd-card ×1
secret-key ×1
sqlite ×1
stream ×1
title ×1
xml ×1