Tag: android

了解密钥库,证书和别名

密钥库是实际的证书,还是证书的别名? 如果我使用不同的别名签署我的应用程序,它会搅乱市场上的更新吗? 或者我需要用不同的密钥库签名我的应用程序来搞砸了吗? 哪里可以查看别名的信息?

编写新的DialogPreference类的简洁方法?

我正在通过扩展DialogPreference类在Android中编写一些自定义首选项对话框。 不过,由于看起来有很多行为需要testing,所以我需要关注一下锅炉板代码的数量。 例如,这个数字首选项对话框的例子是相当典型的: http : //svn.jimblackler.net/jimblackler/trunk/workspace/NewsWidget/src/net/jimblackler/newswidget/NumberPreference.java 特别是, onSave() / RestoreInstanceState()方法和“SavedState类”部分,这些对象的当前更改保留在方向更改上是非常繁琐和复杂的。 有没有人有更简洁的方式编写DialogPreference类的任何提示?

Android 4.0,4.1(<4.2)中嵌套片段的最佳实践,而不使用支持库

我正在写一个4.0和4.1平板电脑的应用程序, 我不想使用支持库 (如果不需要),但只有4.x的API。 所以我的目标平台定义为:> = 4.0和<= 4.1 该应用程序有一个多窗格布局(两个片段,一个小的左边,一个内容片段在右边)和一个带有选项卡的操作栏。 与此类似: 单击操作栏上的一个选项卡将更改“外部”片段,然后内部片段是具有两个嵌套片段(1.小左列表片段,2.宽内容片段)的片段。 我现在想知道什么是最好的做法,以取代片段,特别是嵌套片段。 ViewPager是支持库的一部分,这个类没有原生的4.x替代品。 似乎在我的意义上被“弃用”。 – http://developer.android.com/reference/android/support/v4/view/ViewPager.html 然后,我阅读了Android 4.2的发行说明,关于ChildFragmentManager ,这很适合,但我的目标是4.0和4.1,所以这也不能使用。 ChildFragmentManager仅在4.2中可用 http://developer.android.com/about/versions/android-4.2.html#NestedFragments http://developer.android.com/reference/android/app/Fragment.html#getChildFragmentManager() 不幸的是,即使在整个Android开发人员指南中,几乎没有任何好的示例显示了没有支持库的片段使用的最佳实践; 特别是关于嵌套的片段。 所以我想知道:是不是可以使用嵌套的片段来编写4.1应用程序,而不使用支持库及其附带的所有东西? (需要使用FragmentActivity而不是Fragment等?)或者最好的做法是什么? 我目前在开发中遇到的问题正是这种说法: http://developer.android.com/about/versions/android-4.2.html#NestedFragments Android支持库现在也支持嵌套片段,因此您可以在Android 1.6或更高版本上实现嵌套片段devise。 注意:当布局包含<fragment>时,不能将布局充气到<fragment> 。 只有在dynamic添加到片段时才支持嵌套片段。 因为我把定义在XML中的嵌套片段,这显然会导致像这样的错误: Caused by: java.lang.IllegalArgumentException: Binary XML file line #15: Duplicate id 0x7f090009, tag frgCustomerList, or parent id 0x7f090008 with another fragment for de.xyz.is.android.fragment.CustomerListFragment_ […]

如何使用Android Studio和gradle构buildAndroid库?

我正在尝试从Eclipse迁移项目,但没有尝试过。 在Eclipse中,我有3个项目(2个Android应用程序项目和1个Android库项目)。 这两个应用程序项目取决于图书馆项目。 当我执行gradle导出时,我得到3个不起作用的项目。 我愿意重组这个项目,但还没有find任何有关如何完成这个任务的文档。 有没有办法让Eclipse导出的3个项目一起工作? 我是否更好地进行重组,如果是的话,应该怎样做文件? 更新 我已经把整个项目上传到GitHub https://github.com/respectTheCode/android-studio-library-example 更新1 根据Padma Kumar的build议,这是我尝试过的。 创build一个名为MyApp的新项目 单击File > New Module ,selectAndroid Library并将其命名为MyLib 点击Build > Make Project 生成失败,这个错误 Module "MyLib" was fully rebuilt due to project configuration/dependencies changes Compilation completed with 1 error and 0 warnings in 19 sec 1 error 0 warnings /…/MyApp/MyLib/build/bundles/debug/AndroidManifest.xml Gradle: <manifest> does not […]

如何使用Cordova命令行界面创build签名的APK文件?

