三星Galaxy S3有一个extrenal SD卡插槽,安装到/mnt/extSdCard.
我的问题是:如何通过类似的方式获得这条路径Environment.getExternalStorageDirectory()?这将返回mnt/sdcard,我找不到外部SD卡的API.(或某些平板电脑上的可移动USB存储器)
谢谢!
我在下面发布了一个带有build.gradle的工件:
uploadArchives {
repositories {
mavenDeployer {
repository(url: "file://maven")
pom.groupId = 'com.totvnow'
pom.artifactId = 'tonedetect-lib'
pom.version = '0.1.0'
}
}
}
task androidJavadocs(type: Javadoc) {
source = android.sourceSets.main.java.srcDirs
classpath += project.files(android.getBootClasspath().join(File.pathSeparator))
}
task androidJavadocsJar(type: Jar, dependsOn: androidJavadocs) {
classifier = 'javadoc'
from androidJavadocs.destinationDir
}
artifacts {
archives androidJavadocsJar
}
我成功地在repo目录中获取了javadoc文件:
tonedetect-lib-0.1.0-javadoc.jar tonedetect-lib-0.1.0-javadoc.jar.md5 tonedetect-lib-0.1.0-javadoc.jar.sha1
但是当我在另一个模块的build.gradle中使用它时:
buildscript {
repositories {
jcenter()
maven { url 'somepath\\maven' }
}
dependencies {
classpath 'com.android.tools.build:gradle:1.2.3'
}
}
allprojects {
repositories {
jcenter()
maven { url 'somepath\\maven' … 我有一个ContentProvider类,并在AndroidMenifest.xml中声明如下:
<provider android:name=".MediaSearchProvider"
android:authorities="org.iii.romulus.meridian.mediasearch">
<path-permission android:path="/search_suggest_query"
android:readPermission="android.permission.GLOBAL_SEARCH" />
</provider>
Run Code Online (Sandbox Code Playgroud)
它适用于大多数设备,但市场告诉我一些用户正在遭遇错误.堆栈跟踪是:
java.lang.RuntimeException: Unable to get provider org.iii.romulus.meridian.MediaSearchProvider: java.lang.ClassNotFoundException: org.iii.romulus.meridian.MediaSearchProvider in loader dalvik.system.PathClassLoader[/mnt/asec/org.iii.romulus.meridian-1/pkg.apk]
at android.app.ActivityThread.installProvider(ActivityThread.java:4509)
at android.app.ActivityThread.installContentProviders(ActivityThread.java:4281)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4237)
at android.app.ActivityThread.access$3000(ActivityThread.java:125)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2071)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:123)
at android.app.ActivityThread.main(ActivityThread.java:4627)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:521)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:878)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:636)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.ClassNotFoundException: org.iii.romulus.meridian.MediaSearchProvider in loader dalvik.system.PathClassLoader[/mnt/asec/org.iii.romulus.meridian-1/pkg.apk]
at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:243)
at java.lang.ClassLoader.loadClass(ClassLoader.java:573)
at java.lang.ClassLoader.loadClass(ClassLoader.java:532)
at android.app.ActivityThread.installProvider(ActivityThread.java:4494)
... 12 more
Run Code Online (Sandbox Code Playgroud)
我完全不知道发生了什么,我无法在任何手机上重现它.我也试过干净和构建,但报告仍然出现.有人可以帮忙吗?谢谢!
我尝试使用Android Studio 0.1来构建一个用于练习的小项目,但是当我制作模块时,Android Studio会说:
Android Dex: [(Module Name)] Error occurred during initialization of VM
Android Dex: [(Module Name)] Could not reserve enough space for object heap
Run Code Online (Sandbox Code Playgroud)
我正在使用Windows 7 64位,JDK 1.7,8GB RAM.我不熟悉gradle,也不知道如何解决它.我的另一台几乎相同的PC没有这个问题.
我试图修改studio.exe.vmoptionsbin文件夹,当我设置-Xmx768M时,可以看到右下角更改为742M.但错误仍然存在.另外,如果我想设置像一个较大的值-Xmx2G,则studio.bat显示:
Error occurred during initialization of VM
Could not reserve enough space for object heap
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
Run Code Online (Sandbox Code Playgroud)
然后Android Studio就无法启动.
有没有办法让我的Android Studio可用?非常感谢你.
在台湾,我们有一个名为"Unicode At One(UAO)"的字符编码,它是BIG-5的扩展,但Java和Android不支持.
代码页位于http://moztw.org/docs/big5/table/uao241-b2u.txt
我的问题是,如何使用此Charset构建具有字节数组数据的String对象?
我想我会扩展String类并在其中做一些事情,但我不知道如何创建一个新的Charset.
好的我知道人们已经问了好几千次这个问题,但Android工作室是如此难以理解和使用,我仍然找不到正确的方法.
我找到了几个解决方案,但他们都说要将库代码复制到主项目中.对我来说完全是无稽之谈.当我尝试为库构建一个独立项目时,我发现没有像Eclipse那样的"来自现有源的新项目".
我是否可以采取以下步骤:
关键是,如果我有许多使用相同库源的应用程序项目,我只能修改一个副本.如果我需要在每个应用程序项目中放置库代码,那将是一场灾难.Eclipse可以毫无问题地执行此操作.
谢谢.我对Android Studio感到很沮丧,但我不能选择继续使用Eclipse,因为谷歌表示将不再支持ADT.
我想使用带有矢量标签的caffe,而不是整数.我已经检查了一些答案,看来HDF5似乎更好.但后来我遇到了错误:
accuracy_layer.cpp:34]检查失败:
outer_num_ * inner_num_ == bottom[1]->count()(50 vs. 200)标签数量必须与预测数量匹配; 例如,如果标签轴== 1并且预测形状是(N,C,H,W),则标签计数(标签的数量)必须是N*H*W,{0,1,...,C-1}中的整数值.
HDF5创建为:
f = h5py.File('train.h5', 'w')
f.create_dataset('data', (1200, 128), dtype='f8')
f.create_dataset('label', (1200, 4), dtype='f4')
Run Code Online (Sandbox Code Playgroud)
我的网络由以下人员生成:
def net(hdf5, batch_size):
n = caffe.NetSpec()
n.data, n.label = L.HDF5Data(batch_size=batch_size, source=hdf5, ntop=2)
n.ip1 = L.InnerProduct(n.data, num_output=50, weight_filler=dict(type='xavier'))
n.relu1 = L.ReLU(n.ip1, in_place=True)
n.ip2 = L.InnerProduct(n.relu1, num_output=50, weight_filler=dict(type='xavier'))
n.relu2 = L.ReLU(n.ip2, in_place=True)
n.ip3 = L.InnerProduct(n.relu1, num_output=4, weight_filler=dict(type='xavier'))
n.accuracy = L.Accuracy(n.ip3, n.label)
n.loss = L.SoftmaxWithLoss(n.ip3, n.label)
return n.to_proto()
with open(PROJECT_HOME + 'auto_train.prototxt', 'w') as f: …Run Code Online (Sandbox Code Playgroud) 我正在使用AudioTrack一系列正弦波,但是当我在HTC M9上运行它时,它只播放部分样本,并且它将播放多长时间是随机的.例如我有20个音调可以播放,但它只播放2到17.5个音调.是的,它甚至会在音调中间停止.
这是我的代码,来自另一个答案:
ArrayList<double[]> samples = new ArrayList<>();
int numSamples = 0;
for (final ToneSegment seg : sequence) {
int num = seg.getDuration() * sampleRate / 1000;
double[] sample = new double[num];
for (int i = 0; i < num; ++i) {
sample[i] = Math.sin(2 * Math.PI * i * seg.getPitch() / sampleRate);
}
samples.add(sample);
numSamples += num;
}
byte generatedSnd[] = new byte[2 * numSamples];
int idx = 0;
for (double[] sample : samples) {
for (final …Run Code Online (Sandbox Code Playgroud) 我正在使用FCM向Android设备发送通知.当应用程序处于后台时,如果我发送10个通知,则设备将在通知栏上显示10个条目.
我希望FCM在通知栏上只输入一个条目,即较新的条目将覆盖旧条目.我在https://firebase.google.com/docs/cloud-messaging/http-server-ref#downstream上找不到设置密钥的密钥.
有办法吗,或者不可能?谢谢.
android android-notifications firebase firebase-cloud-messaging firebase-notifications
我正在使用ActionBar带有a的标签功能PageViewer,但遇到问题.在我的Nexus 7上,标签显示如下:

由于空间不足,您可以看到标题被剪切.但是对于Android 4.0的HTC Incredible S,它显示如下:

这就是我想要的.我在factr中希望标签栏放在屏幕的底部,但是分成两行并且两者都在顶部是可以接受的.
有谁知道如何强制在Nexus 7上的应用程序也拆分标签栏到另一行?谢谢!