Android Studio 常見問題

使用 Git

1. Can't update: no tracked branch

復(fù)現(xiàn)場景: 假設(shè)當(dāng)前工作環(huán)境的 local 分支是 local-v1-dev,然后通過刪除了這個分支,并 check out 到了另一個分支 local-v2-dev 上去翘紊,然后使用 pull 操作拉取遠(yuǎn)程 remote 分支代碼時出現(xiàn)問題。

解決措施: 假設(shè)需要切換新的本地分支名稱為newBranch藐唠,需要拉去遠(yuǎn)程的 newBranch 分支帆疟,并執(zhí)行更新操作宇立,通過使用Android Studio 的 終端 Terminal 工具,執(zhí)行下面的命令讓本地分支和遠(yuǎn)程分支完成匹配即可妈嘹。

git checkout newBranch
git branch --set-upstream-to=origin/newBranch

2. 重命名遠(yuǎn)程分支

在git中重命名遠(yuǎn)程分支蟋滴,其實(shí)就是先刪除遠(yuǎn)程分支,然后重命名本地分支津函,再重新提交一個遠(yuǎn)程分支。

先查看遠(yuǎn)程分支:
使用 git branch 命令可以查看當(dāng)前所有本地分支尔苦,加上 -a 參數(shù)可以查看遠(yuǎn)程分支行施,遠(yuǎn)程分支會用紅色表示出來:
git branch -a

刪除遠(yuǎn)程分支和 tag:
a. 刪除指定的遠(yuǎn)程分支(把 <branchName> 替換成要刪除掉的分支名稱)
git push origin --delete <branchName>
b. 刪除指定的tag(把 <tagname> 替換成要刪除掉的tag名稱)
git push origin --delete tag <tagname>

在 github 上操作時蛾号,在刪除遠(yuǎn)程分支時有可能碰到下面這個錯誤:
remote: error: refusing to delete the current branch:
這是由于在 github 中涯雅,被刪除的分支是項(xiàng)目的默認(rèn)分支。要解決此問題活逆,需要進(jìn)行下面的操作:

  • 進(jìn)入 github 中該項(xiàng)目的 Settings 頁面;
  • 設(shè)置 Default Branch 為其他的分支(例如 master)怒允;
  • 重新執(zhí)行刪除遠(yuǎn)程分支命令锈遥。

重命名本地分支:
git branch -m <oldBranchName> <newBranchName>

推送本地分支:
git push origin <newBranchName>

3.為分支打上 tag

為本地分支打上 tag
git tag -a v1.0.0 -m 'version 1.0.0'

把本地tag推送到遠(yuǎn)程:
推送本地全部的 tag
git push --tags
推送本地指定的 tag
git push origin <tagName>

獲取遠(yuǎn)程tag
git fetch origin tag <tagName>

項(xiàng)目編譯

配置 apk 文件輸出名稱

 buildTypes {
 release {
  applicationVariants.all { variant ->
                variant.outputs.each { output ->
                    def outputFile = output.outputFile
                    if (outputFile != null && outputFile.name.endsWith('.apk')) {
                        // 輸出apk名稱為appName-versionName-release.apk
                        def fileName = "appName-${defaultConfig.versionName}-release.apk"
                        output.outputFile = new File(outputFile.parent, fileName)
                    }
                }
            }
}
}

注意 Android Studio 3.0 中支持的新版本 gradle 改變 output.outputFile 為私有屬性所灸,所以上面的代碼要改成:

android.applicationVariants.all { variant ->
    variant.outputs.all {
        outputFileName = "${variant.name}-${variant.versionName}-release.apk"
    }
}

Java 8 支持

defaultConfig {
   jackOptions {
            enabled true
        }
}
buildTypes {

    compileOptions {
        targetCompatibility 1.8
        sourceCompatibility 1.8
    }
}

注意 Android Studio 3.0 中支持的新版本 gradle 中把 jackOptions 移除。

Sources for ‘Android API 26 Platform’ not found.

這是 Android Studio 關(guān)聯(lián)不上源碼導(dǎo)致的爬立,下載對應(yīng)的 API 源碼文件后,會存放在 /Users/xxxxx/Library/Android/sdk/sources/android-26 文件夾,但是有可能明明下載了源碼但是 Android Studio 就是提示找不到壤圃。這是 Android Studio 配置文件未能更新導(dǎo)致的,可以自行修改即可:

  1. 找到以下路徑伍绳,并打開文件
    ~/Library/Preferences/AndroidStudioXXX/options/jdk.table.xml

  2. 修改 jdk.table.xml 文件中對應(yīng) API 版本配置信息
    手動配置 API 26 Sources 文件路徑


  3. 保存配置文件踊挠,重新 Android Studio 即可冲杀。

項(xiàng)目依賴的某個模塊引用了 aar 包導(dǎo)致的編譯問題