这是我第一次在Apache Cordova上工作。 我做了一个名为checkStatus的示例应用程序。 现在我想创build一个签名APK文件。 所以我可以将其安装在不同的设备上进行testing。 为此,我Googlesearch了这个文档 。 根据文档,我切换到我的项目目录并运行以下命令: keytool -genkey -v -keystore key-name.keystore -alias alias-name -keyalg RSA -keysize 2048 -validity 10000 运行上面的命令后,我在projectRoot/key-name.keystore得到一个名为key-name.keystore的文件。 然后我将该文件复制粘贴到projectRoot/platforms/android/key-name.keystore 。 之后,我创build了一个名为ant.properties的文件,并将其保存在projectRoot/platforms/android 。 我在文件中写了下面的代码: key.store=projectRoot/key-name.keystore key.alias=myApp 之后,我运行以下命令释放 Cordova builds android –release 这是抛出以下错误: /home/projectRoot/platforms/android/cordova/node_modules/q/q.js:126 throw e; ^ Error code 1 for command: ant with args: release,-f,/home/projectRoot/platforms/android/build.xml,-Dout.dir=ant-build,-Dgen.absolute.dir=ant-gen Error: /home/projectRoot/platforms/android/cordova/build: Command failed with exit code […]

我如何使用我的应用程序的付费版本作为免费版本的“钥匙”?

比方说,我有一些X的Android应用程序,免费版本有广告或基本function。 我想有一个付费版本,删除广告,并添加额外的function。 如何使用付费应用程序作为“许可证密钥”来解锁免费应用程序中的function? 所以用户将安装免费的应用程序,然后安装付费应用程序来获得额外的function,但他们仍然会运行免费的应用程序(现在将被解锁)。 什么是最好的方法来做到这一点?

缩放图像以填充ImageView宽度并保持宽高比

我有一个GridView 。 GridView的数据是来自服务器的请求。 这是GridView的项目布局: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/analysis_micon_bg" android:gravity="center_horizontal" android:orientation="vertical" android:paddingBottom="@dimen/half_activity_vertical_margin" android:paddingLeft="@dimen/half_activity_horizontal_margin" android:paddingRight="@dimen/half_activity_horizontal_margin" android:paddingTop="@dimen/half_activity_vertical_margin" > <ImageView android:id="@+id/ranking_prod_pic" android:layout_width="fill_parent" android:layout_height="wrap_content" android:adjustViewBounds="true" android:contentDescription="@string/app_name" android:scaleType="centerCrop" /> <TextView android:id="@+id/ranking_rank_num" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <TextView android:id="@+id/ranking_prod_num" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <TextView android:id="@+id/ranking_prod_name" android:layout_width="wrap_content" android:layout_height="wrap_content" /> </LinearLayout> 我从服务器请求数据,获取图像URL和加载图像Bitmap public static Bitmap loadBitmapFromInputStream(InputStream is) { return BitmapFactory.decodeStream(is); } public static Bitmap loadBitmapFromHttpUrl(String url) […]

下载Android SDK组件进行脱机安装

是否可以在不使用SDKpipe理器的情况下下载Android SDK组件进行脱机安装? 问题是我背后的防火墙,我无法控制,这两个网站下载URL似乎被阻止(引发连接拒绝exception) https://dl-ssl.google.com/android/repository/repository.xml http://dl-ssl.google.com/android/repository/repository.xml Failed to fetch URL http://dl-ssl.google.com/android/repository/repository.xml, reason: Connection refused: connect

无法在Eclipse中执行dex:GC开销限制

当我下载了Git项目OsmAnd并去编译它时,Eclipse返回了这些错误: [Dex Loader] Unable to execute dex: GC overhead limit exceeded [OsmAnd] Conversion to Dalvik format failed: Unable to execute dex: GC overhead limit exceeded 谷歌和Stackoverflow说,我必须更改eclipse.ini -Xms40m -Xmx384m 。 转换为Dalvik格式失败:无法执行dex:Java堆空间 。 我清理项目并重新启动Eclipse,但它没有帮助。 我发现这个链接: Android开发人员提示:“转换为Dalvik格式失败:无法执行dex:null”但是我不知道从我的项目中更改input.jar如果有人可以帮助,我可以发送项目给他们。

如何在Android中创build一个HTTP服务器?

我想在Android中创build一个简单的HTTP服务器来为客户端提供一些内容。 有关如何构build服务器或使用任何现有的库的任何build议?