今天,在从Android Studio运行应用程序时,它没有使用我的最新代码构建.
我找了一个Clean&build选项,但我找不到一个.
所以我的问题是:什么是Android Studio相当于Clean&build?
我正在使用新的FaceBook SDK 3.0.在将图片从URL发布到"我/照片"时,我间歇性地获得了一个EOFException
.我偶尔会遇到这个错误(约20次中有1次).
我还必须在获得之后添加,EOFException
如果我再次重新发布,它会成功发布.
所以,暂时我编码自动重试一次,如果我得到EOFException
解决方案似乎令人满意.
但是我需要知道导致它的原因,这是Android SDK中的一个错误.我用Google搜索了很多但却无法得到任何东西.
我发布了日志(出于安全原因删除了我的访问令牌和图片网址)
06-05 15:09:42.585: D/FacebookSDK.Request(16611): Request:
06-05 15:09:42.585: D/FacebookSDK.Request(16611): Id: 9
06-05 15:09:42.585: D/FacebookSDK.Request(16611): URL:https://graph.facebook.com/me/photos?caption=abc&format=json&sdk=android&migration_bundle=fbsdk%3A20121026&access_token=ADBCEFG&url=http%3A%2F%2Ftest.test.test%2Ftest%2Ftest%2F201695%2Ftest%2F18629
06-05 15:09:42.585: D/FacebookSDK.Request(16611): Method: POST
06-05 15:09:42.585: D/FacebookSDK.Request(16611): User-Agent: FBAndroidSDK.3.0.0
06-05 15:09:42.585: D/FacebookSDK.Request(16611): Content-Type: multipart/form-data; boundary=3i2ndDfv2rTHiSisAbouNdArYfORhtTPEefj3q2f
06-05 15:09:42.585: D/FacebookSDK.Request(16611): Parameters:
06-05 15:09:42.585: D/FacebookSDK.Request(16611): caption: abc
06-05 15:09:42.585: D/FacebookSDK.Request(16611): format: json
06-05 15:09:42.585: D/FacebookSDK.Request(16611): sdk: android
06-05 15:09:42.585: D/FacebookSDK.Request(16611): migration_bundle: fbsdk:20121026
06-05 15:09:42.585: D/FacebookSDK.Request(16611): access_token: ABCDEF
06-05 15:09:42.585: D/FacebookSDK.Request(16611): url: http://test.test.test/test/test/201695/test/18629
06-05 15:09:42.585: D/FacebookSDK.Request(16611): …
Run Code Online (Sandbox Code Playgroud) 有没有办法在Android的主题中添加自定义字体?
我已阅读快速提示:自定义Android字体,但在这里我们必须以编程方式将自定义字体添加到文本中.
TextView txt = (TextView) findViewById(R.id.custom_font);
Typeface font = Typeface.createFromAsset(getAssets(), "Chantelli_Antiqua.ttf");
txt.setTypeface(font);
Run Code Online (Sandbox Code Playgroud)
但我想按样式/主题设置自定义字体.
我正在做一个缩放动画,anim xml
如下所示.动画插值器不起作用.我试图弹跳插值器但是没有工作.
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android" >
<scale
android:duration="900"
android:fromXScale="1"
android:fromYScale="0.5"
android:interpolator="@android:anim/bounce_interpolator"
android:pivotX="50%"
android:pivotY="0%"
android:toXScale="1.0"
android:toYScale="1.0" />
</set>
Run Code Online (Sandbox Code Playgroud)
编辑:其实我的整个xml是
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android" >
<scale
android:duration="600"
android:fromXScale="1"
android:fromYScale="0.5"
android:interpolator="@android:anim/bounce_interpolator"
android:pivotX="50%"
android:pivotY="0%"
android:toXScale="1.0"
android:toYScale="1.0" />
<alpha
android:duration="@android:integer/config_longAnimTime"
android:fromAlpha="0.0"
android:interpolator="@android:anim/decelerate_interpolator"
android:toAlpha="1.0" />
</set>
Run Code Online (Sandbox Code Playgroud) 我需要更改android上的导航栏.就像下图中右侧的"浅色"变体一样
如https://www.google.co.in/design/spec/layout/structure.html#structure-system-bars中所述.
现在,我可以使用更改导航栏的背景
"android:navigationBarColor"
我明白了
但似乎无法将按钮颜色更改为黑暗.
任何人都知道如何做到这一点.
PS:
在AOSP中研究负责NavigationButtons的类时,我可以找到NavigationBarView.java,PhoneStatusBar.java,PhoneWindowManager.java,navigation_bar.xml.
我想要获得导航栏按钮的drawable参考,ic_sysbar_recent
并改变他们的色调.但这些是私人的,我无法得到他们的参考.
另外,我看到人们使用xposed库来做L-NAVBAR,但我不想使用任何外部库.
我正在使用android兼容库(v4修订版8).在自定义DialogFragment中,没有调用onViewCreated的覆盖方法.例如.
public class MyDialogFragment extends DialogFragment{
private String mMessage;
public MyDialogFragment(String message) {
mMessage = message;
}
@Override
public Dialog onCreateDialog( Bundle savedInstanceState){
super.onCreateDialog(savedInstanceState);
Log.d("TAG", "onCreateDialog");
setRetainInstance(true);
//....do something
}
@Override
public void onViewCreated(View view, Bundle savedInstanceState) {
Log.d("TAG", "onViewCreated");
//...do something
}
}
Run Code Online (Sandbox Code Playgroud)
onViewCreated未被记录.
我正在使用带有kotlin的android持久性库房间.
Dao看起来像这样
@Dao
interface CountryDao {
@Query("SELECT * FROM countries")
fun loadAllCountried() : LiveData<List<CountryEntity>>
@Insert(onConflict = OnConflictStrategy.REPLACE)
fun insertAll(products: List<CountryEntity>)
@Query("SELECT * FROM countries WHERE id = :countryId")
fun loadCountry(countryId: Int): LiveData<CountryEntity>
@Query("SELECT * FROM countries WHERE id = :countryId")
fun loadCountrySync(countryId: Int): CountryEntity
}
Run Code Online (Sandbox Code Playgroud)
这对我来说似乎很好,但我收到了这个错误
Error: Each bind variable in the query must have a matching method parameter. Cannot find method parameters for :countryId.
我可以看到参数被命名为countryId
,那么可能是什么问题?
仅供参考:这是CountryDao_Impl.java中的生成代码
@Override
public CountryEntity loadCountrySync(int arg0) {
final String _sql = "SELECT …
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用联系人的电子邮件ID.为此,我使用Cursor Loader.有一个问题我也得到重复的电子邮件ID.如何删除电子邮件重复项.我应该使用原始查询"SELECT DISTINCT"而不是使用CursorLoader还是有其他解决方案?
@Override
public Loader<Cursor> onCreateLoader(int arg0, Bundle arg1) {
String[] projection = new String[] { ContactsContract.Contacts._ID, ContactsContract.Contacts.DISPLAY_NAME, ContactsContract.CommonDataKinds.Email.DATA};
String sortOrder = ContactsContract.Contacts.DISPLAY_NAME + " COLLATE LOCALIZED ASC";
String selection = ContactsContract.Contacts.IN_VISIBLE_GROUP +"='1' AND " + Email.DATA +" IS NOT NULL AND " + Email.DATA +" != \"\" " ;
//showing only visible contacts
String[] selectionArgs = null;
return new CursorLoader(this, ContactsContract.CommonDataKinds.Email.CONTENT_URI, projection, selection, selectionArgs, sortOrder);
}
Run Code Online (Sandbox Code Playgroud) 嘿家伙我在Android应用程序中使用twitter4j使用twitter API.一切正常,我对图书馆没有任何问题.今天我运行lint并在twitter4j-core-3.0.3.jar中获取lint错误.我无法控制这个第三方库,所以应该做些什么.
lint错误如下:库中的包引用无效; 不包含在Android中:javax.management.openmbean.引自twitter4j.management.APIStatisticsOpenMBean.
问题: 查找Android中不支持的API API访问
Id: InvalidPackage
此检查扫描库,查找未包含在Android中的API调用.
创建Android项目时,会设置类路径,以便您只能访问Android中包含的API包中的类.但是,如果将其他项目添加到libs /文件夹,则无法保证这些.jar文件是使用Android特定的类路径构建的,特别是,它们可能正在访问不受支持的API,例如java.applet.
此检查扫描库jar并查找对未包含在Android中的API包的引用,并标记这些包.如果您的代码调用其中一个最终引用不受支持的包的库类,则这只是一个错误.
我们可以通过使用重复绘制 tileMode="repeat"
<bitmap
xmlns:android="http://schemas.android.com/apk/res/android"
android:src="@drawable/some_png"
android:tileMode="repeat"
android:dither="true" />
Run Code Online (Sandbox Code Playgroud)
它只适用于drawable是位图的情况.
有没有类似的方法重复矢量drawable?
我面临Android Studio 3的问题,使用构建目标27和支持lib 27.0.0的gradle android插件3
Error:Execution failed for task ':module:mockableAndroidJar'.
> Output file [[...]/build/generated/mockable-android-27.v3.jar] already exists.
Run Code Online (Sandbox Code Playgroud)
我必须不时地从生成的文件夹中清除或手动删除所有mockable-android jar.所以这意味着我不是要获得更好的构建时间,而是大多数时候都要清理项目.
我在Mac OSX Yosemite上的Android Studio 1.0.2上遇到了一个奇怪的错误.该项目没有建立,我得到
Error:(8, 0) Cause: error=2, No such file or directory
第8行是
def gitSha = 'git rev-parse --short HEAD'.execute().text.trim()
我可以通过命令行构建项目.似乎Android studio无法运行git命令.
编辑:它发生在我卸载旧的git(1.9)并安装更新的(2.0.1)之后
我正在使用新的单元测试支持http://tools.android.com/tech-docs/unit-testing-support在android项目上编写junit测试 .
单元测试完全在'com.android.application'模块上运行,但它们总是在'com.android.library'模块上失败.这在http://tools.android.com/tech-docs/unit-testing-support中没有记录.所以我想知道我是不是罪魁祸首.
当我在库模块上编写这些测试时,测试无法在模块上找到类并始终给出以下错误:
package does not exist
error: cannot find symbol
Run Code Online (Sandbox Code Playgroud)
android单元测试支持目前正处于实验阶段,但有解决方案.
UPDATE
我已将此问题添加到Android问题跟踪器https://code.google.com/p/android/issues/detail?id=161038
android ×13
android-lint ×1
android-room ×1
eofexception ×1
fonts ×1
git ×1
junit ×1
kotlin ×1
textview ×1
twitter4j ×1
unit-testing ×1