在某個子模塊 tencent-ysdk 引用了 aar 包

module.png

依賴了 aar 包的 module:tencent-ysdk 的 build.gradle

dependencies {
    compile(name: 'YSDK_Android_1.3.6_841', ext: 'aar')
    compile 'com.android.support:appcompat-v7:26.1.0'
    compile fileTree(dir: 'libs', include: ['*.jar'])
}

應(yīng)用 module:app 依賴了 tencent-ysdk模塊权谁,其 build.gradle

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    compile 'com.android.support:appcompat-v7:26.1.0'
    compile project(':comment')
    compile project(':tencent-ysdk')
}

需要在 project 下的 build.gradle 中設(shè)置

allprojects {
    repositories {
        jcenter()
        maven { url 'https://maven.google.com' }

        flatDir {
            // 由于Library module中引用了庫的 aar,在多 module 的情況下旺芽,
            // 其他的module編譯會報錯辐啄,所以需要在所有工程的repositories
            // 下把Library module中的libs目錄添加到依賴關(guān)系中
            dirs project(':tencent-ysdk').file('libs')
        }
    }
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末壶辜,一起剝皮案震驚了整個濱河市担租,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌奋救,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,681評論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件冗荸,死亡現(xiàn)場離奇詭異利耍,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)程癌,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,205評論 3 399
  • 文/潘曉璐 我一進(jìn)店門轴猎,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人捻脖,你說我怎么就攤上這事⊙伛” “怎么了矛渴?”我有些...
    開封第一講書人閱讀 169,421評論 0 362
  • 文/不壞的土叔 我叫張陵,是天一觀的道長蚕涤。 經(jīng)常有香客問我铣猩,道長,這世上最難降的妖魔是什么剂习? 我笑而不...
    開封第一講書人閱讀 60,114評論 1 300
  • 正文 為了忘掉前任,我火速辦了婚禮失仁,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘萄焦。我一直安慰自己控轿,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,116評論 6 398
  • 文/花漫 我一把揭開白布茬射。 她就那樣靜靜地躺著冒签,像睡著了一般。 火紅的嫁衣襯著肌膚如雪刚梭。 梳的紋絲不亂的頭發(fā)上票唆,一...
    開封第一講書人閱讀 52,713評論 1 312
  • 那天,我揣著相機(jī)與錄音衅金,去河邊找鬼簿煌。 笑死氮唯,一個胖子當(dāng)著我的面吹牛姨伟,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 41,170評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼般堆,長吁一口氣:“原來是場噩夢啊……” “哼诚啃!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起始赎,我...
    開封第一講書人閱讀 40,116評論 0 277
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎魔招,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體办斑,經(jīng)...
    沈念sama閱讀 46,651評論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡乡翅,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,714評論 3 342
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了尚洽。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片靶累。...
    茶點(diǎn)故事閱讀 40,865評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖尺铣,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情澈灼,我是刑警寧澤店溢,帶...
    沈念sama閱讀 36,527評論 5 351
  • 正文 年R本政府宣布,位于F島的核電站荣回,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏心软。R本人自食惡果不足惜著蛙,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,211評論 3 336
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望猎唁。 院中可真熱鬧顷蟆,春花似錦诫隅、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,699評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至沛硅,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間擂红,已是汗流浹背围小。 一陣腳步聲響...
    開封第一講書人閱讀 33,814評論 1 274
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留肯适,地道東北人。 一個月前我還...
    沈念sama閱讀 49,299評論 3 379
  • 正文 我出身青樓蹦玫,卻偏偏與公主長得像刘绣,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子纬凤,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,870評論 2 361

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,327評論 25 707
  • 撰寫:小君 肠套,峻愷 無意中看到一個這樣的題目猖任,久坐會要命。這下蒙圈了……很敏感的詞朱躺,顯然跟自己很符合的病灶詞語。 ...
    經(jīng)典373閱讀 264評論 0 1
  • 今天是2017年5月25號宇弛,一個陽光明媚的日子。 昨晚至今天早上停電枪芒,今天早早的起來跑步谁尸,并和媽媽一起去買了個菜舅踪,...
    大Coco的中文叫韓大臉閱讀 159評論 2 2
  • 有一個不大的房子良蛮。 裝修設(shè)計(jì)統(tǒng)統(tǒng)自己搞定。 養(yǎng)些綠色植物决瞳。 一個小觀賞魚缸只放兩條小魚。 舒適的情侶睡衣皮胡。 一條呆...
    鯁子閱讀 162評論 0 0
  • 這是一個最好的時代屡贺,這是一個最壞的時代蠢棱。 這是一個智慧的時代烹笔,這是一個愚蠢的時代。 這是一個光明的季節(jié)谤职,這是一個黑...
    聽說幾撿過流星啊閱讀 236評論 0 0